HostService_schema1.xsd 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315
  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="generateUID" type="tns:generateUID"/>
  7. <xs:element name="generateUIDResponse" type="tns:generateUIDResponse"/>
  8. <xs:element name="getAsModels" type="tns:getAsModels"/>
  9. <xs:element name="getAsModelsResponse" type="tns:getAsModelsResponse"/>
  10. <xs:element name="getAvailableScreen" type="tns:getAvailableScreen"/>
  11. <xs:element name="getAvailableScreenResponse"
  12. type="tns:getAvailableScreenResponse"/>
  13. <xs:element name="getDataAsFile" type="tns:getDataAsFile"/>
  14. <xs:element name="getDataAsFileResponse" type="tns:getDataAsFileResponse"/>
  15. <xs:element name="getDataAsSpecificTypeFile"
  16. type="tns:getDataAsSpecificTypeFile"/>
  17. <xs:element name="getDataAsSpecificTypeFileResponse"
  18. type="tns:getDataAsSpecificTypeFileResponse"/>
  19. <xs:element name="getOutputDir" type="tns:getOutputDir"/>
  20. <xs:element name="getOutputDirResponse" type="tns:getOutputDirResponse"/>
  21. <xs:element name="getTmpDir" type="tns:getTmpDir"/>
  22. <xs:element name="getTmpDirResponse" type="tns:getTmpDirResponse"/>
  23. <xs:element name="notifyDataAvailable" type="tns:notifyDataAvailable"/>
  24. <xs:element name="notifyDataAvailableResponse"
  25. type="tns:notifyDataAvailableResponse"/>
  26. <xs:element name="notifyStateChanged" type="tns:notifyStateChanged"/>
  27. <xs:element name="notifyStateChangedResponse"
  28. type="tns:notifyStateChangedResponse"/>
  29. <xs:element name="notifyStatus" type="tns:notifyStatus"/>
  30. <xs:element name="notifyStatusResponse" type="tns:notifyStatusResponse"/>
  31. <xs:element name="queryModel" type="tns:queryModel"/>
  32. <xs:element name="queryModelResponse" type="tns:queryModelResponse"/>
  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="getAvailableScreen">
  69. <xs:sequence>
  70. <xs:element name="appPreferredScreen" type="tns:rectangle"/>
  71. </xs:sequence>
  72. </xs:complexType>
  73. <xs:complexType name="rectangle">
  74. <xs:sequence>
  75. <xs:element name="refPointX" type="xs:int"/>
  76. <xs:element name="refPointY" type="xs:int"/>
  77. <xs:element name="width" type="xs:int"/>
  78. <xs:element name="height" type="xs:int"/>
  79. </xs:sequence>
  80. </xs:complexType>
  81. <xs:complexType name="getAvailableScreenResponse">
  82. <xs:sequence>
  83. <xs:element name="retval" type="tns:rectangle"/>
  84. </xs:sequence>
  85. </xs:complexType>
  86. <xs:complexType name="notifyDataAvailable">
  87. <xs:sequence>
  88. <xs:element name="availableData" type="tns:availableData"/>
  89. <xs:element name="lastData" type="xs:boolean"/>
  90. </xs:sequence>
  91. </xs:complexType>
  92. <xs:complexType name="availableData">
  93. <xs:sequence>
  94. <xs:element name="patients" type="tns:ArrayOfPatient"/>
  95. <xs:element name="objectDescriptors"
  96. type="tns:ArrayOfObjectDescriptor"/>
  97. </xs:sequence>
  98. </xs:complexType>
  99. <xs:complexType name="patient">
  100. <xs:sequence>
  101. <xs:element name="name" type="xs:string"/>
  102. <xs:element name="objectDescriptors"
  103. type="tns:ArrayOfObjectDescriptor"/>
  104. <xs:element name="studies" type="tns:ArrayOfStudy"/>
  105. </xs:sequence>
  106. </xs:complexType>
  107. <xs:complexType name="study">
  108. <xs:sequence>
  109. <xs:element name="studyUID" type="xs:string"/>
  110. <xs:element name="objectDescriptors"
  111. type="tns:ArrayOfObjectDescriptor"/>
  112. <xs:element name="series" type="tns:ArrayOfSeries"/>
  113. </xs:sequence>
  114. </xs:complexType>
  115. <xs:complexType name="series">
  116. <xs:sequence>
  117. <xs:element name="seriesUID" type="xs:string"/>
  118. <xs:element name="objectDescriptors"
  119. type="tns:ArrayOfObjectDescriptor"/>
  120. </xs:sequence>
  121. </xs:complexType>
  122. <xs:complexType name="modality">
  123. <xs:sequence>
  124. <xs:element name="modality" type="xs:string"/>
  125. </xs:sequence>
  126. </xs:complexType>
  127. <xs:complexType name="objectDescriptor">
  128. <xs:sequence>
  129. <xs:element name="uuid" type="tns:uuid"/>
  130. <xs:element name="mimeType" type="xs:string"/>
  131. <xs:element name="classUID" type="tns:uid"/>
  132. <xs:element name="transferSyntaxUID" type="tns:uid"/>
  133. <xs:element name="modality" type="tns:modality"/>
  134. </xs:sequence>
  135. </xs:complexType>
  136. <xs:complexType name="uid">
  137. <xs:sequence>
  138. <xs:element name="uid" type="xs:string"/>
  139. </xs:sequence>
  140. </xs:complexType>
  141. <xs:complexType name="notifyDataAvailableResponse">
  142. <xs:sequence>
  143. <xs:element name="retval" type="xs:boolean"/>
  144. </xs:sequence>
  145. </xs:complexType>
  146. <xs:complexType name="queryModel">
  147. <xs:sequence>
  148. <xs:element name="objUUIDs" type="tns:ArrayOfUUID"/>
  149. <xs:element name="modelXpaths" type="tns:ArrayOfString"/>
  150. <xs:element name="includeBulkDataPointers" type="xs:boolean"/>
  151. </xs:sequence>
  152. </xs:complexType>
  153. <xs:complexType name="queryModelResponse">
  154. <xs:sequence>
  155. <xs:element name="queryResults" type="tns:ArrayOfQueryResult"/>
  156. </xs:sequence>
  157. </xs:complexType>
  158. <xs:complexType name="queryResult">
  159. <xs:sequence>
  160. <xs:element name="model" type="tns:uuid"/>
  161. <xs:element name="xpath" type="xs:string"/>
  162. <xs:element name="results" type="tns:ArrayOfString"/>
  163. </xs:sequence>
  164. </xs:complexType>
  165. <xs:complexType name="getAsModels">
  166. <xs:sequence>
  167. <xs:element name="uuids" type="tns:ArrayOfUUID"/>
  168. <xs:element name="classUID" type="tns:uid"/>
  169. <xs:element name="transferSyntaxUID" type="tns:uid"/>
  170. </xs:sequence>
  171. </xs:complexType>
  172. <xs:complexType name="getAsModelsResponse">
  173. <xs:sequence>
  174. <xs:element name="retval" type="tns:modelSetDescriptor"/>
  175. </xs:sequence>
  176. </xs:complexType>
  177. <xs:complexType name="modelSetDescriptor">
  178. <xs:sequence>
  179. <xs:element name="models" type="tns:ArrayOfUUID"/>
  180. <xs:element name="failedSourceObjects" type="tns:ArrayOfUUID"/>
  181. </xs:sequence>
  182. </xs:complexType>
  183. <xs:complexType name="notifyStatus">
  184. <xs:sequence>
  185. <xs:element name="newStatus" type="tns:status"/>
  186. </xs:sequence>
  187. </xs:complexType>
  188. <xs:complexType name="status">
  189. <xs:sequence>
  190. <xs:element name="codeValue" type="xs:int"/>
  191. <xs:element name="codingSchemeDesignator" type="xs:string"/>
  192. <xs:element name="message" type="xs:string"/>
  193. <xs:element name="statusType" type="tns:statusType"/>
  194. </xs:sequence>
  195. </xs:complexType>
  196. <xs:complexType name="notifyStatusResponse">
  197. <xs:sequence/>
  198. </xs:complexType>
  199. <xs:complexType name="notifyStateChanged">
  200. <xs:sequence>
  201. <xs:element name="newState" type="tns:state"/>
  202. </xs:sequence>
  203. </xs:complexType>
  204. <xs:complexType name="notifyStateChangedResponse">
  205. <xs:sequence/>
  206. </xs:complexType>
  207. <xs:complexType name="getTmpDir">
  208. <xs:sequence/>
  209. </xs:complexType>
  210. <xs:complexType name="getTmpDirResponse">
  211. <xs:sequence>
  212. <xs:element name="retval" type="xs:string"/>
  213. </xs:sequence>
  214. </xs:complexType>
  215. <xs:complexType name="generateUID">
  216. <xs:sequence/>
  217. </xs:complexType>
  218. <xs:complexType name="generateUIDResponse">
  219. <xs:sequence>
  220. <xs:element name="retval" type="tns:uid"/>
  221. </xs:sequence>
  222. </xs:complexType>
  223. <xs:complexType name="getOutputDir">
  224. <xs:sequence/>
  225. </xs:complexType>
  226. <xs:complexType name="getOutputDirResponse">
  227. <xs:sequence>
  228. <xs:element name="retval" type="xs:string"/>
  229. </xs:sequence>
  230. </xs:complexType>
  231. <xs:complexType name="ArrayOfUUID">
  232. <xs:sequence>
  233. <xs:element name="uuid" type="tns:uuid" minOccurs="0"
  234. maxOccurs="unbounded"/>
  235. </xs:sequence>
  236. </xs:complexType>
  237. <xs:complexType name="ArrayOfPatient">
  238. <xs:sequence>
  239. <xs:element name="patient" type="tns:patient" minOccurs="0"
  240. maxOccurs="unbounded"/>
  241. </xs:sequence>
  242. </xs:complexType>
  243. <xs:complexType name="ArrayOfStudy">
  244. <xs:sequence>
  245. <xs:element name="study" type="tns:study" minOccurs="0"
  246. maxOccurs="unbounded"/>
  247. </xs:sequence>
  248. </xs:complexType>
  249. <xs:complexType name="ArrayOfSeries">
  250. <xs:sequence>
  251. <xs:element name="series" type="tns:series" minOccurs="0"
  252. maxOccurs="unbounded"/>
  253. </xs:sequence>
  254. </xs:complexType>
  255. <xs:complexType name="ArrayOfObjectLocator">
  256. <xs:sequence>
  257. <xs:element name="objectLocator" type="tns:objectLocator" minOccurs="0"
  258. maxOccurs="unbounded"/>
  259. </xs:sequence>
  260. </xs:complexType>
  261. <xs:complexType name="ArrayOfObjectDescriptor">
  262. <xs:sequence>
  263. <xs:element name="objectDescriptor" type="tns:objectDescriptor"
  264. minOccurs="0" maxOccurs="unbounded"/>
  265. </xs:sequence>
  266. </xs:complexType>
  267. <xs:complexType name="ArrayOfString">
  268. <xs:sequence>
  269. <xs:element name="string" type="xs:string" minOccurs="0"
  270. maxOccurs="unbounded"/>
  271. </xs:sequence>
  272. </xs:complexType>
  273. <xs:complexType name="ArrayOfQueryResult">
  274. <xs:sequence>
  275. <xs:element name="queryResult" type="tns:queryResult" minOccurs="0"
  276. maxOccurs="unbounded"/>
  277. </xs:sequence>
  278. </xs:complexType>
  279. <xs:simpleType name="statusType">
  280. <xs:restriction base="xs:string">
  281. <xs:enumeration value="FATALERROR"/>
  282. <xs:enumeration value="WARNING"/>
  283. <xs:enumeration value="ERROR"/>
  284. <xs:enumeration value="INFORMATION"/>
  285. </xs:restriction>
  286. </xs:simpleType>
  287. <xs:simpleType name="state">
  288. <xs:restriction base="xs:string">
  289. <xs:enumeration value="EXIT"/>
  290. <xs:enumeration value="CANCELED"/>
  291. <xs:enumeration value="SUSPENDED"/>
  292. <xs:enumeration value="COMPLETED"/>
  293. <xs:enumeration value="INPROGRESS"/>
  294. <xs:enumeration value="IDLE"/>
  295. </xs:restriction>
  296. </xs:simpleType>
  297. </xs:schema>