ApplicationService_schema1.xsd 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260
  1. <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2. <xs:schema elementFormDefault="qualified" version="1.0"
  3. targetNamespace="http://wg23.dicom.nema.org/"
  4. xmlns:tns="http://wg23.dicom.nema.org/"
  5. xmlns:xs="http://www.w3.org/2001/XMLSchema">
  6. <xs:element name="bringToFront" type="tns:bringToFront"/>
  7. <xs:element name="bringToFrontResponse" type="tns:bringToFrontResponse"/>
  8. <xs:element name="getAsModels" type="tns:getAsModels"/>
  9. <xs:element name="getAsModelsResponse" type="tns:getAsModelsResponse"/>
  10. <xs:element name="getDataAsFile" type="tns:getDataAsFile"/>
  11. <xs:element name="getDataAsFileResponse" type="tns:getDataAsFileResponse"/>
  12. <xs:element name="getDataAsSpecificTypeFile"
  13. type="tns:getDataAsSpecificTypeFile"/>
  14. <xs:element name="getDataAsSpecificTypeFileResponse"
  15. type="tns:getDataAsSpecificTypeFileResponse"/>
  16. <xs:element name="getState" type="tns:getState"/>
  17. <xs:element name="getStateResponse" type="tns:getStateResponse"/>
  18. <xs:element name="notifyDataAvailable" type="tns:notifyDataAvailable"/>
  19. <xs:element name="notifyDataAvailableResponse"
  20. type="tns:notifyDataAvailableResponse"/>
  21. <xs:element name="queryModel" type="tns:queryModel"/>
  22. <xs:element name="queryModelResponse" type="tns:queryModelResponse"/>
  23. <xs:element name="setState" type="tns:setState"/>
  24. <xs:element name="setStateResponse" type="tns:setStateResponse"/>
  25. <xs:complexType name="getState">
  26. <xs:sequence/>
  27. </xs:complexType>
  28. <xs:complexType name="getStateResponse">
  29. <xs:sequence>
  30. <xs:element name="retval" type="tns:state"/>
  31. </xs:sequence>
  32. </xs:complexType>
  33. <xs:complexType name="getDataAsFile">
  34. <xs:sequence>
  35. <xs:element name="uuids" type="tns:ArrayOfUUID"/>
  36. <xs:element name="includeBulkData" type="xs:boolean"/>
  37. </xs:sequence>
  38. </xs:complexType>
  39. <xs:complexType name="getDataAsFileResponse">
  40. <xs:sequence>
  41. <xs:element name="objectLocators" type="tns:ArrayOfObjectLocator"/>
  42. </xs:sequence>
  43. </xs:complexType>
  44. <xs:complexType name="getDataAsSpecificTypeFile">
  45. <xs:sequence>
  46. <xs:element name="objectUUIDs" type="tns:ArrayOfUUID"/>
  47. <xs:element name="mimeType" type="xs:string"/>
  48. <xs:element name="transferSyntaxUID" type="tns:uid"/>
  49. <xs:element name="includeBulkData" type="xs:boolean"/>
  50. </xs:sequence>
  51. </xs:complexType>
  52. <xs:complexType name="getDataAsSpecificTypeFileResponse">
  53. <xs:sequence>
  54. <xs:element name="objectLocators" type="tns:ArrayOfObjectLocator"/>
  55. </xs:sequence>
  56. </xs:complexType>
  57. <xs:complexType name="uuid">
  58. <xs:sequence>
  59. <xs:element name="uuid" type="xs:string"/>
  60. </xs:sequence>
  61. </xs:complexType>
  62. <xs:complexType name="objectLocator">
  63. <xs:sequence>
  64. <xs:element name="uuid" type="tns:uuid"/>
  65. <xs:element name="uri" type="xs:anyURI"/>
  66. </xs:sequence>
  67. </xs:complexType>
  68. <xs:complexType name="notifyDataAvailable">
  69. <xs:sequence>
  70. <xs:element name="availableData" type="tns:availableData"/>
  71. <xs:element name="lastData" type="xs:boolean"/>
  72. </xs:sequence>
  73. </xs:complexType>
  74. <xs:complexType name="availableData">
  75. <xs:sequence>
  76. <xs:element name="patients" type="tns:ArrayOfPatient"/>
  77. <xs:element name="objectDescriptors"
  78. type="tns:ArrayOfObjectDescriptor"/>
  79. </xs:sequence>
  80. </xs:complexType>
  81. <xs:complexType name="patient">
  82. <xs:sequence>
  83. <xs:element name="name" type="xs:string"/>
  84. <xs:element name="objectDescriptors"
  85. type="tns:ArrayOfObjectDescriptor"/>
  86. <xs:element name="studies" type="tns:ArrayOfStudy"/>
  87. </xs:sequence>
  88. </xs:complexType>
  89. <xs:complexType name="study">
  90. <xs:sequence>
  91. <xs:element name="studyUID" type="xs:string"/>
  92. <xs:element name="objectDescriptors"
  93. type="tns:ArrayOfObjectDescriptor"/>
  94. <xs:element name="series" type="tns:ArrayOfSeries"/>
  95. </xs:sequence>
  96. </xs:complexType>
  97. <xs:complexType name="series">
  98. <xs:sequence>
  99. <xs:element name="seriesUID" type="xs:string"/>
  100. <xs:element name="objectDescriptors"
  101. type="tns:ArrayOfObjectDescriptor"/>
  102. </xs:sequence>
  103. </xs:complexType>
  104. <xs:complexType name="modality">
  105. <xs:sequence>
  106. <xs:element name="modality" type="xs:string"/>
  107. </xs:sequence>
  108. </xs:complexType>
  109. <xs:complexType name="objectDescriptor">
  110. <xs:sequence>
  111. <xs:element name="uuid" type="tns:uuid"/>
  112. <xs:element name="mimeType" type="xs:string"/>
  113. <xs:element name="classUID" type="tns:uid"/>
  114. <xs:element name="transferSyntaxUID" type="tns:uid"/>
  115. <xs:element name="modality" type="tns:modality"/>
  116. </xs:sequence>
  117. </xs:complexType>
  118. <xs:complexType name="uid">
  119. <xs:sequence>
  120. <xs:element name="uid" type="xs:string"/>
  121. </xs:sequence>
  122. </xs:complexType>
  123. <xs:complexType name="notifyDataAvailableResponse">
  124. <xs:sequence>
  125. <xs:element name="retval" type="xs:boolean"/>
  126. </xs:sequence>
  127. </xs:complexType>
  128. <xs:complexType name="queryModel">
  129. <xs:sequence>
  130. <xs:element name="objUUIDs" type="tns:ArrayOfUUID"/>
  131. <xs:element name="modelXpaths" type="tns:ArrayOfString"/>
  132. <xs:element name="includeBulkDataPointers" type="xs:boolean"/>
  133. </xs:sequence>
  134. </xs:complexType>
  135. <xs:complexType name="queryModelResponse">
  136. <xs:sequence>
  137. <xs:element name="queryResults" type="tns:ArrayOfQueryResult"/>
  138. </xs:sequence>
  139. </xs:complexType>
  140. <xs:complexType name="queryResult">
  141. <xs:sequence>
  142. <xs:element name="model" type="tns:uuid"/>
  143. <xs:element name="xpath" type="xs:string"/>
  144. <xs:element name="results" type="tns:ArrayOfString"/>
  145. </xs:sequence>
  146. </xs:complexType>
  147. <xs:complexType name="getAsModels">
  148. <xs:sequence>
  149. <xs:element name="uuids" type="tns:ArrayOfUUID"/>
  150. <xs:element name="classUID" type="tns:uid"/>
  151. <xs:element name="transferSyntaxUID" type="tns:uid"/>
  152. </xs:sequence>
  153. </xs:complexType>
  154. <xs:complexType name="getAsModelsResponse">
  155. <xs:sequence>
  156. <xs:element name="retval" type="tns:modelSetDescriptor"/>
  157. </xs:sequence>
  158. </xs:complexType>
  159. <xs:complexType name="modelSetDescriptor">
  160. <xs:sequence>
  161. <xs:element name="models" type="tns:ArrayOfUUID"/>
  162. <xs:element name="failedSourceObjects" type="tns:ArrayOfUUID"/>
  163. </xs:sequence>
  164. </xs:complexType>
  165. <xs:complexType name="bringToFront">
  166. <xs:sequence/>
  167. </xs:complexType>
  168. <xs:complexType name="bringToFrontResponse">
  169. <xs:sequence>
  170. <xs:element name="retval" type="xs:boolean"/>
  171. </xs:sequence>
  172. </xs:complexType>
  173. <xs:complexType name="setState">
  174. <xs:sequence>
  175. <xs:element name="newState" type="tns:state"/>
  176. </xs:sequence>
  177. </xs:complexType>
  178. <xs:complexType name="setStateResponse">
  179. <xs:sequence>
  180. <xs:element name="retval" type="xs:boolean"/>
  181. </xs:sequence>
  182. </xs:complexType>
  183. <xs:complexType name="ArrayOfUUID">
  184. <xs:sequence>
  185. <xs:element name="uuid" type="tns:uuid" minOccurs="0"
  186. maxOccurs="unbounded"/>
  187. </xs:sequence>
  188. </xs:complexType>
  189. <xs:complexType name="ArrayOfPatient">
  190. <xs:sequence>
  191. <xs:element name="patient" type="tns:patient" minOccurs="0"
  192. maxOccurs="unbounded"/>
  193. </xs:sequence>
  194. </xs:complexType>
  195. <xs:complexType name="ArrayOfStudy">
  196. <xs:sequence>
  197. <xs:element name="study" type="tns:study" minOccurs="0"
  198. maxOccurs="unbounded"/>
  199. </xs:sequence>
  200. </xs:complexType>
  201. <xs:complexType name="ArrayOfSeries">
  202. <xs:sequence>
  203. <xs:element name="series" type="tns:series" minOccurs="0"
  204. maxOccurs="unbounded"/>
  205. </xs:sequence>
  206. </xs:complexType>
  207. <xs:complexType name="ArrayOfObjectLocator">
  208. <xs:sequence>
  209. <xs:element name="objectLocator" type="tns:objectLocator" minOccurs="0"
  210. maxOccurs="unbounded"/>
  211. </xs:sequence>
  212. </xs:complexType>
  213. <xs:complexType name="ArrayOfObjectDescriptor">
  214. <xs:sequence>
  215. <xs:element name="objectDescriptor" type="tns:objectDescriptor"
  216. minOccurs="0" maxOccurs="unbounded"/>
  217. </xs:sequence>
  218. </xs:complexType>
  219. <xs:complexType name="ArrayOfString">
  220. <xs:sequence>
  221. <xs:element name="string" type="xs:string" minOccurs="0"
  222. maxOccurs="unbounded"/>
  223. </xs:sequence>
  224. </xs:complexType>
  225. <xs:complexType name="ArrayOfQueryResult">
  226. <xs:sequence>
  227. <xs:element name="queryResult" type="tns:queryResult" minOccurs="0"
  228. maxOccurs="unbounded"/>
  229. </xs:sequence>
  230. </xs:complexType>
  231. <xs:simpleType name="state">
  232. <xs:restriction base="xs:string">
  233. <xs:enumeration value="EXIT"/>
  234. <xs:enumeration value="CANCELED"/>
  235. <xs:enumeration value="SUSPENDED"/>
  236. <xs:enumeration value="COMPLETED"/>
  237. <xs:enumeration value="INPROGRESS"/>
  238. <xs:enumeration value="IDLE"/>
  239. </xs:restriction>
  240. </xs:simpleType>
  241. </xs:schema>