--- author: - Jirka Kosek jirka@kosek.cz - Norman Walsh ndw@nwalsh.com §convert4to5, proofreading - Dick Hamilton rlhamilton@frii.com §changes-removed, customization, proofreading subtitle: The Transition Guide title: DocBook V5.0 --- This document is targeted at DocBook users who are considering switching from DocBook V4.x to DocBook V5.0. It describes differences between DocBook V4.x and V5.0 and provides some suggestions about how to edit and process DocBook V5.0 documents. There is also a section devoted to conversion of legacy documents from DocBook 4.x to DocBook V5.0. At the time this was written the current version of DocBook V5.0 was 5.0. However, almost all of the information in this document is general and applies to any newer version of DocBook V5.0. # Introduction The differences between DocBook V4.x and V5.0 are quite radical in some aspects, but the basic idea behind DocBook is still the same, and almost all element names are unchanged. Because of this it is very easy to become familiar with DocBook V5.0 if you know any previous version of DocBook. You can find a complete list of changes in DB5SPEC, here we will discuss only the most fundamental changes. ## Finally in a namespace {#introduction-ns} All DocBook V5.0 elements are in the namespace . XMLExtensible Markup Language namespaces are used to distinguish between different element sets. In the last few years, almost all new XML grammars have used their own namespace. It is easy to create compound documents that contain elements from different XML vocabularies. DocBook V5.0 is following this design rule. Using namespaces in your documents is very easy. Consider this simple article marked up in DocBook V4.5:
Sample article This is a really short article.
The corresponding DocBook V5.0 article will look very similar:
Sample article This is a really short article.
The only change is the addition of a default namespace declaration (`xmlns="http://docbook.org/ns/docbook"`) on the root element. This declaration applies the namespace to the root element and all nested elements. Each element is now uniquely identified by its local name and namespace. :::: note ::: title ::: The namespace name serves only as an identifier. This resource is not fetched during processing of DocBook documents, and you are not required to have an Internet connection during processing. If you access the namespace URI with a browser, you will find a short explanatory document about the namespace. In the future this document will probably conform to (some version of) RDDL and provide pointers to related resources. :::: ## Relaxing with DocBook {#introduction-rng} For more than a decade, the DocBook schema was defined using a DTD. However, DTDs have serious limitations, and DocBook V5.0 is thus defined using a very powerful schema language called RELAX NG. Thanks to RELAX NG, it is now much easier to create customized versions of DocBook, and some content models are now cleaner and more precise. Using RELAX NG has an impact on the document prolog. The following example shows the typical prolog of a DocBook V4.x document. The version of the DocBook DTD (in this case 4.5) is indicated in the document type declaration (!DOCTYPE) which points to a particular version of the DTD. :::: {#ex.docbook45 .example} ::: title DocBook V4.5 document :::
Sample article This is a very short article.
:::: In contrast, DocBook V5.0 does not depend on DTDs anymore. This mean that there is no document type declaration and the version of DocBook used is indicated with the version attribute instead. :::: {#ex.docbook5 .example} ::: title DocBook V5.0 document :::
Sample article This is a very short article.
:::: As you can see, DocBook V5.0 is built on top of existing XML standards as much as possible, for example the lang attribute is superseded by the standard xml:lang attribute. Another fundamental change is that there is no direct indication of the schema used. Later in this document, you will learn how you can specify a schema to be used for document validation. :::: note ::: title ::: Although we recommend the RELAX NG schema for DocBook V5.0, there are also DTD and W3C XML Schema versions available (see [Where to get the schemas](#schemas)) for tools that do not yet support RELAX NG. :::: ## Why switch to DocBook V5.0? {#introduction-why-to-switch} The simple answer is "because DocBook V5.0 is the future". Apart from this marketing blurb, there are also more technical reasons: - *DocBook V4.x is feature frozen.*DocBook V4.5 is the last version of DocBook in the V4.x series. Any new DocBook development, like the addition of new elements, will be done in DocBook V5.0. It is only matter of time before useful, new elements will be added into DocBook V5.0, but they are not likely to be back ported into DocBook V4.x. DocBook V4.x will be in maintenance mode and errata will be published if necessary. - *DocBook V5.0 offers new functionality.* DocBook V5.0 provides significant improvements over DocBook V4.x. For example there is general markup for annotations, a new and flexible system for linking, and unified markup for information sections using the info element. - *DocBook V5.0 is more extensible.* Having DocBook V5.0 in a separate namespace allows you to easily mix DocBook markup with other XML-based languages like SVG, MathML, XHTML or even FooBarML. - *DocBook V5.0 is easier to customize.* RELAX NG offers many powerful constructs that make customization much easier than it would be using a DTD (see [Customizing DocBook V5.0](#customizations)). ## Schema jungle {#introduction-schemas} Schemas for DocBook V5.0 are available in several formats at (or the mirror at ). Only the RELAX NG schema is normative and it is preferred over the other schema languages. However, for your convenience there are also DTD and W3C XML Schema versions provided for DocBook V5.0. But please note that neither the DTD nor the W3C XML schema are able to capture all the constraints of DocBook V5.0. This mean that a document that validates against the DTD or XML schema is not necessarily valid against the RELAX NG schema and thus may not be a valid DocBook V5.0 document. See [Schema Comparison](#t.schema-comparison) for summary of constraints that are checked by different schemas. DTD and W3C XML Schema versions of the DocBook V5.0 grammar are provided as a convenience for users who want to use DocBook V5.0 with legacy tools that don\'t support RELAX NG. Authors are encouraged to switch to RELAX NG based tools as soon as possible, or at least to validate documents against the RELAX NG schema before further processing. Some document constraints can\'t be expressed in schema languages like RELAX NG or W3C XML Schema. To check for these additional constraints DocBook V5.0 uses Schematron. We recommend that you validate your document against both the RELAX NG and Schematron schemas. ------------------------------------------------------------------------------------------------------------- Description DTD W3C XML Schema W3C XML RELAX NG RELAX NG + Schema + Schematron/NVDL Schematron ------------------------------- -------------- -------------- -------------- -------------- ----------------- Basic document structure [✔]{.unicode [✔]{.unicode [✔]{.unicode [✔]{.unicode [✔]{.unicode .yes} .yes} .yes} .yes} .yes} ID/IDREF datatypes [✔]{.unicode [✔]{.unicode [✔]{.unicode [✔]{.unicode [✔]{.unicode .yes} .yes} .yes} .yes} .yes} Datatypes[^1] [✘]{.unicode [✘]{.unicode [✘]{.unicode [✔]{.unicode [✔]{.unicode .no} .no} .no} .yes} .yes} Co-occurrences[^2] [✘]{.unicode [✘]{.unicode [✘]{.unicode [✔]{.unicode [✔]{.unicode .no} .no} .no} .yes} .yes} Hooks for MathML and SVG [✘]{.unicode [✘]{.unicode [✘]{.unicode [✔]{.unicode [✔]{.unicode content .no} .no} .no} .yes} .yes} Link type integrity[^3] [✘]{.unicode [✘]{.unicode [✔]{.unicode [✘]{.unicode [✔]{.unicode .no} .no} .yes} .no} .yes} Presence of version attribute [✘]{.unicode [✘]{.unicode [✔]{.unicode [✘]{.unicode [✔]{.unicode on the root element .no} .no} .yes} .no} .yes} Miscellaneous checks[^4] [✘]{.unicode [✘]{.unicode [✔]{.unicode [✘]{.unicode [✔]{.unicode .no} .no} .yes} .no} .yes} Element exclusions[^5] [✘]{.unicode [✘]{.unicode [✔]{.unicode [✘]{.unicode [✔]{.unicode .no} .no} .yes} .no} .yes} ------------------------------------------------------------------------------------------------------------- : Schema Comparison {#t.schema-comparison} ### Where to get the schemas {#schemas} The latest versions of schemas can be obtained from . At the time this was written the latest version was 5.0. Individual schemas are available at the following locations: RELAX NG schema : RELAX NG schema in compact syntax : DTD : W3C XML Schema : Schematron schema with additional checks : These schemas are also available from the mirror at . ### DocBook documentation {#docs} Detailed documentation about each DocBook V5.0 element is presented in [the reference part of DocBook: The Definitive Guide](http://docbook.org/tdg5/en/html/pt02.html). :::: note ::: title ::: Other parts of DocBook: The Definitive Guide have not yet been updated to reflect the changes made in DocBook V5.0. Please do not be confused by this. :::: # Tool chain {#tools} This section briefly describes tools and procedures to edit and process content stored in DocBook V5.0. ## Editing DocBook V5.0 {#editors} Because DocBook is an XML-based format and XML is a text-based format, you can use any text editor to create and edit DocBook V5.0 documents. However, using "dumb" editors like Notepad is not very productive. You will do better if you use an editor that supports XML. Although there are DTD and W3C XML Schemas available for DocBook V5.0, which means you can use any editor that works with DTDs or W3C XML Schemas, we recommend that you use the RELAX NG grammar with DocBook V5.0. The rest of this section contains an overview of XML editors (listed in alphabetical order) that are known to work with RELAX NG schemas and that offer guided editing based on the RELAX NG schema. ### Emacs and nXML {#editors-nxml} [nXML mode](http://www.thaiopensource.com/nxml-mode/) is an add-on for the GNU Emacs text editor. By installing nXML you can turn Emacs into a very powerful XML editor that offers guided editing and validation of XML documents. ![Emacs with nXML mode provides guided editing and validation](images/emacs.png){#f.emacs} nXML uses a special configuration file named `schemas.xml` to associate schemas with XML documents. Often you will find this file in the directory `site-lisp/nxml/schema` inside the Emacs installation directory. Adding the following line into the configuration file, will associate DocBook V5.0 elements with the appropriate schema: :::: note ::: title ::: Please note that nXML ships with a file named `docbook.rnc`. This file contains the RELAX NG grammar for DocBook V4.x. Be sure that you associate the DocBook V5.0 namespace with the corresponding DocBook V5.0 grammar. :::: If you can\'t edit the global `schemas.xml` file, you can create this file in the same directory as your document. nXML will find associations placed there also. In this case you must create a complete configuration file like: ### oXygen {#editors-oxygen} oXygen is a feature rich XML editor. It has built-in support for many schema languages including RELAX NG and it is preconfigured with many document types including DocBook. oXygen will assist you with writing DocBook V5.0 content, and you will be able to validate your documents against both RELAX NG and Schematron schemas. ![DocBook V5.0 document opened in oXygen](images/oxygen4.png){#f.oxygen.open5 width="100%"} ![DocBook V5.0 document opened in oXygen in Author mode](images/oxygen5.png){#f.oxygen.author.mode width="100%"} ### XML Mind XML editor {#editors-xxe} XML Mind XML editor (XXE) is a visual validating XML editor that provides a wordprocessor-like interface to users. It is available in two versions, Standard and Professional. The Standard version is free and provides everything you need to edit DocBook V5.0 documents. ![XML Mind XML Editor -- feels almost like MS Word but real DocBook V5.0 markup is created](images/xxe.png){#f.xmlmind width="100%"} In order to use DocBook V5.0 in XXE you have to install an add-on. Go to [Options \> Install Add-ons...]{.menuchoice}. Then choose DocBook 5 configuration and press the OK button. After restart, XXE is ready to work with DocBook V5.0 documents. ## Validating DocBook V5.0 {#validators} If you are not using a RELAX NG-based validating editor when you create documents, we strongly recommend that you validate your documents against RELAX NG and Schematron schemas before processing them. Only after successful validation can you be sure that your document is really DocBook V5.0 and that processing tools will be able to process it correctly. For validation you can use tools that support simultaneous RELAX NG and Schematron validation, or you can use NVDL to orchestrate validation using the two schemas. ### Using RELAX NG and Schematron {#validators-rng-sch} You can find a list of RELAX NG validators at . It is best to use validators with support for embedded Schematron rules inside RELAX NG schemas. Schematron is a rule-based validation language which is used to impose additional constraints on DocBook documents. Schematron rules assert conditions which are impossible or difficult to express in a pure RELAX NG schema. Sun Multi-Schema XML Validator (MSV) is able to validate an XML document against a RELAX NG schema and Schematron rules at the same time. To install and use MSV follow these steps: 1. Download `relames.zip` from . 2. Unpack the downloaded file into an arbitrary directory. 3. Validate your document using the following command: java -Xss512K -jar /path/to/relames.jar /path/to/docbook.rng document.xml :::: note ::: title ::: The switch `-Xss512K` increases the stack size of the Java virtual machine. This is necessary because the DocBook schema is quite large. If you get stack overflow errors from MSV, increase this value. You may get spurious error messages if the value is too small, so if you get a stack overflow error, ignore any other error messages and try a larger value for the stack size. If you are not using Sun\'s Java implementation, please consult the documentation for your virtual machine to learn how to increase the stack size. :::: There is also an [on-line DocBook V5.0 validator](http://relaxed.vse.cz/docbookvalidator/) that validates DocBook V5.0 documents against the normative RELAX NG schema with embedded Schematron rules. ### Using NVDL NVDL is a meta-schema language which can validate a document against several schemas. DocBook V5.0 comes with a NVDL schema which specifies that DocBook documents should be validated against both RELAX NG and Schematron schemas. You can find a list of NVDL validators at . The following procedures show how to install and use the oNVDL and JNVDL validators. 1. Download `onvdl-20070517.zip`. 2. Unpack the downloaded file into an arbitrary directory. 3. Validate your document using the following command: java -jar /path/to/oNVDL/bin/onvdl.jar /path/to/docbook.nvdl document.xml 1. Download the latest release of JNVDL from . 2. Unpack the downloaded file into an arbitrary directory. 3. Modify file `jnvdl.bat` (or `jnvdl.sh` on Unix based systems) to include `-Xss512K` switch directly after `java` command. 4. On Windows systems, validate your document using the following command: /path/to/jnvdl/jnvdl -nt -s /path/to/docbook.nvdl document.xml On Unix systems, validate your document using the following command: /path/to/jnvdl/jnvdl.sh -nt -s /path/to/docbook.nvdl document.xml ## Processing DocBook V5.0 {#processing} Part of DocBook\'s great success can be attributed to the availability of free tools that can be used to transform DocBook content into various target formats including HTML and PDF. The DocBook XSL Stylesheets are very popular tools. ### DocBook XSL Stylesheets {#dbxsl} The DocBook stylesheets are designed to process content written in different versions of DocBook (for example 3.1 and 4.2). Recent versions of the stylesheets are also able to process DocBook V5.0 with some limitations. You can process DocBook V5.0 documents with the DocBook XSL stylesheets in exactly the same way you process DocBook V4.x documents. You do not need special software; you can stick to your preferred XSLT processor, be it Saxon, xsltproc, Xalan or whatever else (but see the note about the lost base URI below). During document processing, the stylesheets strip namespaces from DocBook V5.0 to get a document which will be very similar to DocBook V4.x. This is necessary because from the XSLT point of view, elements from different namespaces are distinct and cannot be easily processed by the same set of templates. This process is completely transparent to the user. If you are processing DocBook V5.0 documents, the only difference is that you will see the following additional message: Note: namesp. cut : stripped namespace before processing Note: namesp. cut : processing stripped document Although you can successfully use the existing stylesheets to process DocBook V5.0, there are some limitations and unsupported features. The unsupported features include: - general annotations; - general XLink links on all elements. :::: note ::: title ::: During namespace stripping, the base URI of the document is lost. This means that in rare situations, relatively referenced resources like images or programlistings can be processed incorrectly. The stylesheets attempt to compensate for this problem, but that is not always possible. When an XSLT processor other than Saxon or Xalan is used, a warning message is generated: WARNING: cannot add @xml:base to node set root element. Relative paths may not work. :::: ### DocBook XSL-NS Stylesheets {#dbxsl-ns} As you can see from reading the previous section, namespace stripping has limitations that will cause trouble in some situations. To overcome those limitations, Bob Stayton created a build system for taking the non-namespace-aware DocBook XSL stylesheets and generating namespace-aware versions from them. The DocBook [XSL-NS stylesheets](http://docbook.sourceforge.net/release/xsl-ns/current/) are the result. The DocBook XSL-NS stylesheets are released side-by-side with the DocBook XSL stylesheets, as a separate [docbook-xsl-ns](https://sourceforge.net/project/showfiles.php?group_id=21935&package_id=219178) package. They are the recommended XSLT 1.0 stylesheets to use for transforming namespaced (DocBook V5.0) documents. ### XSLT 2.0 based re-implementation {#dbxsl2} XSLT 1.0 is missing some important features. To work around these missing features, the current DocBook XSL stylesheets use some implementation-specific extensions. XSLT 2.0 adds many new and previously missing features into the language. A new set of DocBook stylesheets is being implemented based on XSLT 2.0 to take advantage of these features and to fully support DocBook V5.0. The XSLT 2.0 based stylesheets have many new features, including: - seamless integration of profiling (conditional documents) with external bibliographies and glossaries; - no need for (most) external extensions; - internationalized indexes; - easy to customize titlepage templates. The XSLT 2.0 based stylesheets are still under development. At this writing, they only support HTML and chunked HTML output. As time permits, the stylesheet developers will be adding other formats. Since the stylesheets are developed in the limited free time the developers have, there\'s no specific schedule. There are not very many XSLT 2.0 implementations available. But, if you want to try the new stylesheets, grab a snapshot of the development version from and unpack it somewhere. Then download and install Saxon 9 from . To transform a DocBook V5.0 document to a single HTML page use the command: java -jar /path/to/saxon9.jar -o output.html document.xml /path/to/docbook-xsl2-snapshot/html/docbook.xsl To transform a DocBook V5.0 document to a set of chunked HTML pages use the command: java -jar /path/to/saxon9.jar document.xml /path/to/docbook-xsl2-snapshot/html/chunk.xsl # Markup changes {#changes} This section describes the most common markup changes between DocBook V4.x and V5.0. You can find a complete list of changes in DB5SPEC. ## Improved cross-referencing and linking {#changes-linking} In DocBook V4.x the attribute id is used to assign a unique identifier to an element. In DocBook V5.0 this attribute is renamed xml:id in order to comply with XMLID. Now you can use almost any inline element as the source of a link, not just xref or link. For example, the following DocBook 4.x content:
DIR command ...
LS command This command is a synonym for DIR command.
is written in DocBook V5.0 as:
DIR command ...
LS command This command is a synonym for DIR command.
The linkend attribute was added to all inline elements together with the href attribute from the XLink namespace. This means that you can use any inline element as the source of a hypertext link. To use XLinks you have to declare the XLink namespace (most often on the root element of your document):
Test article Emacs is my favourite text editor. … The ulink element was removed from DocBook V5.0 in favor of XLink linking. Instead of the DocBook V4.x ulink element: DocBook site you can now use link DocBook site XLink links may contain a fragment identifier, which you can use instead of linkend to form cross-references inside a document; for example: DIR However XLink links are not checked during validation, while xml:id/linkend links are checked for ID/IDREF consistency. One place where the XLink-based, fragment identifier scheme is useful is when XInclude is being used, since XML ID/IDREF links cannot span XInclude boundaries. You can use whichever approach better suits your needs. ## Renamed elements {#changes-renamed} Some elements were renamed to better express their meaning or to reduce the total number of elements available in DocBook. Old name New name ----------------------------------------------------------------------------------------------------------- ----------------------------------- sgmltag tag bookinfo, articleinfo, chapterinfo, \*info info authorblurb personblurb collabname, corpauthor, corpcredit, corpname orgname isbn, issn, pubsnumber biblioid lot, lotentry, tocback, tocchap, tocfront, toclevel1, toclevel2, toclevel3, toclevel4, toclevel5, tocpart tocdiv graphic, graphicco, inlinegraphic, mediaobjectco mediaobject and inlinemediaobject ulink link ackno acknowledgements : Renamed elements {#t.renamed} ## Removed elements {#changes-removed} The following elements were removed from DocBook V5.0 without direct replacements: action, beginpage, highlights, interface, invpartnumber, medialabel, modespec, structfield, structname. If you use one or more of these elements, here are some suggestions as to how to re-code them in DocBook V5.0. Old name Recommended mapping ------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- action Use ``. beginpage Remove: beginpage is advisory only and has tended to cause confusion. A processing instruction or comment should be a workable replacement if one is needed. highlights Use abstract. Note that because highlights has a broader content model, you may need to wrap contents in a para inside abstract. interface Use one of the "gui\*" elements (guibutton, guiicon, guilabel, guimenu, guimenuitem, or guisubmenu). invpartnumber Use ``. The productnumber element is another alternative. medialabel Use ``, where \ is the type of media being labeled (e.g.,cdrom or dvd). modespec No longer needed. The current processing model for olink renders modespec unnecessary. structfield, structname Use varname. If you need to distinguish between the two, use ``. In some contexts, it may also be appropriate to use property for structfield. : Recommended mapping for removed elements {#t.removed} # Converting DocBook V4.x documents to DocBook V5.0 {#convert4to5} The DocBook V5.0 schema ships with an XSLT 1.0 stylesheet that is designed to transform valid DocBook V4.x documents to valid DocBook V5.0 documents. To convert your document, `doc.xml` in the examples below, follow these steps: 1. Check the validity of your DocBook XML V4.x document. The conversion tool assumes that the input document is valid. If the input document contains markup errors, the results will be unpredictable at best. 2. Transform `doc.xml` to `newdoc.xml` with the `db4-upgrade.xsl` stylesheet included in the DocBook V5.0 distribution that you are using. 3. Check the validity of your DocBook XML V5.0 document against the DocBook V5.0 RELAX NG grammar. In the vast majority of cases, the resulting document should be valid and your conversion process is finished. If the document is not valid, please report the problem. (Over time, we\'ll have more experience with the sorts of things that can go wrong and we\'ll update this document to reflect that experience.) ## What About Entities? {#entities} Using XSLT to transform existing documents to DocBook V5.0 has one potential disadvantage: it removes all entity references from your document. If preserving entities is an important aspect of your production work flow, you will have to engage in a semi-manual process to preserve them. 1. Open your existing document using your favorite editing tool. You must use a tool that *is not* XML-aware, or one that allows you to edit markup "in the raw". 2. Replace all occurrences of the entity references that you want to preserve with some unique string. For example, if you want to preserve "`∏`" references, you could replace them all with "`[[[Product]]]`" (assuming that the string "`[[[Product]]]`" doesn\'t occur anywhere else in your document). 3. Copy the document type declaration off of your document and save it some place. The document type declaration is everything from "``". 4. Perform the conversion described in [Converting DocBook V4.x documents to DocBook V5.0](#convert4to5). 5. Open the new document using your favorite editing tool. Replace all occurrences of the unique string you used to save the entity references with the corresponding entity references. 6. Paste the document type declaration that you saved onto the top of your new document. 7. Remove the external identifier (the `PUBLIC` and/or `SYSTEM` keywords) from the document type declaration. A document that begins: ]> is perfectly well-formed. If you don\'t remove the references to the DTD, then your parser will likely try to validate against DocBook V4.0 and that\'s not going to work. Alternatively, you could refer to the DocBook V5.0 DTD. :::: tip ::: title ::: Steps 2 and 5 from previous procedure can be automated using the [cloak script](http://docbook.svn.sourceforge.net/viewvc/docbook/trunk/contrib/tools/cloak) written by Michael Smith. :::: ### External Parsed Entities {#extparsedentities} External parsed entities, entities which load part of a document from another file, are a special case. These can often be replaced with XInclude elements. The Perl script `db4-entities.pl`, also included in the DocBook V5.0 distribution attempts to perform this replacement for you. To use the script, perform the following steps: 1. Process your document with `db4-entities.pl`. The script expects a single filename and prints the XInclude version on standard output. 2. Process the XInclude version as described in [Converting DocBook V4.x documents to DocBook V5.0](#convert4to5). # Customizing DocBook V5.0 {#customizations} It\'s much easier to customize DocBook V5.0 than it was to customize earlier releases. This is partly because RELAX NG provides better support for modifications than DTDs and partly because the DocBook schema is designed to take full advantage of the capabilities RELAX NG provides. This section describes the organization of the RELAX NG schema for DocBook, methods and examples for adding, removing, and modifying elements and attributes, and conventions for naming and versioning DocBook customizations. It assumes some familiarity with RELAX NG. If you are unfamiliar with RELAX NG, you can find a tutorial introduction in RNCTUT. ## DocBook RELAX NG schema organization {#relaxngorg} The DocBook RELAX NG schema is highly modular, using named patterns extensively. Every element, attribute, attribute list, and enumeration has its own named pattern. In addition, there are named patterns for logical combinations of elements and attributes. These named patterns provide "hooks" into the schema that allow you to do a wide range of customization by simply redefining one or more of the named patterns. An important design characteristic of the schema is that duplication is minimized. This is done through the use of named patterns for common groupings that can be re-used. For example, the imagedata and videodata elements each have an align attribute that takes the same set of enumerated values. Rather than repeating those values, a single pattern, `db.halign.enumeration` is referenced by the `db.videodata.align.enumeration` and `db.imagedata.align.enumeration` patterns, which are in turn referenced by the `db.videodata.align.attribute` and `db.imagedata.align.attribute` patterns. While this may seem like overkill, it allows a customizer to modify the allowed enumerations for these two attributes separately or together, or to completely re-define the allowed content of either or both, by redefining one or more of these named patterns. ### Pattern Names {#patternnames} Because named patterns are used extensively, the RELAX NG schema uses several naming conventions. These are: - Names have two or more parts, separated by dots "." - The first part of each name is the prefix "db" - Each element has a named pattern in the form `db.elementname`. Elements that have different content models in different contexts will also have patterns in the form `db.context.elementname`. For example, `db.figure.info` defines the content model for the info element when it appears as a child of the figure element. \ may have several parts. For example, `db.cals.entrytbl.thead`. - Most attributes have a named pattern in the form `db.attributename.attribute`. Attributes that have different content models in different contexts will also have patterns in the form `db.context.attributename.attribute`. For example, `db.olink.localinfo.attribute` defines the content model of the localinfo attribute when it appears in olink. There are a few attributes that do not have individual named patterns. For example, the effectivity attributes are grouped into `db.effectivity.attributes` and not identified separately. - Each element has a named pattern for its attribute list in the form `db.elementname.attlist` that defines the list of attributes for that element. Elements that have different attribute lists in different contexts will also have patterns in the form `db.context.elementname.attlist` For example, `db.html.table.attlist` defines the attribute list for the html table element and `db.cals.table.attlist` defines the attribute list for a cals table element. - Each attribute that has enumerated values has a named pattern in the form `db.[context.]attributename.enumeration`. If the enumeration for a particular attribute depends on context, optional context is provided. For example, `db.verbatim.continuation.enumeration` defines the enumeration values for the continuation attribute that is used in verbatim contexts like screen. Unlike elements and attributes, there is not necessarily a named pattern for enumerated attributes outside their context. For example, there is no `db.class.enumeration` because the class attribute has a broad and non-intersecting range of uses. - There are several different groupings of elements and attributes. Here are the major ones: inlines : Combinations of inline elements, for example, `db.error.inlines`, which contains `db.errorcode`, `db.errortext`, etc. blocks : Combinations of block elements, for example, `db.verbatim.blocks`, which contains `db.programlisting`, `db.screen`, etc. attributes : Combinations of attributes, for example, `db.effectivity.attributes`, which contains the attributes arch, condition, conformance, etc. components : High level components of the schema, for example, `db.navigation.components`, which contains `db.glossary`, `db.bibliography`, `db.index`, and `db.toc`, and is used inside the content model for chapter, appendix, and preface. contentmodel : Shared content models, for example, `db.admonition.contentmodel`, which contains the content model for tip, warning, note, etc. There are a couple of other groupings designed to minimize duplication, but these are the most important. ## General customization considerations {#customconsiderations} Creating a customized schema is similar to creating a customization layer for XSL. The schema customization layer is a new RELAX NG schema that defines your changes and includes the standard docbook schema. You then validate using the schema customization as your schema. [example_title](#ex-empty) is an empty RELAX NG customization that does nothing except define the name spaces and include the standard DocBook schema. The href attribute of the include element points to the location of the standard DocBook V5.0 schema.[^6] All of the examples are given in both RNG and RNC form. :::: {#ex-empty .example} ::: title Empty customization file ::: ``` rng ``` ``` rnc namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" inherit = db # redefinitions of named patterns ``` :::: ## Elements {#cust-elements} ### Adding elements {#cust-add-elements} Adding an element typically takes two definitions. The first defines the new element and its content model, and the second adds the new element into the schema. We\'ll show two examples. [example_title](#ex-add-element-1) adds a new element, person, with the same content model as author. The new element will be allowed to appear wherever author can appear. The `db.author` pattern is copied and renamed `dbx.person`, defining a new element called person. Then, the `db.author` pattern is redefined to be a choice of the current value or `dbx.person`. The combine attribute tells RELAX NG to combine this pattern with the existing named pattern. In this case, the value of the combine attribute is "choice", which tells the parser that either the original pattern or this new pattern is a valid match. :::: {#ex-add-element-1 .example} ::: title Adding a new element by duplicating an existing one ::: ``` rng ``` ``` rnc default namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" # define the new element dbx.person = element person { db.author.attlist, db.credit.contentmodel } # redefine the db.author pattern to allow db.person in # the same places as db.author db.author |= dbx.person ``` :::: The preceding method works well when you\'d like a new element to be a clone or near-clone of an existing element. It gives you complete control over the content model, but only limited control over where the element is allowed. It works well when you want to allow the element in the same places as an existing element, and for this example that works nicely, since author is allowed in four different named patterns, each of which would have had to be redefined to allow person. But, if you can\'t find an existing element that is allowed in exactly the places you need, this method doesn\'t work as well. [example_title](#ex-add-element-2) adds two new elements by combining them into a higher level pattern. In this example, we\'ll add two new inline elements for writing about assembly language, register and instruction. We will allow them wherever programming inlines or operating system inlines are allowed. [example_title](#ex-add-element-2) defines the two elements, creates a new named pattern (`dbx.asm.inlines`) that contains them, and adds that pattern to `db.programming.inlines` and `db.os.inlines`. Since these two patterns don\'t have any elements in common, the strategy used in [example_title](#ex-add-element-1) would require selecting two different elements to "clone", which would be messy. :::: {#ex-add-element-2 .example} ::: title Adding new inline elements ::: ``` rng ``` ``` rnc default namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" # define the new elements dbx.register = element register { text } dbx.instruction = element instruction { text } # create a new pattern that contains the new inlines dbx.asm.inlines = dbx.register | dbx.instruction # add the new inlines to programming and os inlines db.programming.inlines |= dbx.asm.inlines db.os.inlines |= dbx.asm.inlines ``` :::: ### Deleting elements {#cust-delete-elements} Deleting elements is straightforward, but takes some care and planning. [example_title](#ex-delete-element) deletes the important admonition element by redefining it with a content model of `notAllowed`. Note that in this example, the redefinition is inside the include element. This is required for redefinitions that completely replace an existing pattern. Be careful; If you delete an element that is a required part of another element\'s content model, you can make it impossible to create a valid document. For example, if you delete the title element, you won\'t be able to validate a book because a book requires a title. :::: {#ex-delete-element .example} ::: title Deleting an element ::: ``` rng ``` ``` rnc namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" inherit = db { # redefine important element as notAllowed db.important = notAllowed } ``` :::: ### Customizing the content model of existing elements {#cust-modify-elements} [example_title](#ex-modify-element) expands the definition of author to include two new elements, born and died. The author element allows two content models, `db.person.author.contentmodel`, which defines an author who is a person, and `db.org.author.contentmodel`, which defines an author that is an organization. We will modify `db.person.author.contentmodel` so that only authors who are persons can have the new elements. :::: {#ex-modify-element .example} ::: title Modifying the content model of an element ::: ``` rng ``` ``` rnc default namespace = "http://docbook.org/ns/docbook" namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" db.person.author.contentmodel &= element born { db.date.contentmodel }? & element died { db.date.contentmodel }? ``` :::: This modification will allow instances like this: Babe Ruth 02/06/1895 08/16/1948 but because we only modified the content model for authors who are human, it won\'t allow an instance like this, which uses `db.org.author.contentmodel`: Boston Red Sox 1919 2004 ## Attributes {#cust-attributes} ### Adding attributes {#cust-add-attributes} The simplest way to add an attribute to a single element is to add it to the attlist pattern for that element. [example_title](#ex-add-attr) adds the optional attributes born and died to the attribute list for author. The `db.author.attlist` named pattern is redefined with the combine attribute set to "interleave", which interleaves the two new optional attributes with the existing attributes on the list. :::: {#ex-add-attr .example} ::: title Adding attributes ::: ``` rng ``` ``` rnc namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" inherit = db db.author.attlist &= attribute born { db.date.contentmodel }? & attribute died { db.date.contentmodel }? ``` :::: Unlike [example_title](#ex-modify-element), [example_title](#ex-add-attr) allows the new attributes to appear on any author element, not just those using the person content model. [example_title](#ex-add-attr-2) shows how you could limit the use of these attributes to authors who are persons. In this example, the new attributes are interleaved with the `db.person.author.contentmodel`. The only difference between this example and [example_title](#ex-modify-element) is that the added patterns are identified as attributes rather than elements. This shows some of the flexibility of RELAX NG, which treats attributes and elements very consistently. :::: {#ex-add-attr-2 .example} ::: title Adding attributes; alternate method ::: ``` rng ``` ``` rnc namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" inherit = db # redefinitions of named patterns db.person.author.contentmodel &= attribute born { db.date.contentmodel }? & attribute died { db.date.contentmodel }? ``` :::: There is one difference in the treatment of attributes and elements that is worth noting. By the XML 1.0 definition, the relative order of attributes is not significant. Therefore, the interleave block is not required for attributes, though it does no harm. ### Deleting attributes {#cust-delete-attributes} Deleting an attribute is similar to deleting an element, except that you use the RELAX NG `empty` pattern rather than `notAllowed`. [example_title](#ex-delete-attr) deletes the linking attributes, which are collected in the `db.common.linking.attributes` pattern, by defining that pattern as `empty`. :::: {#ex-delete-attr .example} ::: title Deleting an attribute ::: ``` rng ``` ``` rnc namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" inherit = db { db.common.linking.attributes = empty } ``` :::: Generally, `empty` is used when deleting attributes and `notAllowed` is used when deleting elements. ### Changing permitted content of attributes {#cust-modify-attributes} [example_title](#ex-modify-attr) modifies `db.spacing.enumeration` to add the additional value "large". Note that to remove a value from an enumeration, you need to redefine the entire enumeration, minus the values you don\'t need. :::: {#ex-modify-attr .example} ::: title Deleting an attribute ::: ``` rng large ``` ``` rnc namespace db = "http://docbook.org/ns/docbook" include "docbook.rnc" inherit = db # add value to an enumeration db.spacing.enumeration |= "large" ``` :::: ## Naming and versioning DocBook customizations {#cust-naming} DocBook V5.0 is not tightly coupled with some particular validation technology like DTDs. This also means that DocBook V5.0 documents don\'t have to (and usually don\'t) start with a document type declaration (\) to specify the schema (DTD) to use. Instead, DocBook V5.0 instances can be easily distinguished from other XML vocabularies by using elements in the namespace. This namespace is enough to distinguish DocBook from other XML based formats. But the DocBook schema evolves over time and there are several versions of DocBook (e.g. 3.1, 4.2, 4.5 and 5.0). Since DocBook version 5.0, the actual version used is indicated in the version attribute on a root element. … Future versions of DocBook documents will start with the same markup, except the version number will be raised, for example to 5.1 or 6.0. The namespace will remain the same until the semantics of the elements change in a backward incompatible way, which is very unlikely to happen. If you create a DocBook schema customization you must change the version attribute to distinguish your customization from the "official" DocBook. Changing the namespace is not recommended because that would break the processing tools. Remember that changing namespaces is the same as renaming all elements in the namespace. When you customize the schema, use the following syntax to identify your DocBook derivation: base_version-[subset|extension|variant] [name[-version]?]+ For example: 5.0-subset simplified-1.0 5.0-variant ASMBook 5.0-variant ASMBook-2006 5.0-extension MathML-2.0 SVG-1.1 The first part of the version identifier is the version number of the DocBook schema from which you derived your customization. If your schema is a proper subset, you can advertise this status by using the `subset` keyword in the description. If your schema contains any markup model extensions, you can advertise this status by using the `extension` keyword. If you\'d rather not characterize your variant specifically as a subset or an extension, use the `variant` keyword. After these keywords you may add a whitespace separated list of customization identifiers. Each name may be optionally followed by its version number. # FAQ ## Authoring **Q:** How do I attach a schema to a DocBook V5.0 document when I do not want to use DTDs and !DOCTYPE? **A:** There is no standard way of associating a RELAX NG schema with a document. Most tools provide some mechanism for performing this association, consult the documentation for your application. In some tools you must specify schema manually each time you want to edit/process your document. **Q:** How do I use entities like ndash in DocBook V5.0? **A:** Modern schema languages (including RELAX NG and W3X XML Schema) do not provide any means to define entities that can be used for easier typing of special characters. Some editors provide functions or special toolbars that allow you to easily pick necessary character and insert it into document as a raw Unicode character or a numeric character reference. Another possibility is to include entity definitions in the prolog of your document. [Entity definition files](http://www.w3.org/2003/entities/) are now maintained by W3C. You can reference definition files with entity definitions you are interested in and then reference imported entities. For example: %isopub; ]>
DocBook V5.0 – the superb documentation format … For your convenience there is also flattened entity definition file which contains all entity definitions. %allent; ]>
DocBook V5.0 – the superb documentation format … **Q:** How to modularize documents? **A:** You can use [XInclude](http://www.w3.org/TR/xinclude/) for this task. There is an alternative schema for DocBook V5.0 that contains XInclude elements. This is necessary to make some XML editors happy. This schema can be found in files that end with letters "xi", e.g. `docbookxi.rnc` instead of `docbook.rnc`. **Q:** How to validate documents which are composed by XInclude? **A:** If you are using XIncludes you should make sure that the final document after resolving all inclusions is valid DocBook V5.0 instance. This means that all XIncludes should be processed before validation takes place. The following command can be used to enable XInclude processing in oNVDL. java -Dorg.apache.xerces.xni.parser.XMLParserConfiguration=org.apache.xerces.parsers.XIncludeParserConfiguration -jar /path/to/oNVDL/bin/onvdl.jar /path/to/docbook.nvdl document.xml For JNVDL you can use switch `-xi` to enable XInclude processing. ## Stylesheets **Q:** Will the current DocBook XSL stylesheets (XSLT 1.0 based implementation) be maintained and improved in the future since work on a new XSLT 2.0 based implementation has started? **A:** Yes, the current stylesheets (like 1.73.x) will be supported and improved further because they are very widely deployed and work with many existing XSLT processors. Surely there will be a point in a future when all new development will be switched to the XSLT 2.0 based implementation. But this will not happen until all features of the current stylesheets are implemented in the new stylesheets, and until there is more than one usable XSLT 2.0 processor available. ## Schema customizations **Q:** How can I extend the DocBook schema with MathML elements? **A:** The basic DocBook schema allows elements from the MathML namespace to appear inside the equation element. This means that you can validate a DocBook+MathML document, but MathML content will be ignored during the validation. You will also not be able to use guided editing for the MathML content. If you need strict validation of MathML content or guided editing for MathML, you can easily extend the base DocBook schema with the MathML schema. 1. Download the MathML RELAX NG schema from and unpack it somewhere (e.g. into a `mathml` subdirectory). 2. Create a schema customization in compact syntax---`dbmathml.rnc`: ``` rnc namespace html = "http://www.w3.org/1999/xhtml" namespace mml = "http://www.w3.org/1998/Math/MathML" namespace db = "http://docbook.org/ns/docbook" include "/path/to/docbook.rnc" { db._any.mml = external "mathml/mathml2.rnc" db._any = element * - (db:* | html:* | mml:*) { (attribute * { text } | text | db._any)* } } ``` Or, alternatively, you can use the XML syntax of RELAX NG---`dbmathml.rng`: ``` rng ``` 3. Now use the customized schema (`dbmathml.rnc` or `dbmathml.rng`) instead of the original DocBook schema. **Q:** How can I extend the DocBook schema with SVG elements? **A:** The situation is the same as with MathML support. You can use elements from the SVG namespace inside the imageobject element. 1. Download the SVG RELAX NG schema from and unpack it somewhere (e.g. into an `svg` subdirectory). 2. Create a schema customization in compact syntax---`dbsvg.rnc`: ``` rnc namespace html = "http://www.w3.org/1999/xhtml" namespace db = "http://docbook.org/ns/docbook" namespace svg = "http://www.w3.org/2000/svg" include "/path/to/docbook.rnc" { db._any.svg = external "svg/svg11.rnc" db._any = element * - (db:* | html:* | svg:*) { (attribute * { text } | text | db._any)* } } ``` Or, alternatively, you can use the XML syntax of RELAX NG---`dbsvg.rng`: ``` rng ``` 3. Now use the customized schema (`dbsvg.rnc` or `dbsvg.rng`) instead of the original DocBook schema. **Q:** Is it possible to use the previous two customizations for MathML and SVG together? **A:** Yes, you can create a special schema customization that combines both MathML and SVG with the DocBook schema. In compact syntax, the merged schema is: ``` rnc namespace html = "http://www.w3.org/1999/xhtml" namespace mml = "http://www.w3.org/1998/Math/MathML" namespace db = "http://docbook.org/ns/docbook" namespace svg = "http://www.w3.org/2000/svg" include "/path/to/docbook.rnc" { db._any.mml = external "mahtml/mathml2.rnc" db._any.svg = external "svg/svg11.rnc" db._any = element * - (db:* | html:* | mml:* | svg:*) { (attribute * { text } | text | db._any)* } } ``` Or alternatively in the full RELAX NG syntax: ``` rng ``` **Q:** Are there any other examples of schema customization available? **A:** Sure. Some of the are listed bellow: - [Sample customization of ITS and DocBook](http://www.w3.org/TR/xml-i18n-bp/#docbook-plus-its) - [Examples on DocBook WiKi](http://wiki.docbook.org/topic/DocbookSchemas) ## Tool specific problems **Q:** I\'m using Altova XMLSpy to validate DocBook V5.0 instances against the W3C XML Schema (`docbook.xsd`). XMLSpy complains about undefined xml:id attributes? **A:** XMLSpy always uses its own bundled version of `xml.xsd` which unfortunately doesn\'t define the xml:id attribute. The bundled version of `xml.xsd` is hardwired into the program and cannot be replaced by a newer version. To solve this problem you must upgrade to version 2006 SP1. # {#references} RNCTUT Clark, James -- Cowan, John -- MURATA, Makoto: . Working Draft, 26 March 2003. OASIS. NVDLTUT Nálevka, Petr: . XMLID Marsh, Jonathan -- Veillard, Daniel -- Walsh, Norman: . W3C Recommendation, 9 September 2005. DB5SPEC Norman, Walsh: . Working Draft 5.0a1, OASIS, 29 June 2005. [^1]: In a very few places RELAX NG specifies datatype like number (mainly for length specifications) or enumeration between `0` and `1`. In general those datatypes can be also supported in W3C XML Schema, but currently this schema is generated from DTD which lacks datatype information. [^2]: RELAX NG grammar enforces exclusivity of several elements. For example if you have title inside info then it is not allowed to have another title outside info. Similarly, models of HTML and CALS tables are separated and validated properly, where in DTD and WXS only union of both models is available. On other places co-occurrences enforces particular content model based on presence of specific attribute or attribute value. Please also note that in theory co-occurences can be validated using Schematron, but the current DocBook schema uses RELAX NG for these definitions. Schematron can be used only for validation, whereas grammar based schemas like RELAX NG are useful also for other purposes like guided editing. [^3]: Check whether ID/IDREF links are pointing to element of corresponding type. For example that footnoteref points to footnote. [^4]: For example consistency of segmented lists, only one term inside term definition etc. [^5]: Prevents improper nesting of elements, like admonition inside admonition. [^6]: The examples in this section use `docbook.rng` as the schema location. If you want to create a portable schema customization you should use a standard web-accessible location like and then use [XML catalogs](http://www.oasis-open.org/committees/download.php/14809/xml-catalogs.html) to resolve this location to your local copy of the schema for improved performance. Unfortunately, at the time of this writing not all RELAX NG validators support XML catalogs. "I think I'll go down to Holloway and see Ren¨¦ Lalage," Prout said thoughtfully. "I dare say I shall be able to advise him to tell me something as to the past of the Countess. If only he were not secure, that woman would have to look to herself. He believes that the woman betrayed and murdered his brother, and he is a Corsican. Give him a few hours' start, and the law would be rid of Leona Lalage." Were the vines ranked and trimmed with pruning-knives, Further yet lay the artificial lake of Meer Alam, reflecting the palace of Baradari and the russet plain, infinite as far as the eye could reach towards the north, where other superb mausoleums were visible in their whiteness. ¡°Son, turn that preserver over¡ªlet me see the other side.¡± The Chiricahuas could see that there was trouble between the officials, both military and civil, and the government. They did not know what it was. They did not understand that the harassed general, whose word¡ªand his alone¡ªhad their entire belief, nagged and thwarted, given authority and then prevented from enforcing it, had rebelled at last, had asked to be relieved, and had been refused. But they drew in with delight the air of strife and unrest. It was the one they loved best, there could and can be no doubt about that. And Cairness himself was startled and utterly unprepared when the Reverend Taylor opened the door of the room where he lay and let her pass in. The little parson uttered no word, but there was a look on his face which said that now the questions he had put with no result were answered. It was for this that Cairness had given the best of his life. [70] "Let's go away," she whispered, half nervously and half angrily, "I hate standing here." In spite of the farm's new activities, he found that he could still manage without engaging fresh labour. The odds and ends of work which his boys took off him and[Pg 123] Beatup left them free to attack the bigger enterprises. And as Odiam grew the children would grow. Even now they were all impressed for service, except little George, who was delicate and, moreover, subject to fits. Their work was varied¡ªthey scared birds from the crops, fed the poultry, collected the eggs, drove the cows to and from pasture, fed the pigs, ran errands to the neighbouring farms. In course of time Albert learned milking, and could saddle old Crump the roan, or put him into the gig. Soon the rumour spread round Peasmarsh that Backfield was going to buy some more land. Reuben himself had started it. Tyler and the other leaders, followed by hundreds, now rushed on to the palace;¡ªthe massive gates yielded to their blows, and the assailants, pouring in through the arched passages, ran along gallery and window, and through seemingly countless apartments. Yet, even amidst their eagerness to capture Lancaster, they paused a moment, casting glances of astonishment and pleasure at the beautifully inlaid cabinets, rich tapestries, and embroidered cushions, which every where met their gaze. The galleyman, however, was perhaps the only one among all the gazers who knew the value of the things he looked upon; and he could not repress a feeling of regret, as he glanced at the damask hangings, and the gold cords and fringes, and remembered that all these would be speedily feeding the flames. As he was thus occupied, and thinking what a fortune these articles would be to a pedling merchant, he saw Jack Straw in the act of whispering in Harvey's ear (who, by some strange sort of moral attraction, was standing by his side), and he noticed them linger until the group they had accompanied passed on to the inspection of other apartments. Oakley then opened a door in a recess in the corridor, which, when they entered, they closed hastily after them. HoME¾©ÏãÃÀ½ÅÔÚÏß²¥·Å ENTER NUMBET 0016www.jkixdj.com.cn
hhybuu.com.cn
www.kbchain.com.cn
www.elawyere.net.cn
www.jnchain.com.cn
leenuisun.com.cn
mkztpi.com.cn
pwlxex.com.cn
xchq.com.cn
jiaoshou.org.cn
亚洲春色奇米 影视 大肉棒直抵神谷 换妻肏屄小说 夜来香图片大全 看快播伦理一制服丝袜一前拍自拍上聚情网 sssshiping 汤加丽巴巴拉 huangwangshequ 少妇喜欢被操吗 哥哥从后面猛干我的小骚逼 操逼小说之母女 男朋友从后面用力插我玩我好爽 ajsetang 小狗与人h 欧美黑人桃太郎 大胆女人人体秀b 日本另类人体艺术 同事电脑里的自拍 外国片女主露点 色色快播影网 人i与动物快播 女同 打炮机 操美女尸体小说 wwwtp2008com 古装美女色图 aaa黃色 韩国黄片免费 孕妇乱伦影视 日本美女大胆展阴艺术 关于引嫩河载树造林 仲淑主播 欧美操大奶熟女 透bb无码图片 影音先锋 美少女的人体艺术 rrrr46c0m 成熟 日本人体艺术图片中心 什么是另类兽幼 办公室淫乱 乱伦性交的激情故事 和她肏屄那点事 成人动漫爆乳姐妹 什么yiemeichuangyifudemeinvtupian 日本少女什么也没有穿的尻屄照片 与苍井空共同生活48小时 我上了漂亮的后妈 苍井空最短的一部番号 充气娃使用方法视频 黑田将稔日文名 色一色成人网 欧美 meinusichu 色qingjiaoshi 演黄色电影最火的 乱伦小说美女约炮 色老头插入我 什么人的鸡巴大 人造膜修复 福建奔驰 迅雷下载a片的网站 欧美色图撸叽 大胆手机视频 夫妻口交视频 狠干小姨子 治疗阳委的中草药 女人阴道艺术写真 wumapw 干老太太肥屄 亚洲混血美女模特床上很大胆的行为人体写真 裸体护士无遮掩 主持人性爱动态图 蔺辱肏妈妈阴道 我和妹妹xxoo日本漫画 2014zuibaoloumeinu 超级乱伦qvod 欧镁色图片 36b大奶人体艺术 正在播放麻宫良子 论坛亚洲图片 激情五色天电影 玉蒲团下载资源 干肥女免费电影 丰满尤物阴部 操逼光盘 loosieqvod套图 欧美性爱成人 国模洋娃娃人体5000 少妇欧美 人体艺入 美少妇出轨3p故事 呕美操逼图 男女晚上做爱的游戏 操腚视频 那那夜我插错了洞 黄片在线视频夜色猫在线 少妇展阴艺术 时田爱梨写真视频 我和60多岁老妈做爱 美女全裸顶级艺术 非洲黑人日本女人 绝色母女被强奸 苍井空伦理专辑 看好久妹妹人体 国外天体海滩视频 b穴网 女人艺木照 小女孩做爱 乱伦番号大全 日本骚妇最大胆人体艺术 淫荡美女插b照 日本肥臀艺术 性爱美女网 色魔乱伦苍井空 柳州莫qin 女人被操图片 色色07 我操了美少妇 色色阁bt下载 色妹妹乱伦小说性爱 美女照i 亚洲性爱视频哥哥 初中女生屄部的相片 熟女推油按摩 和小姨子乱伦性爱故事 操逼和屁眼哪个爽 黑鬼大鸟操白逼 美女caobitoupai 淫老头影院 欧美2性电影 迷奸黄色小说 laorenjijitupian 操逼尽头 极速影院什么缓存失败 亚洲免费影院 玩她的小嫩骚逼 荡妇淫女操逼图 神枪手必备系列美人自慰54连发部部精神 幼女外国电影 性交动漫色图电影 二人转正戏全集哭戏 级片俄罗斯三 王者荣耀在线视频 亚洲电影第一页链接 电影院名字大全 dv222 女权天下圣水视频 极品少妇黑穴 成人视频国语 怎么操妞的逼舒服 性感美女露b图片 百度网盘打电话做爱 日本大胆人体掰开逼图 欣赏骚女p图 人和动物shanjipian 求美少女全裸艺术网站 骚女qq号码 非洲黑人模特外阴高清图 瑞碧绫合成人网 seee色 欧美性脚足交视频 妹妹我要干电影网 女友的黑木耳咱去撸 蓝光波野多结衣 renty艺术 旧小说网 32岁少妇大胆人体艺术 e级魔怪强奸双s级迷人女神黄色小说 美女浪逼 抠逼欧美图片 国模男女xoxo se鲍鱼 姐姐骚男人的av天堂 115网盘礼包码 嫩模被插逼 辛德营成人版雷下载 视频裸聊女同骚逼 www性爱技巧 赤裸美臀坐脸 成人激情强奸伦理图片小说 日本av女忧色图avi 操英语老师的逼 谢娜被艹的视频 日本奸淫下体电影 好色村庄 吹箫三级片古代 mumu98com成人网站 色色色色色色色小说校园 动漫恋足网站 强奸乱伦亚洲色七七Av 大白奶霸影片 能直接在线观看图片的网站 聚色冈网色无极影院 插入逼逼 老女人免费色网自拍视频色网 黑丝美女图片百度 www666kf色色 一千美女ys 在线看着的小说突然就无法打开网页了 av看片知乎fefe2com 撸管AV电影导航 苍井空的阴道口多大 有小伙和熟女网友做爱的吗 无毛xy 成人电影免丁香五月 肏逼成人片 黄色电影行爱狂欢 婷婷五月丁香激情绪 av天堂杨思敏 grzz4com 丝袜少妇的私处无码wwwavfootcom 超碰碰大陆双性人妖 韩国主播sosoya在哪里直播 淫荡的肉弹美女教师 美女醉酒被扒 日本Av无吗亚州 撸露设 爸爸操女儿姐姐拍摄北方口音让女儿腿张开点好操 乱伦义母漫画 欧美色色色奶奶 我爱看电片app 武藤蓝av 亚洲色图双蛋原创裸模50P 超碰视频群交亚欧 激情丝袜人妻乱伦 部下的妻子 国产真实乱伦自拍 亚洲热涩 playboygirlsvodeo redtubejapanesedad OMSE014先锋影音 37tp人艺术网址 在公车上插老师小说 teen幼肏 俄罗斯老熟女图片 巨肉人妻在线免费播放 sm女同恋足 护士mm图片 啊啊啊使劲插好爽 韩国美女主播赵老师 色欲影视淫香淫色天天影视来吧综合网插插插综合网WWW353EE 欧美AV群交淫乱 大鸡吧好粗好硬 淫荡人妻跳蛋长篇小说 操淫贱人妻 殴洲人肛交视频大全 动漫美臀sp www47llllcn 哪里可以看水柔姐视频 亚洲快播人与犬 日本老妈妈视频 91seqq主站 91淫妹妹 全裸掰穴欧美美女艺术图 zui淫当的女人 toupai自paijiating wwwvvv29 插入幼女小穴小说 hhh涩 影音先锋黑木耳 毛欢出浆出白浆套图 2015世乒赛视频母子 爱唯侦查黄色小说 花和尚com 中文台湾妹娱乐22vvvv 被爆操 美女的骚逼穴 偷拍初中少女爱爱图 亚洲888888tv ady777 女性射精orange 黑崎礼子在线 日本影片刚生完孩子的嫂子 wwwvv854 r级在线观看在线播放 丝袜制服老师mv 淫荡的妻子们无码 qvod美女自慰片 av插小学生电影 求兽幼网站 舔脚奴福利视频 每曰更新在线观看A 一插插菊花综合网站 蝌蚪窝人人免费视频 大香蕉天海翼 阿v手机直播 丝袜美臀强奸类小说 光人老神探 青青草P 久草中文幕 撸在线视频亲朋乱伦高速高清视频 香港三级片电影全集好看8090网 www3324444comwwwwoaisikucom 淫妻绿帽另类图片 日本无码a片电影片观看 成人av福利视频电影在线 黄色一级芘股姓感 未成年色图片专区 日本Av熟女15p 欧美性爱静态图 母子乱伦3d动画 亚洲激情你懂得 swww197hhcom最新 东京食人餐厅另类小说 xiao七七小说网 网姨成人小说网 搜大香蕉黄色网站dxj3comwww511zkcom 我看逼激情明星 亚被侵犯的 蕾丝成人色图 男人免费超碰在线视频 原味小辣椒在线视频 ckplayer在线亚洲 成人漫画激情 淫色淫色av网站 蜜桃丁香 4410电影网伦理片 啪啪啪20p 亚洲在线丝袜美腿 人妖操人妖电影 AV色图资源 寡妇村的风流事 14tvtvmagnet mcc无名 干姐姐av迅雷下载 偷拍自拍人妻激情 盗摄偷窥胸部 www698论坛 谷露美国 交换淫妻多p群交 激情自拍系列 艹比图片真人动态日本 肉棒乳沟亚洲图区 wwwxbxbcon anquyehenhense www7jcom 触手电影儿 五月在线中文字幕 妈妈色 撸妹妹毛片图片 免费超碰www8800bcom 日本爆乳肥臀 免费ucjzz播放器 欧美无码色无极视频 av久久在线观看 色哥哥色姐姐色天堂 人妻论坛magnet 男人的鸡巴插入女人的阴道 av最大网站在线观看 WWW960UUCOM 撸一撸。恨恨的撸 第四色haoav rbd565在线HD 色尼姑官方网址中文 狠狠撸得新网站 888840c○m 81男人电影 美国人与狗交配AV www77sdvd susu30新地址 完全av 欧美性爱偷拍自拍古典武侠 人妖的激情虐男 色博士导航 女奴淫妻视频另类 手机看免费黄色大片完整版 淫色淫香插插图 校园春色人妻倚天屠龙记 表妹操 偷拍隔壁声音太大25p SE开心站 jlzz4欧美 一本道在线无码视频 俺去啦俺去也l se51 幼女发情视频 帅哥和保姆啪啪啪wwwshuaijiaocomvideo 社旗黑社会 免费33qqrrcom日本 欧美辣图沾花网 可以分享av的app 免费少妇论坛 wwwytr8888com 饭冈佳奈子和黑人视频 晨勃撸 曰本AV在线观看网站 亚洲夜射猫 36大尺度人体艺术 XXX性生活群交高清视频 japanese熟女乱伦Videos 海贼王avmagnet 观看自拍口交 www56aacnm 西瓜音影激情伦理 日月操妹av电影 人妻勾引女婿 三级片网站观看地址 swwwsex8 黄片在线视频wwwc5508com 91草美美 aV天堂手一 jjbb图 青青草痴汉系列 清纯唯美wwwhhxxoo1com 嗯啊好爽快插我 亚洲饥渴15P 干肥美视频 广州富姐女主调教在线 色哥哥伦理片这里都知道 www789Rbcom shesheav99com 天天撸夜夜撸哥哥撸妹妹撸 久久精品视频在线看gg 侵犯强势姐姐痉挛 小说美丽淫荡的表姐 www9AVcom 哥哥干综合ship 三级经典色妹妹 世界最新肥老婆与兽交视频 3344EVCOM www·youjizzcom在线看 www666lucowww666luco 母亲叫我和姐姐性交 黄2wwwcom 男人资源高清无码 美女图片裸泳春光图图∑ 经典乱伦性爱故事 女人与公狗交配小说阅读 老公喜欢从后面狠狠插我 苍井空露阴道阴毛图片 韩国女主播视屏青草bt下载 吉泽明步所有电影番号 00后人体图片少女无毛掰开图片 妹妹被哥哥干出水 操吧老逼 长筒袜做爱图片 sm日记 在线乱伦女人 男人操操穿着肉丝袜裤的女人视频 88ri88ri图片88i88 波多野结衣被放芥末 2012qiangjianluanlun 三级黄secaobi 日本成人李 WWW_SOON_COM 大胆人体美女私处艺术图片 avtt中文字幕 迷奸小妹影音先锋 大胆拍摄人体艺术照片图 色妹妹avcom av销量第一的番号 欧美性爱色蝎子 影音先锋在四个大学生姐姐 黑人和白人美女做爱种子 性交片xfplay 狼国成人网英文 WWW_70KKKK_COM 快播伦理全色中色 最淫荡的美女游戏 百万港坛乱伦小说 性小说藏色阁 2014年夜夜擗通动漫 成娱帝国导航 色青xiaomeimei jiqingxiaos 三帮车市 大胆撸逼视频 d9e4590e0000131d 好骚导航日本少女做爱电影 des574 儿子的面前太过美丽的妈妈 林卅新闻网 家庭乱伦之淫乱妈妈 国外高清1撸 操妈妈的bb和做爱 伦操大逼 无码内射丝袜 黔南旅游景点大全 ringworm 三国风云网页游戏 几斤米几斤水做米酒 南京四小凤 丘疹型荨麻疹 最潮男生发型 阳光大姐月嫂培训 印度新娘大结局 dianying色图网 西西粉嫩小穴艺术 俄罗斯女主播种子 俺也去色人阁图片 快播丝袜美腿亚洲色图 丫丫448o高清免费影院 石川施恩惠色导航 大胆美女爱爱50p 乱伦小说女色网 黑人美女写真图片 春暖花开性另类视频区 和超正女友干炮在线 saozibi 好色人妻250 WWWBOKKSECOMZZZ 撩人的骚B 淫淫色狠狠撸 解放前动画片男奴操逼图片 性侵女教师高清图片 WWWZZHTTEXCOM 长城电影 天天影院 色妹妹爽死了~图片 自拍偷拍亚洲色图明星 大鸡吧插入在线 欧美熟女肥B 丰满少妇偷情做爱通宵淫叫声 欧美色图色小姐 母子交尾自慰队 WWW822WWWSSCOM 人体露屄图 全球最大成人综合网站 学生逼逼电影 男子会所巨炮 成人黄色四房三姐妹他的新网站 摸她的屄 深爱激情网免费视频播放 还想肏一次岳母视频 美女的阴如鲍鱼 古武操逼小说 鸡巴插入处女膜 苍井空电影影音先锋 我是个骚逼 yazhouyuanchuangsgaitu 妈妈骚逼任我玩 破处黄色电影 王蓉合成15p 驴怎样肏女人 快播苍井空厨房 淫荡系列小说 英美白皙色图 奸淫奶小说 少女淫逼 鸭哥哥影视 未来影院神马影院播放不了 有大鸡鸡的女孩子先锋 兽操幼穴 骚逼被男老师操 农村淫荡妇女一级黄色小说 丝袜少妇肉棒 肥屁大香蕉 推女郎漫画 男人靠女人电视频目 第八色bbb26com 我淫我浪 欧美图片壁纸 上海美少妇高清论坛 有个日本电影让老婆舔他的的鸡巴不舔是什么电影 极品天堂欧美性爱A片在线 后入骚少妇嫩穴 人与动物幼 普通话操屄 电影院草校花 三级美女最全电影网站 能搜索片名的a站 家庭淫乱小说之强奸处女 黄色网站视频打不开怎么办 126西西人体 木村惠梨香番号 超嫩女人体艺术 ?1?7?1?7?1?7哥视频网wwwa?1?7c24com 成人套图千百撸图片 国乱辈通奸 五月停停五月天47cccccom 227播在线成人视频 奇色热在线 摩擦鲍鱼 ggmm集中营59136 超碰痴汉空姐 AV1区思瑞 安全成人免费下载 日本ar成人 久久叫床声 caob动图 性吧图片亚洲色图 淫荡姐妹小说图片 熟女吧女主播 波多野结衣操老师 肛交综合网 奸小男孩小说 气密四色 霞理沙无码AV磁力 亚洲色图欧美色图人妻春色 美国x级片女优 金8天国淫荡的女老师链接 刺激撸一撸在线视 婶婶自蔚 男模性生活 欧美校园性感做爱电影 日本电影私处下载 有个国模三级 有声小说神游 满元春色 樱井莉亚学生 樱井莉亚电骡搜索 樱井莉亚色中色 小泽玛利亚素养 h网无毒 东京热n0066图 老公看黄片 5252黄色小说 丁香五月 激情 婷婷 漂亮妈妈唐雅婷 福气贵宾G 搞师娘高清 救囯集中淫 色之谷影院 无缓冲电影 一本道AV 90后A片网 9115视频 美女娃娃做爱 420资源伦理 软妹子 馒头白虎穴 大爷射 任你干日韓AV无码 国模冰冰炮图第一季 欲色屋欧美色 老鸭窝伊人无码不卡无码一本道 julia se 中文 无码 在厕所被强上的av 成人深爱激情 美女夜夜日天天插 天天啪大香蕉师生 逢田美波AV迅雷 啪啪啪激情黄片视频 あの明日花キララが 影音先锋 豆豆去影视先锋 一起去看吧春天电影 全程露脸在线观看嫖妓 强奸舒不舒服 小叔子金嫂子公公趴辉 清纯学生妹午夜福利 原创king晓騒眯 在线免费福利视频 日本三级护士视频黄色xxx 日本人妻狠狠日视频 日本女人被后入内射视频播放 在线手机黄色短视频 日日看在线91曰批 日本一本道2018无码视频DVD 淫玉儿视频 日本贫乳离罩视频 日本学校漂亮的女同性恋黄片视频 日皮和的视频真片子1 人瘦奶大福利视频 叶子楣电影网手机 360小水滴摄像头福利 我们立足于美利坚合众国 为全球华人 神马达达兔午夜福利在线 看雪电影网 亚洲448成人动漫网站 8787影院影视午夜福利 色既是空讯雷哥 回啪啪啪漫画网 我搜看人人操 韩国主播青草003 古侠武典小说天堂 五月丁香综合小说视频 先锋影音 欧洲 无码 wanz808 伦理片欧美重口味 lu7700com ddse03高清在线视频 欢迎光临您的javli 非洲女人小便视频图 日韩女优欧美激情偷拍自拍 69人体鲍鱼与真 日币站移动版 视频在线 空姐门视频30分钟下载 人体自拍偷拍在线 殴美黄色视频 天天鲁啊鲁视频在线观看 - 百度 WWW829999C0n 丁香五月怎么看不到了 人与动物伦毛片 禁断介护杏美月番号 伦理片日本猜人电影 ipz862在线观看 伦理 宅男 mp4 无码 丝袜 国产自拍 谷露影院日本系列 公众号nqq499霸片 艳虎影阸 欧美磁性链接 北京换妻俱乐部视频 大炮影视 593b在线观看 二奶村之杀夫在线 k8 女人香蕉做爱的舒服吗 完全免费国产在线视频 污亚洲 shkd ftp 苍井空1080p magnet 午夜吃奶水视频 萝莉被强奸第一集 夜色影院18岁 嗯啊激情戏吻戏 怎么找yoyo资源 欧美成人宗合网 欧美群交网 美国日本A片黄色视频 桑拿自拍视频 淫妹妹av影院 168qx 亚洲av资格网吧 2017人人免费操工开 天天都色色 七色色综合网 avtt42改成什么了 激情美女中出图片 h动漫迅雷链接 ftp 青娱乐2018最新极品盛宴 前田由美步兵高清 国产自拍一级 黄色超碰公开福力观看视平 旗袍美女的伦理片mp4 大乔未久爬玻璃 葡京激情片 ssdao91freeporn qimiwang 登陆朱诺滩在线看 vakaya福利自拍 经 理 与 少 妇 女 秘 书 啪 啪 啪 自 拍 主 动 脱 裤 子 口 扶 着 桌 子 后 入 火影之艳色火影txt观看 热影院伦天堂理电影 2019最新伦理在线播放 亚洲黄片在线 zhongwenyule 雅情会首页在线 秋霞微博连接i 成人影祈 明星潜规则之皇全文阅读 手机版成人网 精品福利漫画 4438x新免费网址 色欲天天影视 欧美孕妇XO 日本十八禁片短视频 乳交 在线 俄罗斯a片伦理免费观看 日本av片大波妹影院 正在播放搭讪熟女视频 午夜福利操比 色色999日韩偷拍自拍 好帍视频免费 狗舔女性阴唇视频全过程播放 国产处破苞国语磁力迅雷下载 校园多女一男类番号 美女KTV喝醉前口后入式疯狂3P短视频曝光 88844m 女同按摩 大片电影院 夜色噜噜 水嶋あずみ在线av 。66kkV 5566吉吉影音 ftp 影音先锋中文字幕亚洲综合小综合 亚洲AV之家 在线波波影院 韩国 兽兽门2008在线 夜夜天天拍拍2018yd5685 255hhcom迅雷下载 成人做爱免费视频短片 极品模特165cm亚洲视频 被窝福利视频 被窝影院 极品 丰满 呻吟 在线云播 女性欢乐洞 mfc椅子假鸡巴自拍 sm剧 素人盗摄在线 速雷哥和电影伦理片 马凡舒的内裤掉落视频 种子 有声性说 涩66 撸大爷影院 51啪啪在线 康先生 深圳女同3p 谷露影院mv 亚训av 加勒比石川铃华 漫画亲嘴高机 hh22·me在线 guomo视频 色姑姑综合 小仙儿有声小说资源站 萝莉让爸爸艹 香蕉丁五月 小清新影院18岁以下 学生视频vb 性感黑丝诱惑视频青青草 小白新作约炮良家少妇清纯羞涩道具玩弄 小清新男女做爱视频 星野娜美 潜入 小学六年级女生摸男生的鸡视频 youzizi日本护士 拉脱维亚熟女的诱惑 勇者大战魔物动漫在线 大香蕉综合五月色中文字幕 亚洲 偷拍99ses 久美女自慰冒白浆 影音先锋秒拍福利 皇色皇免费视频自慰b 好屌妞999 日本美女诱惑视频床上视频 狐狸性爱丶视频 国产自拍简介 senb1 9l偷拍 1769在线视频一七六 宇都宫紫苑在线颜射 国产呻吟声在线 美女自慰国外网站 javfree在线视频 在线 番号 综合网 123西瓜影音 本田岬无码电影 av淘宝地址获取 吉布明泽瑜伽在线 Vip男人天堂 国内少妇偷情高潮视频 苍井空成人福利 操逼视频吃美女奶 草比克影视 波哥盛世大厦和刚下班的银行小白领在洗手间一边和王经理打电话一边开草 苍井空影线费观看 哺乳期的女人偷人小说 av 种子 狠狠 婷婷丁香五月 爆乳情欲在线播放 亚洲日韩激情文学 宇都宫紫苑 在线电影 百度亚州av av番号在线观看 哥要干哥也色 wwwmimikkk 微兔云 (指甲油) -(零食) 色婷五月天开心网西瓜影音 ut主播福利资源 操逼视频下载都有哪些 北条纱雪在线视频播放 超碰97人射妻 欧美亚洲偷拍自拍套图 高H视屏 爱看福利群 伦理操B视 6080新视觉影院团鬼六 zhemeiyinyuan 成人情影 肥婆A片 华人偷拍福利在线播放 SSIN-218 magnet xt urn btih 日本三级,韩国三级,香港三级黄色视频在线观看色就是色 老湿机影院免费观看十分钟t 午夜福利影视库 主播插鸡巴视频 网红啪啪啪视频大全 wwwvidsom 小妇性爱视频 77XXme 有奔空姐家狂操她的小逼视频 阴茎抽送阴道动态视频 天上人间在线福利午夜 无码嘿嘿嘿种子 国产自拍操鸡巴 苍井空无码 百度云分享 511免费福利影院 色狱夜色物语 温婉sm微信小视频 亚洲图片 今日视频 iesp569磁力 东京干男人都知道手机福利视频 顶开花蕊小说 日本男孩欧洲重口味三级全裸体影片 韩国性感女主播 magnet japan老太太videos 538prom在线精品国产 五月天婷婷丁香 4438 wanz 101 图解 97国产早早 三上悠亚AV在线 欧美自拍磁力 ftp 一本道在线元码大香蕉 dandy 423 白哾碧 澳门岛国无码免费视频在线观看 4438为什么播放不了 XO影院在线直播 色妞色戒 吉播影音先锋欧美无码电影 美足av丝袜西瓜影音西瓜影音 美国萝莉黄片 国产自拍91超碰在线cp 美国性交小视频 色妞在线 激情戏新视觉 大香蕉黄片免费看 外国美女插插插 伦理片旧版金瓶桶 中文字幕在线免费视频 亚洲第一av网站在线观看 神马护士 美女爱爱百度云 射射九九韩 伦理电影落花 橹妹网 火热色色色 会员 28:37 大神夜店搭讪极品外围女带回高级寓所阳台一直干到莎发720P高清无 巨乳猎人我不卡视频 足交鸣人漫画 主播西西bt资源 美胸在线看 ponrhub手机在线播放 妃月影音先锋在线观看 护士午夜福利影视 大香亚洲伊人线视频手机 夜色视频╟今晚你寂寞了 欲望学院在线观看前篇 杨幂 deepface资源 日日韩无码中文亚洲在线视频六区第6 漂亮女友被弄失声毒龙死去活来 西新宿OL昼休みのアルバイト 青青操国内自拍 榴草视频 a片毛片啪啪 日本人肛交视频 国产成人基地 变态深喉交影音先锋 美女作妇科检查被色狼医师偷插入肉棒内射 - 线上直播区 - 5278论坛- 我爱78论坛 - 18mmA片 黄片在线看不用播放器 91 在线 桃谷绘里香 日韩不卡aV热在线视频 桃乃木香奈在线三上悠亚在线 五月丁香蕉伊 丁香情艺 美国成人制服 日本AV斑点丝袜 大桥未久侵犯在线 青云视频偷拍自拍 亚洲色天堂2014 日本岛国中文字幕网站 欧美幼老色与狗色 少妇偷拍自拍高潮视频 国模牛奶掰穴 好吊妞视频这里有经典 免费的小视频 国产在线观看95 某银行经理和极品E奶情人约炮大奶被艹的直颤抖呻吟很销魂 国产自拍大西瓜 内射日本人妻 亚洲 自拍 在线观看 四虎偷拍自拍在线播放 一个电影大学男生随机打女生宿舍电话结果遇到自杀的女生蒋丽雯 综合论坛视频 先锋影音资源 草溜影院费全过程免费 亚裔女神在线手机播放 黄色3d 肉体视频 luohua99相关网址 极品巨乳高颜值女神小奶油被大J8后入 我被强奸校园春色 朱音唯 影音先锋 黑泽捆绑 黄色小视频免 观音坐莲百度云 女优写真下载 7m视频在线大香蕉 mmp日本美女视频 欧美亚洲日韩天堂2014 2018最新网红爆乳福利视频在线 26uuu亚洲电影最新地址w 偷拍自拍在鲜观看 最新鸡巴操B视频 日日少妇逼视 皮带沾水抽屁股视频 hapxxoo 国产裸模150 av学生妹电影 哪个网站可以看美女图片 汤芳无尺度人体艺术 都市激情奇米 WWW_CFCCCC_COM yukaane 成人亚洲综合色图 nurendebi视频 h756bbbc0m 西西人体美鲍图片大胆 西西大胆裸体性交 色鬼导 一逼情亚洲色图 三浦理惠子骑兵电影 西西人体艺术~高清大胆全球美女 体内射精片 李宗瑞不雅视频种子链接 真希由希种子 五月天欧美卡通成人性交图 自拍偷拍综合网