taskMod.xsd 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- ============================================================= -->
  3. <!-- HEADER -->
  4. <!-- ============================================================= -->
  5. <!-- MODULE: DITA Task 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 Tasks -->
  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. <!-- Base type: univ-atts -->
  27. <xs:attributeGroup name="univ-atts-no-importance-task">
  28. <xs:attributeGroup ref="id-atts"/>
  29. <xs:attribute name="base" type="xs:string" />
  30. <xs:attributeGroup ref="base-attribute-extensions"/>
  31. <xs:attributeGroup ref="filter-atts"/>
  32. <xs:attribute name="rev" type="xs:string"/>
  33. <xs:attribute name="status" type="status-atts.class"/>
  34. <xs:attributeGroup ref="localization-atts" />
  35. </xs:attributeGroup>
  36. <!-- Base type: importance-atts.class -->
  37. <xs:simpleType name="importance-att-nodefault-task.class">
  38. <xs:restriction base="importance-atts.class">
  39. <xs:enumeration value="optional"/>
  40. <xs:enumeration value="required"/>
  41. <xs:enumeration value="-dita-use-conref-target"/>
  42. </xs:restriction>
  43. </xs:simpleType>
  44. <!-- Element declarations for task.mod -->
  45. <xs:element name="task">
  46. <xs:annotation>
  47. <xs:documentation>
  48. The &lt;<keyword>task</keyword>> element is the top-level element
  49. for a task topic. Tasks are the main building blocks for task-oriented user
  50. assistance. They generally provide step-by-step instructions that will enable
  51. a user to perform a task. A task answers the question of "how to?" by telling
  52. the user precisely what to do and the order in which to do it. Tasks have
  53. the same high-level structure as other topics, with a title, short description
  54. and body.
  55. </xs:documentation>
  56. </xs:annotation>
  57. <xs:complexType>
  58. <xs:complexContent>
  59. <xs:extension base="task.class">
  60. <xs:attribute ref="class" default="- topic/topic task/task "/>
  61. </xs:extension>
  62. </xs:complexContent>
  63. </xs:complexType>
  64. </xs:element>
  65. <xs:element name="taskbody">
  66. <xs:annotation>
  67. <xs:documentation>
  68. The &lt;<keyword>taskbody</keyword>> element is the main body-level
  69. element inside a task topic. A task body has a very specific structure, with
  70. the following elements in this order: &lt;<keyword>prereq</keyword>>, &lt;<keyword>context</keyword>>,
  71. &lt;<keyword>steps</keyword>>, &lt;<keyword>result</keyword>, &lt;<keyword>example</keyword>>
  72. and &lt;<keyword>postreq</keyword>>. Each of the body sections are optional.
  73. </xs:documentation>
  74. </xs:annotation>
  75. <xs:complexType>
  76. <xs:complexContent>
  77. <xs:extension base="taskbody.class">
  78. <xs:attribute ref="class" default="- topic/body task/taskbody "/>
  79. </xs:extension>
  80. </xs:complexContent>
  81. </xs:complexType>
  82. </xs:element>
  83. <xs:element name="prereq">
  84. <xs:annotation>
  85. <xs:documentation>
  86. The pre-requisite (&lt;<keyword>prereq</keyword>>) section of a
  87. task should document things the user needs to know or do before starting the
  88. current task. Prerequisite links will be placed in a list after the related-links
  89. section; on output the &lt;<keyword>prereq</keyword>> links from the related-links
  90. section are added to the &lt;<keyword>prereq</keyword>> section.
  91. </xs:documentation>
  92. </xs:annotation>
  93. <xs:complexType mixed="true">
  94. <xs:complexContent>
  95. <xs:extension base="prereq.class">
  96. <xs:attribute ref="class" default="- topic/section task/prereq "/>
  97. </xs:extension>
  98. </xs:complexContent>
  99. </xs:complexType>
  100. </xs:element>
  101. <xs:element name="context">
  102. <xs:annotation>
  103. <xs:documentation>
  104. The &lt;<keyword>context</keyword>> section of a task provides
  105. background information for the task. This information helps the user understand
  106. what the purpose of the task is and what they will gain by completing the
  107. task. This section should be brief and does not replace or recreate a concept
  108. topic on the same subject, although the context section may include some conceptual
  109. information
  110. </xs:documentation>
  111. </xs:annotation>
  112. <xs:complexType mixed="true">
  113. <xs:complexContent>
  114. <xs:extension base="context.class">
  115. <xs:attribute ref="class" default="- topic/section task/context "/>
  116. </xs:extension>
  117. </xs:complexContent>
  118. </xs:complexType>
  119. </xs:element>
  120. <xs:element name="result">
  121. <xs:annotation>
  122. <xs:documentation>
  123. The &lt;<keyword>result</keyword>> element describes the expected
  124. outcome for the task as a whole.
  125. </xs:documentation>
  126. </xs:annotation>
  127. <xs:complexType mixed="true">
  128. <xs:complexContent>
  129. <xs:extension base="result.class">
  130. <xs:attribute ref="class" default="- topic/section task/result "/>
  131. </xs:extension>
  132. </xs:complexContent>
  133. </xs:complexType>
  134. </xs:element>
  135. <xs:element name="postreq">
  136. <xs:annotation>
  137. <xs:documentation>
  138. The &lt;<keyword>postreq</keyword>> element describes steps or
  139. tasks that the user should do after the successful completion of the current
  140. task. It is often supported by links to the next task or tasks in the &lt;<keyword>related-links</keyword>>
  141. section.
  142. </xs:documentation>
  143. </xs:annotation>
  144. <xs:complexType mixed="true">
  145. <xs:complexContent>
  146. <xs:extension base="postreq.class">
  147. <xs:attribute ref="class" default="- topic/section task/postreq "/>
  148. </xs:extension>
  149. </xs:complexContent>
  150. </xs:complexType>
  151. </xs:element>
  152. <xs:element name="choice">
  153. <xs:annotation>
  154. <xs:documentation>
  155. Each &lt;<keyword>choice</keyword>> element describes one way that
  156. the user could accomplish the current step.
  157. </xs:documentation>
  158. </xs:annotation>
  159. <xs:complexType mixed="true">
  160. <xs:complexContent>
  161. <xs:extension base="choice.class">
  162. <xs:attribute ref="class" default="- topic/li task/choice "/>
  163. </xs:extension>
  164. </xs:complexContent>
  165. </xs:complexType>
  166. </xs:element>
  167. <xs:element name="step">
  168. <xs:annotation>
  169. <xs:documentation>
  170. The &lt;<keyword>step</keyword>> element represents an action that
  171. a user must follow to accomplish a task. Each step in a task must contain
  172. a command &lt;<keyword>cmd</keyword>> element which describes the particular
  173. action the user must do to accomplish the overall task. The step element can
  174. also contain information &lt;<keyword>info</keyword>>, substeps &lt;<keyword>substeps</keyword>>,
  175. tutorial information &lt;<keyword>tutorialinfo</keyword>>, a step example
  176. &lt;<keyword>stepxmp</keyword>>, choices &lt;<keyword>choices</keyword>> or
  177. a stepresult &lt;<keyword>stepresult</keyword>>, although these are optional.
  178. </xs:documentation>
  179. </xs:annotation>
  180. <xs:complexType>
  181. <xs:complexContent>
  182. <xs:extension base="step.class">
  183. <xs:attribute ref="class" default="- topic/li task/step "/>
  184. </xs:extension>
  185. </xs:complexContent>
  186. </xs:complexType>
  187. </xs:element>
  188. <xs:element name="substep">
  189. <xs:annotation>
  190. <xs:documentation>
  191. A &lt;<keyword>substep</keyword>> element has the same structure
  192. as a &lt;<keyword>step</keyword>>, except that it does not allow lists of
  193. choices or substeps within it, in order to prevent unlimited nesting of steps.
  194. </xs:documentation>
  195. </xs:annotation>
  196. <xs:complexType>
  197. <xs:complexContent>
  198. <xs:extension base="substep.class">
  199. <xs:attribute ref="class" default="- topic/li task/substep "/>
  200. </xs:extension>
  201. </xs:complexContent>
  202. </xs:complexType>
  203. </xs:element>
  204. <xs:element name="steps-unordered">
  205. <xs:annotation>
  206. <xs:documentation>
  207. Like the &lt;<keyword>steps</keyword>> element, the &lt;<keyword>steps-unordered</keyword>>
  208. section of a task provides the main content of the task topic, but particularly
  209. for cases in which the order of steps may vary from one situation to another.
  210. For example, fields of a form can be filled in without particular regard
  211. to order as long as the required ones are filled in before submitting the
  212. form. One or more steps is required inside the &lt;<keyword>steps-unordered</keyword>>
  213. section.
  214. </xs:documentation>
  215. </xs:annotation>
  216. <xs:complexType>
  217. <xs:complexContent>
  218. <xs:extension base="steps-unordered.class">
  219. <xs:attribute ref="class" default="- topic/ul task/steps-unordered "/>
  220. </xs:extension>
  221. </xs:complexContent>
  222. </xs:complexType>
  223. </xs:element>
  224. <xs:element name="choices">
  225. <xs:annotation>
  226. <xs:documentation>
  227. The &lt;<keyword>choices</keyword>> element contains a list of
  228. &lt;<keyword>choice</keyword>> elements. It is used when the user will need
  229. to choose one of several actions while performing the steps of a task.
  230. </xs:documentation>
  231. </xs:annotation>
  232. <xs:complexType>
  233. <xs:complexContent>
  234. <xs:extension base="choices.class">
  235. <xs:attribute ref="class" default="- topic/ul task/choices "/>
  236. </xs:extension>
  237. </xs:complexContent>
  238. </xs:complexType>
  239. </xs:element>
  240. <xs:element name="steps">
  241. <xs:annotation>
  242. <xs:documentation>
  243. The &lt;<keyword>steps</keyword>> section of a task provides the
  244. main content of the task topic. The task is described as a series of steps
  245. that the user must follow to accomplish the task. One or more &lt;<keyword>steps</keyword>>
  246. elements is required inside the &lt;<keyword>steps</keyword>> section.
  247. </xs:documentation>
  248. </xs:annotation>
  249. <xs:complexType>
  250. <xs:complexContent>
  251. <xs:extension base="steps.class">
  252. <xs:attribute ref="class" default="- topic/ol task/steps "/>
  253. </xs:extension>
  254. </xs:complexContent>
  255. </xs:complexType>
  256. </xs:element>
  257. <xs:element name="substeps">
  258. <xs:annotation>
  259. <xs:documentation>
  260. The &lt;<keyword>substeps</keyword>> element allows you to break
  261. a step down into a series of separate actions, and should be used only if
  262. necessary. Try to describe the steps of a task in a single level of steps.
  263. If you need to use more than one level of substep nesting, you should probably
  264. rewrite the task to simplify it.
  265. </xs:documentation>
  266. </xs:annotation>
  267. <xs:complexType>
  268. <xs:complexContent>
  269. <xs:extension base="substeps.class">
  270. <xs:attribute ref="class" default="- topic/ol task/substeps "/>
  271. </xs:extension>
  272. </xs:complexContent>
  273. </xs:complexType>
  274. </xs:element>
  275. <xs:element name="cmd">
  276. <xs:annotation>
  277. <xs:documentation>
  278. The command (&lt;<keyword>cmd</keyword>>) element is required as
  279. the first element inside a &lt;<keyword>step</keyword>>. It provides the active
  280. voice instruction to the user for completing the step, and should not be more
  281. than one sentence. If the step needs additional explanation, this can follow
  282. the &lt;<keyword>cmd</keyword>> element inside an <ph><xref href="info.xml">info</xref></ph> element.
  283. </xs:documentation>
  284. </xs:annotation>
  285. <xs:complexType mixed="true">
  286. <xs:complexContent>
  287. <xs:extension base="cmd.class">
  288. <xs:attribute ref="class" default="- topic/ph task/cmd "/>
  289. </xs:extension>
  290. </xs:complexContent>
  291. </xs:complexType>
  292. </xs:element>
  293. <xs:element name="info">
  294. <xs:annotation>
  295. <xs:documentation>
  296. The information element (&lt;<keyword>info</keyword>>) occurs inside
  297. a &lt;<keyword>step</keyword>> element to provide additional information about
  298. the step.
  299. </xs:documentation>
  300. </xs:annotation>
  301. <xs:complexType mixed="true">
  302. <xs:complexContent>
  303. <xs:extension base="info.class">
  304. <xs:attribute ref="class" default="- topic/itemgroup task/info "/>
  305. </xs:extension>
  306. </xs:complexContent>
  307. </xs:complexType>
  308. </xs:element>
  309. <xs:element name="tutorialinfo">
  310. <xs:annotation>
  311. <xs:documentation>
  312. The tutorial info (&lt;<keyword>tutorialinfo</keyword>>) element
  313. contains information that is included in a step when a task is part of a tutorial.
  314. The &lt;<keyword>tutorialinfo</keyword>> element allows you to turn a task
  315. into a learning exercise by including explanatory content about methods for
  316. completing the current step. This information is currently included in all
  317. output processing results, not just tutorials. It is not for use in tasks
  318. that are being used outside of tutorials.
  319. </xs:documentation>
  320. </xs:annotation>
  321. <xs:complexType mixed="true">
  322. <xs:complexContent>
  323. <xs:extension base="tutorialinfo.class">
  324. <xs:attribute ref="class" default="- topic/itemgroup task/tutorialinfo "/>
  325. </xs:extension>
  326. </xs:complexContent>
  327. </xs:complexType>
  328. </xs:element>
  329. <xs:element name="stepxmp">
  330. <xs:annotation>
  331. <xs:documentation>
  332. The step example (&lt;<keyword>stepxmp</keyword>>) element is used
  333. to illustrate a step of a task. The example can be a couple of words, or an
  334. entire paragraph.
  335. </xs:documentation>
  336. </xs:annotation>
  337. <xs:complexType mixed="true">
  338. <xs:complexContent>
  339. <xs:extension base="stepxmp.class">
  340. <xs:attribute ref="class" default="- topic/itemgroup task/stepxmp "/>
  341. </xs:extension>
  342. </xs:complexContent>
  343. </xs:complexType>
  344. </xs:element>
  345. <xs:element name="stepresult">
  346. <xs:annotation>
  347. <xs:documentation>
  348. The &lt;<keyword>stepresult</keyword>> element provides information
  349. on the expected outcome of a step. If a user interface is being documented,
  350. the outcome could describe a dialog box opening, or the appearance of a progress
  351. indicator. Step results are useful to assure a user that they are on track,
  352. but should not be used for every step, as this quickly becomes tedious.
  353. </xs:documentation>
  354. </xs:annotation>
  355. <xs:complexType mixed="true">
  356. <xs:complexContent>
  357. <xs:extension base="stepresult.class">
  358. <xs:attribute ref="class" default="- topic/itemgroup task/stepresult "/>
  359. </xs:extension>
  360. </xs:complexContent>
  361. </xs:complexType>
  362. </xs:element>
  363. <xs:element name="choicetable">
  364. <xs:annotation>
  365. <xs:documentation>
  366. The &lt;<keyword>choicetable</keyword>> element contains a series
  367. of optional choices available within a step of a task.
  368. </xs:documentation>
  369. </xs:annotation>
  370. <xs:complexType>
  371. <xs:complexContent>
  372. <xs:extension base="choicetable.class">
  373. <xs:attribute ref="class" default="- topic/simpletable task/choicetable "/>
  374. </xs:extension>
  375. </xs:complexContent>
  376. </xs:complexType>
  377. </xs:element>
  378. <xs:element name="chhead">
  379. <xs:annotation>
  380. <xs:documentation>
  381. The &lt;<keyword>chhead</keyword>> element is a container inside
  382. the &lt;<keyword>choicetable</keyword>> element that provides specific heading
  383. text to override the default <b>Options</b> and <b>Description</b> headings.
  384. The &lt;<keyword>chhead</keyword>> element contains both a <ph><xref href="choptionhd.xml">choptionhd</xref></ph> and <ph><xref
  385. href="chdeschd.xml">chdeschd</xref></ph> element as a pair.
  386. </xs:documentation>
  387. </xs:annotation>
  388. <xs:complexType>
  389. <xs:complexContent>
  390. <xs:extension base="chhead.class">
  391. <xs:attribute ref="class" default="- topic/sthead task/chhead "/>
  392. </xs:extension>
  393. </xs:complexContent>
  394. </xs:complexType>
  395. </xs:element>
  396. <xs:element name="chrow">
  397. <xs:annotation>
  398. <xs:documentation>
  399. The &lt;<keyword>chrow</keyword>> element is a container inside
  400. the &lt;<keyword>choicetable</keyword>> element. The &lt;<keyword>chrow</keyword>>
  401. element contains both a &lt;<keyword>choption</keyword>> and &lt;<keyword>chdesc</keyword>>
  402. element as a pair.
  403. </xs:documentation>
  404. </xs:annotation>
  405. <xs:complexType>
  406. <xs:complexContent>
  407. <xs:extension base="chrow.class">
  408. <xs:attribute ref="class" default="- topic/chrow "/>
  409. </xs:extension>
  410. </xs:complexContent>
  411. </xs:complexType>
  412. </xs:element>
  413. <xs:element name="choptionhd">
  414. <xs:annotation>
  415. <xs:documentation>
  416. The &lt;<keyword>choptionhd</keyword>> element provides a specific
  417. label for the list of options that a user chooses from to accomplish a step.
  418. The default label for options is <b>Option</b>.
  419. </xs:documentation>
  420. </xs:annotation>
  421. <xs:complexType mixed="true">
  422. <xs:complexContent>
  423. <xs:extension base="choptionhd.class">
  424. <xs:attribute ref="class" default="- topic/stentry task/choptionhd "/>
  425. </xs:extension>
  426. </xs:complexContent>
  427. </xs:complexType>
  428. </xs:element>
  429. <xs:element name="chdeschd">
  430. <xs:annotation>
  431. <xs:documentation>
  432. The &lt;<keyword>chdeschd</keyword>> option provides a specific
  433. label for the list of descriptions of options that a user must choose to accomplish
  434. a step of a task. The default label overridden by &lt;<keyword>chdeschd</keyword>>
  435. is <b>Description</b>.
  436. </xs:documentation>
  437. </xs:annotation>
  438. <xs:complexType mixed="true">
  439. <xs:complexContent>
  440. <xs:extension base="chdeschd.class">
  441. <xs:attribute ref="class" default="- topic/stentry task/chdeschd "/>
  442. </xs:extension>
  443. </xs:complexContent>
  444. </xs:complexType>
  445. </xs:element>
  446. <xs:element name="choption">
  447. <xs:annotation>
  448. <xs:documentation>
  449. The &lt;<keyword>choption</keyword>> element describes an option
  450. that a user could choose to accomplish a step of a task. In a user interface,
  451. for example, this might be the name of radio button.
  452. </xs:documentation>
  453. </xs:annotation>
  454. <xs:complexType mixed="true">
  455. <xs:complexContent>
  456. <xs:extension base="choption.class">
  457. <xs:attribute ref="class" default="- topic/stentry task/choption "/>
  458. </xs:extension>
  459. </xs:complexContent>
  460. </xs:complexType>
  461. </xs:element>
  462. <xs:element name="chdesc">
  463. <xs:annotation>
  464. <xs:documentation>
  465. The &lt;<keyword>chdesc</keyword>> element is a description of
  466. an option that a user chooses while performing a step to accomplish a task.
  467. It explains why the user would choose that option, and might explain the result
  468. of the choice when it is not immediately obvious.
  469. </xs:documentation>
  470. </xs:annotation>
  471. <xs:complexType mixed="true">
  472. <xs:complexContent>
  473. <xs:extension base="chdesc.class">
  474. <xs:attribute ref="class" default="- topic/stentry task/chdesc "/>
  475. </xs:extension>
  476. </xs:complexContent>
  477. </xs:complexType>
  478. </xs:element>
  479. <!-- Element declarations for task.mod -->
  480. <xs:group name="task-info-types">
  481. <xs:choice>
  482. <xs:group ref="task"/>
  483. <xs:group ref="info-types"/>
  484. </xs:choice>
  485. </xs:group>
  486. <!-- Base type: topic.class -->
  487. <xs:complexType name="task.class">
  488. <xs:sequence>
  489. <xs:group ref="title"/>
  490. <xs:group ref="titlealts" minOccurs="0"/>
  491. <xs:choice minOccurs="0">
  492. <xs:group ref="shortdesc" minOccurs="0"/>
  493. <xs:group ref="abstract" minOccurs="0"/>
  494. </xs:choice>
  495. <xs:group ref="prolog" minOccurs="0"/>
  496. <xs:group ref="taskbody" minOccurs="0"/>
  497. <xs:group ref="related-links" minOccurs="0"/>
  498. <xs:group ref="task-info-types" minOccurs="0" maxOccurs="unbounded"/>
  499. </xs:sequence>
  500. <xs:attribute name="id" type="xs:ID" use="required"/>
  501. <xs:attribute name="conref" type="xs:string"/>
  502. <xs:attributeGroup ref="select-atts"/>
  503. <xs:attribute ref="ditaarch:DITAArchVersion"/>
  504. <xs:attribute name="outputclass" type="xs:string"/>
  505. <xs:attributeGroup ref="localization-atts"/>
  506. <xs:attributeGroup ref="global-atts"/>
  507. </xs:complexType>
  508. <!-- Base type: body.class -->
  509. <xs:complexType name="taskbody.class">
  510. <xs:sequence>
  511. <xs:group ref="prereq" minOccurs="0"/>
  512. <xs:group ref="context" minOccurs="0"/>
  513. <xs:choice minOccurs="0" maxOccurs="1">
  514. <xs:group ref="steps" />
  515. <xs:group ref="steps-unordered" />
  516. </xs:choice>
  517. <xs:group ref="result" minOccurs="0"/>
  518. <xs:group ref="example" minOccurs="0"/>
  519. <xs:group ref="postreq" minOccurs="0"/>
  520. <xs:choice minOccurs="0" maxOccurs="unbounded">
  521. <xs:group ref="data.element.incl"/>
  522. <xs:group ref="foreign.unknown.incl"/>
  523. </xs:choice>
  524. </xs:sequence>
  525. <xs:attribute name="outputclass" type="xs:string"/>
  526. <xs:attribute name="base" type="xs:string" />
  527. <xs:attributeGroup ref="base-attribute-extensions"/>
  528. <xs:attributeGroup ref="id-atts"/>
  529. <xs:attributeGroup ref="localization-atts" />
  530. <xs:attributeGroup ref="global-atts"/>
  531. </xs:complexType>
  532. <!-- Base type: section.class -->
  533. <xs:complexType name="prereq.class" mixed="true">
  534. <xs:choice minOccurs="0" maxOccurs="unbounded">
  535. <xs:group ref="section.notitle.cnt"/>
  536. </xs:choice>
  537. <xs:attribute name="outputclass" type="xs:string"/>
  538. <xs:attributeGroup ref="univ-atts"/>
  539. <xs:attributeGroup ref="global-atts"/>
  540. </xs:complexType>
  541. <!-- Base type: section.class -->
  542. <xs:complexType name="context.class" mixed="true">
  543. <xs:choice minOccurs="0" maxOccurs="unbounded">
  544. <xs:group ref="section.notitle.cnt"/>
  545. </xs:choice>
  546. <xs:attribute name="outputclass" type="xs:string"/>
  547. <xs:attributeGroup ref="univ-atts"/>
  548. <xs:attributeGroup ref="global-atts"/>
  549. </xs:complexType>
  550. <!-- Base type: ol.class -->
  551. <xs:complexType name="steps.class">
  552. <xs:choice>
  553. <xs:group ref="step" maxOccurs="unbounded"/>
  554. </xs:choice>
  555. <xs:attribute name="outputclass" type="xs:string"/>
  556. <xs:attributeGroup ref="univ-atts"/>
  557. <xs:attributeGroup ref="global-atts"/>
  558. </xs:complexType>
  559. <!-- Base type: ul.class -->
  560. <xs:complexType name="steps-unordered.class">
  561. <xs:choice minOccurs="1" maxOccurs="unbounded">
  562. <xs:group ref="step" />
  563. </xs:choice>
  564. <xs:attribute name="outputclass" type="xs:string"/>
  565. <xs:attributeGroup ref="univ-atts"/>
  566. <xs:attributeGroup ref="global-atts"/>
  567. </xs:complexType>
  568. <!-- Base type: li.class -->
  569. <xs:complexType name="step.class">
  570. <xs:sequence>
  571. <xs:group ref="cmd"/>
  572. <xs:choice minOccurs="0" maxOccurs="unbounded">
  573. <xs:group ref="info"/>
  574. <xs:group ref="substeps"/>
  575. <xs:group ref="tutorialinfo"/>
  576. <xs:group ref="stepxmp"/>
  577. <xs:group ref="choicetable"/>
  578. <xs:group ref="choices"/>
  579. </xs:choice>
  580. <xs:group ref="stepresult" minOccurs="0"/>
  581. </xs:sequence>
  582. <xs:attribute name="outputclass" type="xs:string"/>
  583. <xs:attributeGroup ref="univ-atts-no-importance-task"/>
  584. <xs:attributeGroup ref="global-atts"/>
  585. </xs:complexType>
  586. <!-- Base type: ph.class -->
  587. <xs:complexType name="cmd.class" mixed="true">
  588. <xs:choice minOccurs="0" maxOccurs="unbounded">
  589. <xs:group ref="ph.cnt"/>
  590. </xs:choice>
  591. <xs:attribute name="keyref" type="xs:string"/>
  592. <xs:attribute name="outputclass" type="xs:string"/>
  593. <xs:attributeGroup ref="univ-atts"/>
  594. <xs:attributeGroup ref="global-atts"/>
  595. </xs:complexType>
  596. <!-- Base type: itemgroup.class -->
  597. <xs:complexType name="info.class" mixed="true">
  598. <xs:choice minOccurs="0" maxOccurs="unbounded">
  599. <xs:group ref="itemgroup.cnt"/>
  600. </xs:choice>
  601. <xs:attribute name="outputclass" type="xs:string"/>
  602. <xs:attributeGroup ref="univ-atts"/>
  603. <xs:attributeGroup ref="global-atts"/>
  604. </xs:complexType>
  605. <!-- Base type: ol.class -->
  606. <xs:complexType name="substeps.class">
  607. <xs:choice maxOccurs="unbounded">
  608. <xs:group ref="substep" />
  609. </xs:choice>
  610. <xs:attribute name="outputclass" type="xs:string"/>
  611. <xs:attributeGroup ref="univ-atts"/>
  612. <xs:attributeGroup ref="global-atts"/>
  613. </xs:complexType>
  614. <!-- Base type: li.class -->
  615. <xs:complexType name="substep.class">
  616. <xs:sequence>
  617. <xs:group ref="cmd"/>
  618. <xs:choice minOccurs="0" maxOccurs="unbounded">
  619. <xs:group ref="info" />
  620. <xs:group ref="tutorialinfo" />
  621. <xs:group ref="stepxmp" />
  622. </xs:choice>
  623. <xs:group ref="stepresult" minOccurs="0"/>
  624. </xs:sequence>
  625. <xs:attribute name="outputclass" type="xs:string"/>
  626. <xs:attributeGroup ref="univ-atts-no-importance-task"/>
  627. <xs:attributeGroup ref="global-atts"/>
  628. </xs:complexType>
  629. <!-- Base type: itemgroup.class -->
  630. <xs:complexType name="tutorialinfo.class" mixed="true">
  631. <xs:choice minOccurs="0" maxOccurs="unbounded">
  632. <xs:group ref="itemgroup.cnt"/>
  633. </xs:choice>
  634. <xs:attribute name="outputclass" type="xs:string"/>
  635. <xs:attributeGroup ref="univ-atts"/>
  636. <xs:attributeGroup ref="global-atts"/>
  637. </xs:complexType>
  638. <!-- Base type: itemgroup.class -->
  639. <xs:complexType name="stepxmp.class" mixed="true">
  640. <xs:choice minOccurs="0" maxOccurs="unbounded">
  641. <xs:group ref="itemgroup.cnt"/>
  642. </xs:choice>
  643. <xs:attribute name="outputclass" type="xs:string"/>
  644. <xs:attributeGroup ref="univ-atts"/>
  645. <xs:attributeGroup ref="global-atts"/>
  646. </xs:complexType>
  647. <!-- Base type: ul.class -->
  648. <xs:complexType name="choices.class">
  649. <xs:choice maxOccurs="unbounded">
  650. <xs:group ref="choice" />
  651. </xs:choice>
  652. <xs:attribute name="outputclass" type="xs:string"/>
  653. <xs:attributeGroup ref="univ-atts"/>
  654. <xs:attributeGroup ref="global-atts"/>
  655. </xs:complexType>
  656. <xs:complexType name="choice.class" mixed="true">
  657. <xs:choice minOccurs="0" maxOccurs="unbounded">
  658. <xs:group ref="listitem.cnt"/>
  659. </xs:choice>
  660. <xs:attribute name="outputclass" type="xs:string"/>
  661. <xs:attributeGroup ref="univ-atts"/>
  662. <xs:attributeGroup ref="global-atts"/>
  663. </xs:complexType>
  664. <!-- Base type: itemgroup.class -->
  665. <xs:complexType name="stepresult.class" mixed="true">
  666. <xs:choice minOccurs="0" maxOccurs="unbounded">
  667. <xs:group ref="itemgroup.cnt"/>
  668. </xs:choice>
  669. <xs:attribute name="outputclass" type="xs:string"/>
  670. <xs:attributeGroup ref="univ-atts"/>
  671. <xs:attributeGroup ref="global-atts"/>
  672. </xs:complexType>
  673. <!-- Base type: section.class -->
  674. <xs:complexType name="result.class" mixed="true">
  675. <xs:choice minOccurs="0" maxOccurs="unbounded">
  676. <xs:group ref="section.notitle.cnt"/>
  677. </xs:choice>
  678. <xs:attribute name="outputclass" type="xs:string"/>
  679. <xs:attributeGroup ref="univ-atts"/>
  680. <xs:attributeGroup ref="global-atts"/>
  681. </xs:complexType>
  682. <!-- Base type: section.class -->
  683. <xs:complexType name="postreq.class" mixed="true">
  684. <xs:choice minOccurs="0" maxOccurs="unbounded">
  685. <xs:group ref="section.notitle.cnt"/>
  686. </xs:choice>
  687. <xs:attribute name="outputclass" type="xs:string"/>
  688. <xs:attributeGroup ref="univ-atts"/>
  689. <xs:attributeGroup ref="global-atts"/>
  690. </xs:complexType>
  691. <!-- Base type: simpletable.class -->
  692. <xs:complexType name="choicetable.class">
  693. <xs:sequence>
  694. <xs:group ref="chhead" minOccurs="0"/>
  695. <xs:group ref="chrow" minOccurs="0" maxOccurs="unbounded"/>
  696. </xs:sequence>
  697. <xs:attribute name="relcolwidth" type="xs:string"/>
  698. <xs:attribute name="keycol" type="xs:NMTOKEN"/>
  699. <xs:attribute name="refcols" type="xs:NMTOKENS"/>
  700. <xs:attributeGroup ref="display-atts"/>
  701. <xs:attribute name="outputclass" type="xs:string"/>
  702. <xs:attribute name="spectitle" type="xs:string"/>
  703. <xs:attributeGroup ref="univ-atts"/>
  704. <xs:attributeGroup ref="global-atts"/>
  705. </xs:complexType>
  706. <!-- Base type: sthead.class -->
  707. <xs:complexType name="chhead.class">
  708. <xs:sequence>
  709. <xs:group ref="choptionhd"/>
  710. <xs:group ref="chdeschd"/>
  711. </xs:sequence>
  712. <xs:attribute name="outputclass" type="xs:string"/>
  713. <xs:attributeGroup ref="univ-atts"/>
  714. <xs:attributeGroup ref="global-atts"/>
  715. </xs:complexType>
  716. <xs:complexType name="choptionhd.class" mixed="true">
  717. <xs:choice minOccurs="0" maxOccurs="unbounded">
  718. <xs:group ref="tblcell.cnt"/>
  719. </xs:choice>
  720. <xs:attribute name="outputclass" type="xs:string"/>
  721. <xs:attribute name="specentry" type="xs:string"/>
  722. <xs:attributeGroup ref="univ-atts"/>
  723. <xs:attributeGroup ref="global-atts"/>
  724. </xs:complexType>
  725. <xs:complexType name="chdeschd.class" mixed="true">
  726. <xs:choice minOccurs="0" maxOccurs="unbounded">
  727. <xs:group ref="tblcell.cnt"/>
  728. </xs:choice>
  729. <xs:attribute name="outputclass" type="xs:string"/>
  730. <xs:attribute name="specentry" type="xs:string"/>
  731. <xs:attributeGroup ref="univ-atts"/>
  732. <xs:attributeGroup ref="global-atts"/>
  733. </xs:complexType>
  734. <xs:complexType name="chrow.class">
  735. <xs:sequence>
  736. <xs:group ref="choption" />
  737. <xs:group ref="chdesc" />
  738. </xs:sequence>
  739. <xs:attribute name="outputclass" type="xs:string"/>
  740. <xs:attributeGroup ref="univ-atts"/>
  741. <xs:attributeGroup ref="global-atts"/>
  742. </xs:complexType>
  743. <xs:complexType name="choption.class" mixed="true">
  744. <xs:choice minOccurs="0" maxOccurs="unbounded">
  745. <xs:group ref="tblcell.cnt"/>
  746. </xs:choice>
  747. <xs:attribute name="outputclass" type="xs:string"/>
  748. <xs:attribute name="specentry" type="xs:string"/>
  749. <xs:attributeGroup ref="univ-atts"/>
  750. <xs:attributeGroup ref="global-atts"/>
  751. </xs:complexType>
  752. <xs:complexType name="chdesc.class" mixed="true">
  753. <xs:choice minOccurs="0" maxOccurs="unbounded">
  754. <xs:group ref="tblcell.cnt"/>
  755. </xs:choice>
  756. <xs:attribute name="outputclass" type="xs:string"/>
  757. <xs:attribute name="specentry" type="xs:string"/>
  758. <xs:attributeGroup ref="univ-atts"/>
  759. <xs:attributeGroup ref="global-atts"/>
  760. </xs:complexType>
  761. </xs:schema>