OpenSCENARIO_v0.9.1.xsd 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <?xml version="1.0"?>
  2. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  3. <xsd:include schemaLocation="OpenSCENARIO_TypeDefs.xsd"/>
  4. <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
  5. <xsd:annotation>
  6. <xsd:documentation>
  7. XML Schema Definition for OpenSCENARIO XML files - Version 0.9.1, (c)2017 by VIRES Simulationstechnologie GmbH, Germany
  8. </xsd:documentation>
  9. </xsd:annotation>
  10. <xsd:element name="OpenSCENARIO">
  11. <xsd:complexType>
  12. <xsd:sequence>
  13. <xsd:element name="FileHeader" type="OSCFileHeader"/>
  14. <xsd:element name="ParameterDeclaration" type="OSCParameterDeclaration" minOccurs="0"/>
  15. <xsd:element name="Catalogs" type="OSCCatalogs"/>
  16. <xsd:element name="RoadNetwork">
  17. <xsd:complexType>
  18. <xsd:sequence>
  19. <xsd:element name="Logics" type="OSCFile"/>
  20. <xsd:element name="SceneGraph" type="OSCFile"/>
  21. <xsd:element name="Signals" minOccurs="0">
  22. <xsd:complexType>
  23. <xsd:sequence>
  24. <xsd:element name="Controller" minOccurs="0" maxOccurs="unbounded">
  25. <xsd:complexType>
  26. <xsd:sequence>
  27. <xsd:element name="Phase" minOccurs="0" maxOccurs="unbounded">
  28. <xsd:complexType>
  29. <xsd:sequence>
  30. <xsd:element name="Signal" minOccurs="0" maxOccurs="unbounded">
  31. <xsd:complexType>
  32. <xsd:attribute name="name" type="xsd:string" use="required"/>
  33. <xsd:attribute name="state" type="xsd:string" use="required"/>
  34. </xsd:complexType>
  35. </xsd:element>
  36. </xsd:sequence>
  37. <xsd:attribute name="type" type="xsd:string" use="required"/>
  38. <xsd:attribute name="duration" type="xsd:double" use="required"/>
  39. </xsd:complexType>
  40. </xsd:element>
  41. </xsd:sequence>
  42. <xsd:attribute name="name" type="xsd:string" use="required"/>
  43. <xsd:attribute name="delay" type="xsd:double" use="optional"/>
  44. <xsd:attribute name="reference" type="xsd:string" use="optional"/>
  45. </xsd:complexType>
  46. </xsd:element>
  47. </xsd:sequence>
  48. <xsd:attribute name="name" type="xsd:string" use="required"/>
  49. </xsd:complexType>
  50. </xsd:element>
  51. </xsd:sequence>
  52. </xsd:complexType>
  53. </xsd:element>
  54. <xsd:element name="Entities">
  55. <xsd:complexType>
  56. <xsd:sequence>
  57. <xsd:element name="Object" minOccurs="0" maxOccurs="unbounded">
  58. <xsd:complexType>
  59. <xsd:sequence>
  60. <xsd:choice>
  61. <xsd:element name="CatalogReference" type="OSCCatalogReference"/>
  62. <xsd:element name="Vehicle" type="OSCVehicle"/>
  63. <xsd:element name="Pedestrian" type="OSCPedestrian"/>
  64. <xsd:element name="MiscObject" type="OSCMiscObject"/>
  65. </xsd:choice>
  66. <xsd:element name="Controller" minOccurs="0">
  67. <xsd:complexType>
  68. <xsd:sequence>
  69. <xsd:choice>
  70. <xsd:element name="CatalogReference" type="OSCCatalogReference"/>
  71. <xsd:element name="Driver" type="OSCDriver"/>
  72. <xsd:element name="PedestrianController" type="OSCPedestrianController"/>
  73. </xsd:choice>
  74. </xsd:sequence>
  75. </xsd:complexType>
  76. </xsd:element>
  77. </xsd:sequence>
  78. <xsd:attribute name="name" type="xsd:string" use="required"/>
  79. </xsd:complexType>
  80. </xsd:element>
  81. <xsd:element name="Selection" minOccurs="0" maxOccurs="unbounded">
  82. <xsd:complexType>
  83. <xsd:sequence>
  84. <xsd:element name="Members">
  85. <xsd:complexType>
  86. <xsd:choice>
  87. <xsd:element name="ByEntity" minOccurs="0" maxOccurs="unbounded">
  88. <xsd:complexType>
  89. <xsd:attribute name="name" type="xsd:string" use="required"/>
  90. </xsd:complexType>
  91. </xsd:element>
  92. <xsd:element name="ByType" minOccurs="0" maxOccurs="unbounded">
  93. <xsd:complexType>
  94. <xsd:attribute name="type" type="OSCObjectType" use="required"/>
  95. </xsd:complexType>
  96. </xsd:element>
  97. </xsd:choice>
  98. </xsd:complexType>
  99. </xsd:element>
  100. </xsd:sequence>
  101. <xsd:attribute name="name" type="xsd:string" use="required"/>
  102. </xsd:complexType>
  103. </xsd:element>
  104. </xsd:sequence>
  105. </xsd:complexType>
  106. </xsd:element>
  107. <xsd:element name="Storyboard">
  108. <xsd:complexType>
  109. <xsd:sequence>
  110. <xsd:element name="Init">
  111. <xsd:complexType>
  112. <xsd:sequence>
  113. <xsd:element name="Actions">
  114. <xsd:complexType>
  115. <xsd:sequence>
  116. <xsd:element name="Global" type="OSCGlobalAction" minOccurs="0" maxOccurs="unbounded"/>
  117. <xsd:element name="UserDefined" type="OSCUserDefinedAction" minOccurs="0" maxOccurs="unbounded"/>
  118. <xsd:element name="Private" minOccurs="0" maxOccurs="unbounded">
  119. <xsd:complexType>
  120. <xsd:sequence>
  121. <xsd:element name="Action" type="OSCPrivateAction" maxOccurs="unbounded"/>
  122. </xsd:sequence>
  123. <xsd:attribute name="object" type="xsd:string" use="required"/>
  124. </xsd:complexType>
  125. </xsd:element>
  126. </xsd:sequence>
  127. </xsd:complexType>
  128. </xsd:element>
  129. </xsd:sequence>
  130. </xsd:complexType>
  131. </xsd:element>
  132. <xsd:element name="Story" maxOccurs="unbounded">
  133. <xsd:complexType>
  134. <xsd:sequence>
  135. <xsd:element name="Act" maxOccurs="unbounded">
  136. <xsd:complexType>
  137. <xsd:sequence>
  138. <xsd:element name="Sequence" maxOccurs="unbounded">
  139. <xsd:complexType>
  140. <xsd:sequence>
  141. <xsd:element name="Actors">
  142. <xsd:complexType>
  143. <xsd:sequence>
  144. <xsd:element name="Entity" minOccurs="0" maxOccurs="unbounded">
  145. <xsd:complexType>
  146. <xsd:attribute name="name" type="xsd:string" use="required"/>
  147. </xsd:complexType>
  148. </xsd:element>
  149. <xsd:element name="ByCondition" minOccurs="0">
  150. <xsd:complexType>
  151. <xsd:attribute name="actor" type="Enum_ByCondition_actor" use="required"/>
  152. </xsd:complexType>
  153. </xsd:element>
  154. </xsd:sequence>
  155. </xsd:complexType>
  156. </xsd:element>
  157. <xsd:element name="CatalogReference" type="OSCCatalogReference" minOccurs="0" maxOccurs="unbounded"/>
  158. <xsd:element name="Maneuver" type="OSCManeuver" minOccurs="0" maxOccurs="unbounded"/>
  159. </xsd:sequence>
  160. <xsd:attribute name="numberOfExecutions" type="xsd:int" use="required"/>
  161. <xsd:attribute name="name" type="xsd:string" use="required"/>
  162. </xsd:complexType>
  163. </xsd:element>
  164. <xsd:element name="Conditions">
  165. <xsd:complexType>
  166. <xsd:sequence>
  167. <xsd:element name="Start">
  168. <xsd:complexType>
  169. <xsd:sequence>
  170. <xsd:element name="ConditionGroup" type="OSCConditionGroup" maxOccurs="unbounded"/>
  171. </xsd:sequence>
  172. </xsd:complexType>
  173. </xsd:element>
  174. <xsd:element name="End" minOccurs="0">
  175. <xsd:complexType>
  176. <xsd:sequence>
  177. <xsd:element name="ConditionGroup" type="OSCConditionGroup" maxOccurs="unbounded"/>
  178. </xsd:sequence>
  179. </xsd:complexType>
  180. </xsd:element>
  181. <xsd:element name="Cancel" minOccurs="0">
  182. <xsd:complexType>
  183. <xsd:sequence>
  184. <xsd:element name="ConditionGroup" type="OSCConditionGroup" maxOccurs="unbounded"/>
  185. </xsd:sequence>
  186. </xsd:complexType>
  187. </xsd:element>
  188. </xsd:sequence>
  189. </xsd:complexType>
  190. </xsd:element>
  191. </xsd:sequence>
  192. <xsd:attribute name="name" type="xsd:string" use="required"/>
  193. </xsd:complexType>
  194. </xsd:element>
  195. </xsd:sequence>
  196. <xsd:attribute name="owner" type="xsd:string" use="optional"/>
  197. <xsd:attribute name="name" type="xsd:string" use="required"/>
  198. </xsd:complexType>
  199. </xsd:element>
  200. <xsd:element name="EndConditions">
  201. <xsd:complexType>
  202. <xsd:sequence>
  203. <xsd:element name="ConditionGroup" type="OSCConditionGroup" minOccurs="0" maxOccurs="unbounded"/>
  204. </xsd:sequence>
  205. </xsd:complexType>
  206. </xsd:element>
  207. </xsd:sequence>
  208. </xsd:complexType>
  209. </xsd:element>
  210. </xsd:sequence>
  211. </xsd:complexType>
  212. </xsd:element>
  213. </xsd:schema>