ctkCmdLineModuleProcess.xsd 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. <?xml version="1.0"?>
  2. <?xml-stylesheet type="text/xsl" href="xs3p.xsl"?>
  3. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  4. xmlns:xs3p="http://titanium.dstc.edu.au/xml/xs3p">
  5. <xsd:annotation>
  6. <xsd:appinfo source="http://www.commontk.org/docs/html/CommandLineModules_Page.html">
  7. <xs3p:title>CTK XML schema for progress and result reporting in command line modules.</xs3p:title>
  8. <xs3p:printGlossary>false</xs3p:printGlossary>
  9. <xs3p:printLegend>false</xs3p:printLegend>
  10. </xsd:appinfo>
  11. <xsd:documentation>The XML schema for the XML fragments used when reporting progress and results in command line modules.</xsd:documentation>
  12. </xsd:annotation>
  13. <!--
  14. ===================================================================
  15. MODULE-ROOT
  16. Root element
  17. ===================================================================
  18. -->
  19. <xsd:element name="module-root" type="RootType"/>
  20. <xsd:complexType name="RootType" mixed="true">
  21. <xsd:annotation>
  22. <xsd:documentation>The root element. This is added automatically and must not be printed out by the module.</xsd:documentation>
  23. </xsd:annotation>
  24. <xsd:sequence>
  25. <xsd:group maxOccurs="unbounded" minOccurs="0" ref="FilterGroup"/>
  26. </xsd:sequence>
  27. </xsd:complexType>
  28. <xsd:group name="FilterGroup">
  29. <xsd:sequence>
  30. <xsd:element maxOccurs="1" minOccurs="1" name="filter-start" type="FilterStartType"/>
  31. <xsd:element maxOccurs="unbounded" minOccurs="0" name="filter-progress" type="FilterProgressType"/>
  32. <xsd:element maxOccurs="unbounded" minOccurs="0" name="filter-progress-text" type="FilterProgressTextType"/>
  33. <xsd:element maxOccurs="unbounded" minOccurs="0" name="filter-result" type="FilterResultType"/>
  34. <xsd:element maxOccurs="1" minOccurs="1" name="filter-end" type="FilterEndType"/>
  35. </xsd:sequence>
  36. </xsd:group>
  37. <!--
  38. ===================================================================
  39. FILTER-START
  40. ===================================================================
  41. -->
  42. <xsd:complexType name="FilterStartType">
  43. <xsd:annotation>
  44. <xsd:documentation>Marks the start of a set of processing instructions.</xsd:documentation>
  45. </xsd:annotation>
  46. <xsd:sequence>
  47. <xsd:element maxOccurs="1" minOccurs="1" name="filter-name" type="xsd:string">
  48. <xsd:annotation>
  49. <xsd:documentation>The name of the current "filter" (set of processing instructions).</xsd:documentation>
  50. </xsd:annotation>
  51. </xsd:element>
  52. <xsd:element maxOccurs="1" minOccurs="0" name="filter-comment" type="xsd:string">
  53. <xsd:annotation>
  54. <xsd:documentation>A short, descriptive text about the purpose of this filter.</xsd:documentation>
  55. </xsd:annotation>
  56. </xsd:element>
  57. </xsd:sequence>
  58. </xsd:complexType>
  59. <!--
  60. ===================================================================
  61. FILTER-PROGRESS
  62. ===================================================================
  63. -->
  64. <xsd:simpleType name="FilterProgressType">
  65. <xsd:annotation>
  66. <xsd:documentation>A float value between 0 and 1 to report the current overall progress.</xsd:documentation>
  67. </xsd:annotation>
  68. <xsd:restriction base="xsd:float">
  69. <xsd:minInclusive value="0"/>
  70. <xsd:maxInclusive value="1"/>
  71. </xsd:restriction>
  72. </xsd:simpleType>
  73. <!--
  74. ===================================================================
  75. FILTER-PROGRESS-TEXT
  76. ===================================================================
  77. -->
  78. <xsd:complexType name="FilterProgressTextType" mixed="true">
  79. <xsd:annotation>
  80. <xsd:documentation>Report a progress value and corresponding progress text.</xsd:documentation>
  81. </xsd:annotation>
  82. <xsd:attribute name="progress" use="required" type="FilterProgressType"/>
  83. </xsd:complexType>
  84. <!--
  85. ===================================================================
  86. FILTER-RESULT
  87. ===================================================================
  88. -->
  89. <xsd:complexType name="FilterResultType" mixed="true">
  90. <xsd:annotation>
  91. <xsd:documentation>Report the current result.</xsd:documentation>
  92. </xsd:annotation>
  93. <xsd:attribute name="name" use="required" type="xsd:string">
  94. <xsd:annotation>
  95. <xsd:documentation>The output parameter name to which this result belongs to.</xsd:documentation>
  96. </xsd:annotation>
  97. </xsd:attribute>
  98. </xsd:complexType>
  99. <!--
  100. ===================================================================
  101. FILTER-END
  102. ===================================================================
  103. -->
  104. <xsd:complexType name="FilterEndType">
  105. <xsd:annotation>
  106. <xsd:documentation>Marks the end of a set of processing instructions.</xsd:documentation>
  107. </xsd:annotation>
  108. <xsd:sequence>
  109. <xsd:element maxOccurs="1" minOccurs="0" name="filter-comment" type="xsd:string">
  110. <xsd:annotation>
  111. <xsd:documentation>A short, descriptive text about the end state of this filter.</xsd:documentation>
  112. </xsd:annotation>
  113. </xsd:element>
  114. </xsd:sequence>
  115. </xsd:complexType>
  116. </xsd:schema>