conceptMod.xsd 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- ============================================================= -->
  3. <!-- HEADER -->
  4. <!-- ============================================================= -->
  5. <!-- MODULE: DITA Concept XSD Module -->
  6. <!-- VERSION: 1.1 -->
  7. <!-- DATE: November 2006 -->
  8. <!-- -->
  9. <!-- ============================================================= -->
  10. <!-- ============================================================= -->
  11. <!-- SYSTEM: Darwin Information Typing Architecture (DITA) -->
  12. <!-- -->
  13. <!-- PURPOSE: W3C XML Schema to describe DITA concepts -->
  14. <!-- -->
  15. <!-- ORIGINAL CREATION DATE: -->
  16. <!-- March 2001 -->
  17. <!-- -->
  18. <!-- (C) Copyright OASIS-Open.org 2005, 2006 -->
  19. <!-- (C) Copyright IBM Corporation 2001, 2004. -->
  20. <!-- All Rights Reserved. -->
  21. <!-- ============================================================= -->
  22. <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/">
  23. <!-- ==================== Import Section ======================= -->
  24. <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="urn:oasis:names:tc:dita:xsd:xml.xsd:1.1"/>
  25. <xs:import namespace="http://dita.oasis-open.org/architecture/2005/" schemaLocation="urn:oasis:names:tc:dita:xsd:ditaarch.xsd:1.1"/>
  26. <!--Embed concept to get specific elements -->
  27. <xs:element name="concept">
  28. <xs:annotation>
  29. <xs:documentation>
  30. The &lt;<keyword>concept</keyword>&gt; element is the top-level
  31. element for a topic that answers the question <q>what is?</q> Concepts provide
  32. background information that users must know before they can successfully work
  33. with a product or interface. Often, a concept is an extended definition of
  34. a major abstraction such as a process or function. It might also have an example
  35. or a graphic, but generally the structure of a concept is fairly simple.
  36. </xs:documentation>
  37. </xs:annotation>
  38. <xs:complexType>
  39. <xs:complexContent>
  40. <xs:extension base="concept.class">
  41. <xs:attribute ref="class" default="- topic/topic concept/concept "/>
  42. </xs:extension>
  43. </xs:complexContent>
  44. </xs:complexType>
  45. </xs:element>
  46. <xs:element name="conbody">
  47. <xs:annotation>
  48. <xs:documentation>
  49. The &lt;<keyword>conbody</keyword>&gt; element is the main body-level
  50. element for a concept. Like the body element of a general topic, &lt;<keyword>conbody</keyword>&gt;
  51. allows paragraphs, lists, and other elements as well as sections and examples.
  52. But &lt;<keyword>conbody</keyword>&gt; has a constraint that a section
  53. or an example can be followed only by other sections or examples.
  54. </xs:documentation>
  55. </xs:annotation>
  56. <xs:complexType>
  57. <xs:complexContent>
  58. <xs:extension base="conbody.class">
  59. <xs:attribute ref="class" default="- topic/body concept/conbody "/>
  60. </xs:extension>
  61. </xs:complexContent>
  62. </xs:complexType>
  63. </xs:element>
  64. <xs:group name="concept-info-types">
  65. <xs:choice>
  66. <xs:group ref="concept"/>
  67. <xs:group ref="info-types" />
  68. </xs:choice>
  69. </xs:group>
  70. <!-- Base type: topic.class -->
  71. <xs:complexType name="concept.class">
  72. <xs:sequence>
  73. <xs:group ref="title"/>
  74. <xs:group ref="titlealts" minOccurs="0"/>
  75. <xs:choice minOccurs="0">
  76. <xs:group ref="shortdesc" />
  77. <xs:group ref="abstract" />
  78. </xs:choice>
  79. <xs:group ref="prolog" minOccurs="0"/>
  80. <xs:group ref="conbody" minOccurs="0"/>
  81. <xs:group ref="related-links" minOccurs="0"/>
  82. <xs:group ref="concept-info-types" minOccurs="0" maxOccurs="unbounded"/>
  83. </xs:sequence>
  84. <xs:attribute name="id" type="xs:ID" use="required"/>
  85. <xs:attribute name="conref" type="xs:string"/>
  86. <xs:attributeGroup ref="select-atts"/>
  87. <xs:attribute ref="ditaarch:DITAArchVersion" />
  88. <xs:attribute name="outputclass" type="xs:string"/>
  89. <xs:attributeGroup ref="localization-atts"/>
  90. <xs:attributeGroup ref="global-atts"/>
  91. </xs:complexType>
  92. <!-- Base type: body.class -->
  93. <xs:complexType name="conbody.class">
  94. <xs:sequence>
  95. <xs:group ref="body.cnt" minOccurs="0" maxOccurs="unbounded"/>
  96. <xs:choice minOccurs="0" maxOccurs="unbounded">
  97. <xs:group ref="section"/>
  98. <xs:group ref="example"/>
  99. </xs:choice>
  100. </xs:sequence>
  101. <xs:attribute name="outputclass" type="xs:string"/>
  102. <xs:attribute name="base" type="xs:string" />
  103. <xs:attributeGroup ref="base-attribute-extensions"/>
  104. <xs:attributeGroup ref="id-atts"/>
  105. <xs:attributeGroup ref="localization-atts"/>
  106. <xs:attributeGroup ref="global-atts"/>
  107. </xs:complexType>
  108. </xs:schema>