diff options
Diffstat (limited to 'slides/schema/xsd/hier.xsd')
-rw-r--r-- | slides/schema/xsd/hier.xsd | 606 |
1 files changed, 606 insertions, 0 deletions
diff --git a/slides/schema/xsd/hier.xsd b/slides/schema/xsd/hier.xsd new file mode 100644 index 0000000..59a9750 --- /dev/null +++ b/slides/schema/xsd/hier.xsd @@ -0,0 +1,606 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + This file is part of DocBook V5.0 + + Copyright 1992-2008 HaL Computer Systems, Inc., + O'Reilly & Associates, Inc., ArborText, Inc., Fujitsu Software + Corporation, Norman Walsh, Sun Microsystems, Inc., and the + Organization for the Advancement of Structured Information + Standards (OASIS). + + Release: $Id: hier.rnc 8994 2011-04-19 20:07:33Z nwalsh $ + + Permission to use, copy, modify and distribute the DocBook schema + and its accompanying documentation for any purpose and without fee + is hereby granted in perpetuity, provided that the above copyright + notice and this paragraph appear in all copies. The copyright + holders make no representation about the suitability of the schema + for any purpose. It is provided "as is" without expressed or implied + warranty. + + If you modify the DocBook schema in any way, label your schema as a + variant of DocBook. See the reference documentation + (http://docbook.org/tdg5/en/html/ch05.html#s-notdocbook) + for more information. + + Please direct all questions, bug reports, or suggestions for changes + to the docbook@lists.oasis-open.org mailing list. For more + information, see http://www.oasis-open.org/docbook/. + + ====================================================================== +--> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://docbook.org/ns/docbook" xmlns:dbs="http://docbook.org/ns/docbook-slides" xmlns:db="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"> + <xs:import namespace="http://docbook.org/ns/docbook-slides" schemaLocation="slides.xsd"/> + <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd"/> + <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/> + <xs:attributeGroup name="db.status.attribute"> + <xs:attribute name="status" use="required"/> + </xs:attributeGroup> + <!-- ====================================================================== --> + <xs:group name="db.toplevel.sections"> + <xs:choice> + <xs:choice> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="db:section"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/> + </xs:sequence> + <xs:element maxOccurs="unbounded" ref="db:simplesect"/> + </xs:choice> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="db:sect1"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/> + </xs:sequence> + <xs:element maxOccurs="unbounded" ref="db:refentry"/> + </xs:choice> + </xs:group> + <xs:group name="db.toplevel.blocks.or.sections"> + <xs:choice> + <xs:sequence> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + <xs:group minOccurs="0" ref="db:db.toplevel.sections"/> + </xs:sequence> + <xs:group ref="db:db.toplevel.sections"/> + </xs:choice> + </xs:group> + <xs:group name="db.recursive.sections"> + <xs:choice> + <xs:choice> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="db:section"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/> + </xs:sequence> + <xs:element maxOccurs="unbounded" ref="db:simplesect"/> + </xs:choice> + <xs:element maxOccurs="unbounded" ref="db:refentry"/> + </xs:choice> + </xs:group> + <xs:group name="db.recursive.blocks.or.sections"> + <xs:choice> + <xs:sequence> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + <xs:group minOccurs="0" ref="db:db.recursive.sections"/> + </xs:sequence> + <xs:group ref="db:db.recursive.sections"/> + </xs:choice> + </xs:group> + <!-- ====================================================================== --> + <xs:element name="db.divisions" abstract="true"/> + <xs:element name="db.components" abstract="true"/> + <xs:group name="db.navigation.components"> + <xs:choice> + <xs:element ref="db:glossary"/> + <xs:element ref="db:bibliography"/> + <xs:element ref="db:index"/> + <xs:element ref="db:toc"/> + </xs:choice> + </xs:group> + <xs:group name="db.component.contentmodel"> + <xs:sequence> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/> + <xs:group ref="db:db.toplevel.blocks.or.sections"/> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/> + </xs:sequence> + </xs:group> + <!-- ====================================================================== --> + <xs:element name="db.setindex.components" abstract="true"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.setindex.info"/> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/> + <xs:choice> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:indexdiv"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:indexentry"/> + </xs:choice> + </xs:sequence> + <xs:attributeGroup ref="db:db.setindex.attlist"/> + </xs:complexType> + </xs:element> + <xs:group name="db.toc.components"> + <xs:sequence> + <xs:element ref="db:toc"/> + </xs:sequence> + </xs:group> + <xs:element name="db.set.components" abstract="true"/> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.set.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.set.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.set.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.set.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="set" substitutionGroup="db:db.set.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.set.info"/> + <xs:group minOccurs="0" ref="db:db.toc.components"/> + <xs:element maxOccurs="unbounded" ref="db:db.set.components"/> + <xs:element minOccurs="0" ref="db:db.setindex.components"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.set.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:group name="db.book.components"> + <xs:choice> + <xs:choice minOccurs="0" maxOccurs="unbounded"> + <xs:group ref="db:db.navigation.components"/> + <xs:element ref="db:db.components"/> + <xs:element ref="db:db.divisions"/> + </xs:choice> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:topic"/> + </xs:choice> + </xs:group> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.book.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.book.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.book.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.book.info"> + <xs:sequence> + <xs:group ref="db:db._info"/> + </xs:sequence> + </xs:group> + <xs:element name="book" substitutionGroup="db:db.set.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.book.info"/> + <xs:group ref="db:db.book.components"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.book.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.dedication.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.dedication.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.dedication.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.dedication.info"> + <xs:sequence> + <xs:group ref="db:db._info"/> + </xs:sequence> + </xs:group> + <xs:element name="dedication" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.dedication.info"/> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.dedication.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.acknowledgements.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.acknowledgements.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.acknowledgements.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.acknowledgements.info"> + <xs:sequence> + <xs:group ref="db:db._info"/> + </xs:sequence> + </xs:group> + <xs:element name="acknowledgements" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.acknowledgements.info"/> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.acknowledgements.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.colophon.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.colophon.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.colophon.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.colophon.info"> + <xs:sequence> + <xs:group ref="db:db._info"/> + </xs:sequence> + </xs:group> + <xs:element name="colophon" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.colophon.info"/> + <xs:choice> + <xs:sequence> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="db:simplesect"/> + </xs:sequence> + <xs:sequence> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.all.blocks"/> + <xs:element maxOccurs="unbounded" ref="db:simplesect"/> + </xs:sequence> + </xs:choice> + </xs:sequence> + <xs:attributeGroup ref="db:db.colophon.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:group name="db.appendix.contentmodel"> + <xs:choice> + <xs:group ref="db:db.component.contentmodel"/> + <xs:element maxOccurs="unbounded" ref="db:topic"/> + </xs:choice> + </xs:group> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.appendix.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.appendix.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.appendix.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.appendix.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="appendix" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.appendix.info"/> + <xs:group ref="db:db.appendix.contentmodel"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.appendix.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:group name="db.chapter.contentmodel"> + <xs:choice> + <xs:group ref="db:db.component.contentmodel"/> + <xs:element maxOccurs="unbounded" ref="db:topic"/> + </xs:choice> + </xs:group> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.chapter.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.chapter.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.chapter.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.chapter.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="chapter" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.chapter.info"/> + <xs:group ref="db:db.chapter.contentmodel"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.chapter.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:group name="db.part.components"> + <xs:choice> + <xs:choice> + <xs:group ref="db:db.navigation.components"/> + <xs:element ref="db:db.components"/> + </xs:choice> + <xs:choice> + <xs:element ref="db:refentry"/> + <xs:element ref="db:reference"/> + </xs:choice> + </xs:choice> + </xs:group> + <xs:group name="db.part.contentmodel"> + <xs:choice> + <xs:group maxOccurs="unbounded" ref="db:db.part.components"/> + <xs:element maxOccurs="unbounded" ref="db:topic"/> + </xs:choice> + </xs:group> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.part.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.part.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.part.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.part.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="part" substitutionGroup="db:db.divisions"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.part.info"/> + <xs:element minOccurs="0" ref="db:partintro"/> + <xs:group ref="db:db.part.contentmodel"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.part.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.preface.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.preface.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.preface.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.preface.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="preface" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.preface.info"/> + <xs:group ref="db:db.component.contentmodel"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.preface.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.partintro.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.partintro.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.partintro.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.partintro.info"> + <xs:sequence> + <xs:group ref="db:db._info"/> + </xs:sequence> + </xs:group> + <xs:element name="partintro"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.partintro.info"/> + <xs:group ref="db:db.toplevel.blocks.or.sections"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.partintro.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.section.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.section.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.section.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.section.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="section"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.section.info"/> + <xs:group ref="db:db.recursive.blocks.or.sections"/> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.navigation.components"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.section.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.simplesect.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.simplesect.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.simplesect.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + </xs:attributeGroup> + <xs:group name="db.simplesect.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="simplesect"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.simplesect.info"/> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.simplesect.attlist"/> + </xs:complexType> + </xs:element> + <!-- ====================================================================== --> + <xs:group name="db.article.components"> + <xs:sequence> + <xs:group ref="db:db.toplevel.sections"/> + </xs:sequence> + </xs:group> + <xs:group name="db.article.navcomponents"> + <xs:choice> + <xs:group ref="db:db.navigation.components"/> + <xs:element ref="db:acknowledgements"/> + <xs:element ref="db:dedication"/> + <xs:element ref="db:appendix"/> + <xs:element ref="db:colophon"/> + </xs:choice> + </xs:group> + <!-- ====================================================================== --> + <xs:attributeGroup name="db.article.status.attribute"> + <xs:attributeGroup ref="db:db.status.attribute"/> + </xs:attributeGroup> + <xs:simpleType name="db.article.class.enumeration"> + <xs:restriction base="xs:token"> + <xs:enumeration value="faq"> + <xs:annotation> + <xs:documentation>A collection of frequently asked questions.</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="journalarticle"> + <xs:annotation> + <xs:documentation>An article in a journal or other periodical.</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="productsheet"> + <xs:annotation> + <xs:documentation>A description of a product.</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="specification"> + <xs:annotation> + <xs:documentation>A specification.</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="techreport"> + <xs:annotation> + <xs:documentation>A technical report.</xs:documentation> + </xs:annotation> + </xs:enumeration> + <xs:enumeration value="whitepaper"> + <xs:annotation> + <xs:documentation>A white paper.</xs:documentation> + </xs:annotation> + </xs:enumeration> + </xs:restriction> + </xs:simpleType> + <xs:attributeGroup name="db.article.class.attribute"> + <xs:attribute name="class" use="required" type="db:db.article.class.enumeration"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.article.role.attribute"> + <xs:attribute name="role" use="required"/> + </xs:attributeGroup> + <xs:attributeGroup name="db.article.attlist"> + <xs:attribute name="role"/> + <xs:attributeGroup ref="dbs:db.common.attributes"/> + <xs:attributeGroup ref="db:db.common.linking.attributes"/> + <xs:attribute name="label"/> + <xs:attribute name="status"/> + <xs:attribute name="class" type="db:db.article.class.enumeration"/> + </xs:attributeGroup> + <xs:group name="db.article.info"> + <xs:sequence> + <xs:group ref="db:db._info.title.req"/> + </xs:sequence> + </xs:group> + <xs:element name="article" substitutionGroup="db:db.components"> + <xs:complexType> + <xs:sequence> + <xs:group ref="db:db.article.info"/> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.article.navcomponents"/> + <xs:choice> + <xs:sequence> + <xs:group maxOccurs="unbounded" ref="db:db.all.blocks"/> + <xs:group minOccurs="0" ref="db:db.article.components"/> + </xs:sequence> + <xs:group ref="db:db.article.components"/> + </xs:choice> + <xs:group minOccurs="0" maxOccurs="unbounded" ref="db:db.article.navcomponents"/> + </xs:sequence> + <xs:attributeGroup ref="db:db.article.attlist"/> + </xs:complexType> + </xs:element> +</xs:schema> |