|
1 <?xml version="1.0" encoding="UTF-8"?> |
|
2 <!-- |
|
3 | (C) Copyright IBM Corporation 2005 - 2006. All Rights Reserved. |
|
4 *--> |
|
5 <!-- ============ Hooks for domain extension ============ --> |
|
6 <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:ditaarch="http://dita.oasis-open.org/architecture/2005/"> |
|
7 <xs:import namespace="http://dita.oasis-open.org/architecture/2005/" schemaLocation="../../../schema/ditaarch.xsd"/> |
|
8 <xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="../../../schema/xml.xsd"/> |
|
9 |
|
10 <!-- ============ Hooks for shell DTD ============ --> |
|
11 <xs:group name="apiRef-info-types"> |
|
12 <xs:sequence> |
|
13 <xs:group ref="apiRef"/> |
|
14 </xs:sequence> |
|
15 </xs:group> |
|
16 <!-- ============ Content Models ============ --> |
|
17 <xs:group name="apiDefinition.cnt"> |
|
18 <xs:choice> |
|
19 <xs:group ref="apiQualifier"/> |
|
20 <xs:group ref="apiRelation"/> |
|
21 <xs:group ref="apiType"/> |
|
22 <xs:group ref="apiArray"/> |
|
23 <xs:group ref="apiData"/> |
|
24 <xs:group ref="apiDefNote"/> |
|
25 <xs:group ref="state"/> |
|
26 <xs:group ref="keyword"/> |
|
27 <xs:group ref="ph"/> |
|
28 </xs:choice> |
|
29 </xs:group> |
|
30 <!-- ============ Element definitions ============ --> |
|
31 <xs:element name="apiRef" type="apiRef.class"/> |
|
32 <xs:complexType name="apiRef.class"> |
|
33 <xs:sequence> |
|
34 <xs:group ref="apiName"/> |
|
35 <xs:choice> |
|
36 <xs:group ref="shortdesc" /> |
|
37 <xs:group ref="abstract" /> |
|
38 </xs:choice> |
|
39 <xs:group minOccurs="0" ref="prolog"/> |
|
40 <xs:group ref="apiDetail"/> |
|
41 <xs:group minOccurs="0" ref="related-links"/> |
|
42 <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiRef-info-types"/> |
|
43 </xs:sequence> |
|
44 <xs:attributeGroup ref="apiRef.attlist"/> |
|
45 </xs:complexType> |
|
46 <xs:attributeGroup name="apiRef.attlist"> |
|
47 <xs:attribute name="id" use="required" type="xs:ID"/> |
|
48 <xs:attribute name="conref"/> |
|
49 <xs:attribute name="outputclass"/> |
|
50 <xs:attribute ref="ditaarch:DITAArchVersion"/> |
|
51 <xs:attributeGroup ref="select-atts"/> |
|
52 <xs:attributeGroup ref="localization-atts"/> |
|
53 <xs:attributeGroup ref="global-atts"/> |
|
54 <xs:attribute name="class" default="- topic/topic reference/reference apiRef/apiRef "/> |
|
55 </xs:attributeGroup> |
|
56 <xs:element name="apiName"> |
|
57 <xs:complexType mixed="true"> |
|
58 <xs:group minOccurs="0" maxOccurs="unbounded" ref="title.cnt"/> |
|
59 <xs:attributeGroup ref="apiName.attlist"/> |
|
60 </xs:complexType> |
|
61 </xs:element> |
|
62 <xs:attributeGroup name="apiName.attlist"> |
|
63 <xs:attributeGroup ref="id-atts"/> |
|
64 <xs:attribute name="outputclass"/> |
|
65 <xs:attributeGroup ref="global-atts"/> |
|
66 <xs:attribute name="class" default="- topic/title reference/title apiRef/apiName "/> |
|
67 </xs:attributeGroup> |
|
68 <xs:element name="apiDetail"> |
|
69 <xs:complexType> |
|
70 <xs:sequence> |
|
71 <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiSyntax"/> |
|
72 <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiDef"/> |
|
73 <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiDesc"/> |
|
74 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
75 <xs:group ref="example"/> |
|
76 <xs:group ref="section"/> |
|
77 <xs:group ref="apiImpl"/> |
|
78 </xs:choice> |
|
79 </xs:sequence> |
|
80 <xs:attributeGroup ref="apiDetail.attlist"/> |
|
81 </xs:complexType> |
|
82 </xs:element> |
|
83 <xs:attributeGroup name="apiDetail.attlist"> |
|
84 <xs:attributeGroup ref="id-atts"/> |
|
85 <xs:attributeGroup ref="localization-atts"/> |
|
86 <xs:attribute name="outputclass"/> |
|
87 <xs:attributeGroup ref="global-atts"/> |
|
88 <xs:attribute name="class" default="- topic/body reference/refbody apiRef/apiDetail "/> |
|
89 </xs:attributeGroup> |
|
90 <xs:element name="apiSyntax"> |
|
91 <xs:complexType> |
|
92 <xs:sequence> |
|
93 <xs:group maxOccurs="unbounded" ref="apiSyntaxText"/> |
|
94 <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiSyntaxItem"/> |
|
95 </xs:sequence> |
|
96 <xs:attributeGroup ref="apiSyntax.attlist"/> |
|
97 </xs:complexType> |
|
98 </xs:element> |
|
99 <xs:attributeGroup name="apiSyntax.attlist"> |
|
100 <xs:attribute name="spectitle"/> |
|
101 <xs:attributeGroup ref="univ-atts"/> |
|
102 <xs:attribute name="outputclass"/> |
|
103 <xs:attributeGroup ref="global-atts"/> |
|
104 <xs:attribute name="class" default="- topic/section reference/refsyn apiRef/apiSyntax "/> |
|
105 </xs:attributeGroup> |
|
106 <xs:element name="apiSyntaxText"> |
|
107 <xs:complexType mixed="true"> |
|
108 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
109 <xs:group ref="apiRelation"/> |
|
110 <xs:group ref="apiType"/> |
|
111 <xs:group ref="apiItemName"/> |
|
112 <xs:group ref="apiData"/> |
|
113 <xs:group ref="keyword"/> |
|
114 <xs:group ref="txt.incl"/> |
|
115 </xs:choice> |
|
116 <xs:attributeGroup ref="apiSyntaxText.attlist"/> |
|
117 </xs:complexType> |
|
118 </xs:element> |
|
119 <xs:attributeGroup name="apiSyntaxText.attlist"> |
|
120 <xs:attributeGroup ref="display-atts"/> |
|
121 <xs:attributeGroup ref="univ-atts"/> |
|
122 <xs:attribute name="spectitle"/> |
|
123 <xs:attribute name="outputclass"/> |
|
124 <xs:attribute ref="xml:space" default="preserve"/> |
|
125 <xs:attributeGroup ref="global-atts"/> |
|
126 <xs:attribute name="class" default="- topic/pre reference/pre apiRef/apiSyntaxText "/> |
|
127 </xs:attributeGroup> |
|
128 <xs:element name="apiSyntaxItem"> |
|
129 <xs:complexType> |
|
130 <xs:sequence> |
|
131 <xs:group minOccurs="0" maxOccurs="unbounded" ref="apiItemName"/> |
|
132 <xs:group minOccurs="0" ref="apiDefNote"/> |
|
133 </xs:sequence> |
|
134 <xs:attributeGroup ref="apiSyntaxItem.attlist"/> |
|
135 </xs:complexType> |
|
136 </xs:element> |
|
137 <xs:attributeGroup name="apiSyntaxItem.attlist"> |
|
138 <xs:attributeGroup ref="univ-atts"/> |
|
139 <xs:attribute name="outputclass"/> |
|
140 <xs:attributeGroup ref="global-atts"/> |
|
141 <xs:attribute name="class" default="- topic/p reference/p apiRef/apiSyntaxItem "/> |
|
142 </xs:attributeGroup> |
|
143 <xs:element name="apiItemName"> |
|
144 <xs:complexType mixed="true"> |
|
145 <xs:attributeGroup ref="apiItemName.attlist"/> |
|
146 </xs:complexType> |
|
147 </xs:element> |
|
148 <xs:attributeGroup name="apiItemName.attlist"> |
|
149 <xs:attribute name="keyref"/> |
|
150 <xs:attributeGroup ref="univ-atts"/> |
|
151 <xs:attribute name="outputclass"/> |
|
152 <xs:attributeGroup ref="global-atts"/> |
|
153 <xs:attribute name="class" default="- topic/keyword reference/keyword apiRef/apiItemName "/> |
|
154 </xs:attributeGroup> |
|
155 <xs:element name="apiDefNote"> |
|
156 <xs:complexType mixed="true"> |
|
157 <xs:group minOccurs="0" maxOccurs="unbounded" ref="ph.cnt"/> |
|
158 <xs:attributeGroup ref="apiDefNote.attlist"/> |
|
159 </xs:complexType> |
|
160 </xs:element> |
|
161 <xs:attributeGroup name="apiDefNote.attlist"> |
|
162 <xs:attributeGroup ref="univ-atts"/> |
|
163 <xs:attribute name="outputclass"/> |
|
164 <xs:attributeGroup ref="global-atts"/> |
|
165 <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiDefNote "/> |
|
166 </xs:attributeGroup> |
|
167 <xs:element name="apiDef"> |
|
168 <xs:complexType> |
|
169 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
170 <xs:group ref="apiDefinition.cnt"/> |
|
171 <xs:group ref="apiDefItem"/> |
|
172 <xs:group ref="apiItemName"/> |
|
173 </xs:choice> |
|
174 <xs:attributeGroup ref="apiDef.attlist"/> |
|
175 </xs:complexType> |
|
176 </xs:element> |
|
177 <xs:attributeGroup name="apiDef.attlist"> |
|
178 <xs:attribute name="spectitle"/> |
|
179 <xs:attributeGroup ref="univ-atts"/> |
|
180 <xs:attribute name="outputclass"/> |
|
181 <xs:attributeGroup ref="global-atts"/> |
|
182 <xs:attribute name="class" default="- topic/section reference/section apiRef/apiDef "/> |
|
183 </xs:attributeGroup> |
|
184 <xs:element name="apiDefItem"> |
|
185 <xs:complexType> |
|
186 <xs:choice minOccurs="0" maxOccurs="unbounded"> |
|
187 <xs:group ref="apiItemName"/> |
|
188 <xs:group ref="apiDefinition.cnt"/> |
|
189 <xs:group ref="apiDefItem"/> |
|
190 </xs:choice> |
|
191 <xs:attributeGroup ref="apiDefItem.attlist"/> |
|
192 </xs:complexType> |
|
193 </xs:element> |
|
194 <xs:attributeGroup name="apiDefItem.attlist"> |
|
195 <xs:attribute name="keyref"/> |
|
196 <xs:attributeGroup ref="univ-atts"/> |
|
197 <xs:attribute name="outputclass"/> |
|
198 <xs:attributeGroup ref="global-atts"/> |
|
199 <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiDefItem "/> |
|
200 </xs:attributeGroup> |
|
201 <xs:element name="apiQualifier"> |
|
202 <xs:complexType> |
|
203 <xs:attributeGroup ref="apiQualifier.attlist"/> |
|
204 </xs:complexType> |
|
205 </xs:element> |
|
206 <xs:attributeGroup name="apiQualifier.attlist"> |
|
207 <xs:attribute name="name" use="required"/> |
|
208 <xs:attribute name="value" use="required"/> |
|
209 <xs:attributeGroup ref="univ-atts"/> |
|
210 <xs:attribute name="outputclass"/> |
|
211 <xs:attributeGroup ref="global-atts"/> |
|
212 <xs:attribute name="class" default="- topic/data reference/data apiRef/apiQualifier "/> |
|
213 </xs:attributeGroup> |
|
214 <xs:element name="apiRelation"> |
|
215 <xs:complexType mixed="true"> |
|
216 <xs:attributeGroup ref="apiRelation.attlist"/> |
|
217 </xs:complexType> |
|
218 </xs:element> |
|
219 <xs:attributeGroup name="apiRelation.attlist"> |
|
220 <xs:attribute name="href"/> |
|
221 <xs:attribute name="keyref"/> |
|
222 <xs:attribute name="type"/> |
|
223 <xs:attributeGroup ref="univ-atts"/> |
|
224 <xs:attribute name="format"/> |
|
225 <xs:attribute name="scope"> |
|
226 <xs:simpleType> |
|
227 <xs:restriction base="xs:token"> |
|
228 <xs:enumeration value="local"/> |
|
229 <xs:enumeration value="peer"/> |
|
230 <xs:enumeration value="external"/> |
|
231 <xs:enumeration value="-dita-use-conref-target"/> |
|
232 </xs:restriction> |
|
233 </xs:simpleType> |
|
234 </xs:attribute> |
|
235 <xs:attribute name="outputclass"/> |
|
236 <xs:attributeGroup ref="global-atts"/> |
|
237 <xs:attribute name="class" default="- topic/xref reference/xref apiRef/apiRelation "/> |
|
238 </xs:attributeGroup> |
|
239 <xs:element name="apiType"> |
|
240 <xs:complexType> |
|
241 <xs:attributeGroup ref="apiType.attlist"/> |
|
242 </xs:complexType> |
|
243 </xs:element> |
|
244 <xs:attributeGroup name="apiType.attlist"> |
|
245 <xs:attribute name="name" default="type"/> |
|
246 <xs:attribute name="value" use="required"/> |
|
247 <xs:attributeGroup ref="univ-atts"/> |
|
248 <xs:attribute name="outputclass"/> |
|
249 <xs:attributeGroup ref="global-atts"/> |
|
250 <xs:attribute name="class" default="- topic/state reference/state apiRef/apiType "/> |
|
251 </xs:attributeGroup> |
|
252 <xs:element name="apiArray"> |
|
253 <xs:complexType> |
|
254 <xs:attributeGroup ref="apiArray.attlist"/> |
|
255 </xs:complexType> |
|
256 </xs:element> |
|
257 <xs:attributeGroup name="apiArray.attlist"> |
|
258 <xs:attribute name="name" default="arraysize"/> |
|
259 <xs:attribute name="value" default=""/> |
|
260 <xs:attributeGroup ref="univ-atts"/> |
|
261 <xs:attribute name="outputclass"/> |
|
262 <xs:attributeGroup ref="global-atts"/> |
|
263 <xs:attribute name="class" default="- topic/state reference/state apiRef/apiArray "/> |
|
264 </xs:attributeGroup> |
|
265 <xs:element name="apiData"> |
|
266 <xs:complexType mixed="true"> |
|
267 <xs:group minOccurs="0" maxOccurs="unbounded" ref="ph.cnt"/> |
|
268 <xs:attributeGroup ref="apiData.attlist"/> |
|
269 </xs:complexType> |
|
270 </xs:element> |
|
271 <xs:attributeGroup name="apiData.attlist"> |
|
272 <xs:attribute name="keyref"/> |
|
273 <xs:attributeGroup ref="univ-atts"/> |
|
274 <xs:attribute name="outputclass"/> |
|
275 <xs:attributeGroup ref="global-atts"/> |
|
276 <xs:attribute name="class" default="- topic/ph reference/ph apiRef/apiData "/> |
|
277 </xs:attributeGroup> |
|
278 <xs:element name="apiDesc"> |
|
279 <xs:complexType mixed="true"> |
|
280 <xs:group minOccurs="0" maxOccurs="unbounded" ref="section.notitle.cnt"/> |
|
281 <xs:attributeGroup ref="apiDesc.attlist"/> |
|
282 </xs:complexType> |
|
283 </xs:element> |
|
284 <xs:attributeGroup name="apiDesc.attlist"> |
|
285 <xs:attribute name="spectitle"/> |
|
286 <xs:attributeGroup ref="univ-atts"/> |
|
287 <xs:attribute name="outputclass"/> |
|
288 <xs:attributeGroup ref="global-atts"/> |
|
289 <xs:attribute name="class" default="- topic/section reference/section apiRef/apiDesc "/> |
|
290 </xs:attributeGroup> |
|
291 <xs:element name="apiImpl"> |
|
292 <xs:complexType mixed="true"> |
|
293 <xs:group minOccurs="0" maxOccurs="unbounded" ref="section.notitle.cnt"/> |
|
294 <xs:attributeGroup ref="apiImpl.attlist"/> |
|
295 </xs:complexType> |
|
296 </xs:element> |
|
297 <xs:attributeGroup name="apiImpl.attlist"> |
|
298 <xs:attribute name="spectitle"/> |
|
299 <xs:attributeGroup ref="univ-atts"/> |
|
300 <xs:attribute name="outputclass"/> |
|
301 <xs:attributeGroup ref="global-atts"/> |
|
302 <xs:attribute name="class" default="- topic/section reference/section apiRef/apiImpl "/> |
|
303 </xs:attributeGroup> |
|
304 <!-- ============ Class ancestry ============ --> |
|
305 </xs:schema> |