OpenSCENARIO.xsd 61 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  3. <!--
  4. ASAM OpenSCENARIO V1.0.0
  5. © by ASAM e.V., 2020
  6. Description of dynamic content in driving simulations
  7. Any use is limited to the scope described in the ASAM license terms.
  8. This file is distributable in accordance with the ASAM license terms.
  9. See www.asam.net/license.html for further details.
  10. -->
  11. <xsd:element name="OpenSCENARIO" type="OpenScenario"/>
  12. <xsd:simpleType name="parameter">
  13. <xsd:restriction base="xsd:string">
  14. <xsd:pattern value="[$][A-Za-z_][A-Za-z0-9_]*"/>
  15. </xsd:restriction>
  16. </xsd:simpleType>
  17. <xsd:simpleType name="Boolean">
  18. <xsd:union memberTypes="parameter xsd:boolean"/>
  19. </xsd:simpleType>
  20. <xsd:simpleType name="DateTime">
  21. <xsd:union memberTypes="parameter xsd:dateTime"/>
  22. </xsd:simpleType>
  23. <xsd:simpleType name="Double">
  24. <xsd:union memberTypes="parameter xsd:double"/>
  25. </xsd:simpleType>
  26. <xsd:simpleType name="Int">
  27. <xsd:union memberTypes="parameter xsd:int"/>
  28. </xsd:simpleType>
  29. <xsd:simpleType name="String">
  30. <xsd:union memberTypes="parameter xsd:string"/>
  31. </xsd:simpleType>
  32. <xsd:simpleType name="UnsignedInt">
  33. <xsd:union memberTypes="parameter xsd:unsignedInt"/>
  34. </xsd:simpleType>
  35. <xsd:simpleType name="UnsignedShort">
  36. <xsd:union memberTypes="parameter xsd:unsignedShort"/>
  37. </xsd:simpleType>
  38. <xsd:simpleType name="CloudState">
  39. <xsd:union>
  40. <xsd:simpleType>
  41. <xsd:restriction base="xsd:string">
  42. <xsd:enumeration value="cloudy"/>
  43. <xsd:enumeration value="free"/>
  44. <xsd:enumeration value="overcast"/>
  45. <xsd:enumeration value="rainy"/>
  46. <xsd:enumeration value="skyOff"/>
  47. </xsd:restriction>
  48. </xsd:simpleType>
  49. <xsd:simpleType>
  50. <xsd:restriction base="parameter"/>
  51. </xsd:simpleType>
  52. </xsd:union>
  53. </xsd:simpleType>
  54. <xsd:simpleType name="ConditionEdge">
  55. <xsd:union>
  56. <xsd:simpleType>
  57. <xsd:restriction base="xsd:string">
  58. <xsd:enumeration value="falling"/>
  59. <xsd:enumeration value="none"/>
  60. <xsd:enumeration value="rising"/>
  61. <xsd:enumeration value="risingOrFalling"/>
  62. </xsd:restriction>
  63. </xsd:simpleType>
  64. <xsd:simpleType>
  65. <xsd:restriction base="parameter"/>
  66. </xsd:simpleType>
  67. </xsd:union>
  68. </xsd:simpleType>
  69. <xsd:simpleType name="DynamicsDimension">
  70. <xsd:union>
  71. <xsd:simpleType>
  72. <xsd:restriction base="xsd:string">
  73. <xsd:enumeration value="distance"/>
  74. <xsd:enumeration value="rate"/>
  75. <xsd:enumeration value="time"/>
  76. </xsd:restriction>
  77. </xsd:simpleType>
  78. <xsd:simpleType>
  79. <xsd:restriction base="parameter"/>
  80. </xsd:simpleType>
  81. </xsd:union>
  82. </xsd:simpleType>
  83. <xsd:simpleType name="DynamicsShape">
  84. <xsd:union>
  85. <xsd:simpleType>
  86. <xsd:restriction base="xsd:string">
  87. <xsd:enumeration value="cubic"/>
  88. <xsd:enumeration value="linear"/>
  89. <xsd:enumeration value="sinusoidal"/>
  90. <xsd:enumeration value="step"/>
  91. </xsd:restriction>
  92. </xsd:simpleType>
  93. <xsd:simpleType>
  94. <xsd:restriction base="parameter"/>
  95. </xsd:simpleType>
  96. </xsd:union>
  97. </xsd:simpleType>
  98. <xsd:simpleType name="FollowingMode">
  99. <xsd:union>
  100. <xsd:simpleType>
  101. <xsd:restriction base="xsd:string">
  102. <xsd:enumeration value="follow"/>
  103. <xsd:enumeration value="position"/>
  104. </xsd:restriction>
  105. </xsd:simpleType>
  106. <xsd:simpleType>
  107. <xsd:restriction base="parameter"/>
  108. </xsd:simpleType>
  109. </xsd:union>
  110. </xsd:simpleType>
  111. <xsd:simpleType name="MiscObjectCategory">
  112. <xsd:union>
  113. <xsd:simpleType>
  114. <xsd:restriction base="xsd:string">
  115. <xsd:enumeration value="barrier"/>
  116. <xsd:enumeration value="building"/>
  117. <xsd:enumeration value="crosswalk"/>
  118. <xsd:enumeration value="gantry"/>
  119. <xsd:enumeration value="none"/>
  120. <xsd:enumeration value="obstacle"/>
  121. <xsd:enumeration value="parkingSpace"/>
  122. <xsd:enumeration value="patch"/>
  123. <xsd:enumeration value="pole"/>
  124. <xsd:enumeration value="railing"/>
  125. <xsd:enumeration value="roadMark"/>
  126. <xsd:enumeration value="soundBarrier"/>
  127. <xsd:enumeration value="streetLamp"/>
  128. <xsd:enumeration value="trafficIsland"/>
  129. <xsd:enumeration value="tree"/>
  130. <xsd:enumeration value="vegetation"/>
  131. <xsd:enumeration value="wind"/>
  132. </xsd:restriction>
  133. </xsd:simpleType>
  134. <xsd:simpleType>
  135. <xsd:restriction base="parameter"/>
  136. </xsd:simpleType>
  137. </xsd:union>
  138. </xsd:simpleType>
  139. <xsd:simpleType name="ObjectType">
  140. <xsd:union>
  141. <xsd:simpleType>
  142. <xsd:restriction base="xsd:string">
  143. <xsd:enumeration value="miscellaneous"/>
  144. <xsd:enumeration value="pedestrian"/>
  145. <xsd:enumeration value="vehicle"/>
  146. </xsd:restriction>
  147. </xsd:simpleType>
  148. <xsd:simpleType>
  149. <xsd:restriction base="parameter"/>
  150. </xsd:simpleType>
  151. </xsd:union>
  152. </xsd:simpleType>
  153. <xsd:simpleType name="ParameterType">
  154. <xsd:union>
  155. <xsd:simpleType>
  156. <xsd:restriction base="xsd:string">
  157. <xsd:enumeration value="boolean"/>
  158. <xsd:enumeration value="dateTime"/>
  159. <xsd:enumeration value="double"/>
  160. <xsd:enumeration value="integer"/>
  161. <xsd:enumeration value="string"/>
  162. <xsd:enumeration value="unsignedInt"/>
  163. <xsd:enumeration value="unsignedShort"/>
  164. </xsd:restriction>
  165. </xsd:simpleType>
  166. <xsd:simpleType>
  167. <xsd:restriction base="parameter"/>
  168. </xsd:simpleType>
  169. </xsd:union>
  170. </xsd:simpleType>
  171. <xsd:simpleType name="PedestrianCategory">
  172. <xsd:union>
  173. <xsd:simpleType>
  174. <xsd:restriction base="xsd:string">
  175. <xsd:enumeration value="animal"/>
  176. <xsd:enumeration value="pedestrian"/>
  177. <xsd:enumeration value="wheelchair"/>
  178. </xsd:restriction>
  179. </xsd:simpleType>
  180. <xsd:simpleType>
  181. <xsd:restriction base="parameter"/>
  182. </xsd:simpleType>
  183. </xsd:union>
  184. </xsd:simpleType>
  185. <xsd:simpleType name="PrecipitationType">
  186. <xsd:union>
  187. <xsd:simpleType>
  188. <xsd:restriction base="xsd:string">
  189. <xsd:enumeration value="dry"/>
  190. <xsd:enumeration value="rain"/>
  191. <xsd:enumeration value="snow"/>
  192. </xsd:restriction>
  193. </xsd:simpleType>
  194. <xsd:simpleType>
  195. <xsd:restriction base="parameter"/>
  196. </xsd:simpleType>
  197. </xsd:union>
  198. </xsd:simpleType>
  199. <xsd:simpleType name="Priority">
  200. <xsd:union>
  201. <xsd:simpleType>
  202. <xsd:restriction base="xsd:string">
  203. <xsd:enumeration value="overwrite"/>
  204. <xsd:enumeration value="parallel"/>
  205. <xsd:enumeration value="skip"/>
  206. </xsd:restriction>
  207. </xsd:simpleType>
  208. <xsd:simpleType>
  209. <xsd:restriction base="parameter"/>
  210. </xsd:simpleType>
  211. </xsd:union>
  212. </xsd:simpleType>
  213. <xsd:simpleType name="ReferenceContext">
  214. <xsd:union>
  215. <xsd:simpleType>
  216. <xsd:restriction base="xsd:string">
  217. <xsd:enumeration value="absolute"/>
  218. <xsd:enumeration value="relative"/>
  219. </xsd:restriction>
  220. </xsd:simpleType>
  221. <xsd:simpleType>
  222. <xsd:restriction base="parameter"/>
  223. </xsd:simpleType>
  224. </xsd:union>
  225. </xsd:simpleType>
  226. <xsd:simpleType name="RelativeDistanceType">
  227. <xsd:union>
  228. <xsd:simpleType>
  229. <xsd:restriction base="xsd:string">
  230. <xsd:enumeration value="cartesianDistance"/>
  231. <xsd:enumeration value="lateral"/>
  232. <xsd:enumeration value="longitudinal"/>
  233. </xsd:restriction>
  234. </xsd:simpleType>
  235. <xsd:simpleType>
  236. <xsd:restriction base="parameter"/>
  237. </xsd:simpleType>
  238. </xsd:union>
  239. </xsd:simpleType>
  240. <xsd:simpleType name="RouteStrategy">
  241. <xsd:union>
  242. <xsd:simpleType>
  243. <xsd:restriction base="xsd:string">
  244. <xsd:enumeration value="fastest"/>
  245. <xsd:enumeration value="leastIntersections"/>
  246. <xsd:enumeration value="random"/>
  247. <xsd:enumeration value="shortest"/>
  248. </xsd:restriction>
  249. </xsd:simpleType>
  250. <xsd:simpleType>
  251. <xsd:restriction base="parameter"/>
  252. </xsd:simpleType>
  253. </xsd:union>
  254. </xsd:simpleType>
  255. <xsd:simpleType name="Rule">
  256. <xsd:union>
  257. <xsd:simpleType>
  258. <xsd:restriction base="xsd:string">
  259. <xsd:enumeration value="equalTo"/>
  260. <xsd:enumeration value="greaterThan"/>
  261. <xsd:enumeration value="lessThan"/>
  262. </xsd:restriction>
  263. </xsd:simpleType>
  264. <xsd:simpleType>
  265. <xsd:restriction base="parameter"/>
  266. </xsd:simpleType>
  267. </xsd:union>
  268. </xsd:simpleType>
  269. <xsd:simpleType name="SpeedTargetValueType">
  270. <xsd:union>
  271. <xsd:simpleType>
  272. <xsd:restriction base="xsd:string">
  273. <xsd:enumeration value="delta"/>
  274. <xsd:enumeration value="factor"/>
  275. </xsd:restriction>
  276. </xsd:simpleType>
  277. <xsd:simpleType>
  278. <xsd:restriction base="parameter"/>
  279. </xsd:simpleType>
  280. </xsd:union>
  281. </xsd:simpleType>
  282. <xsd:simpleType name="StoryboardElementState">
  283. <xsd:union>
  284. <xsd:simpleType>
  285. <xsd:restriction base="xsd:string">
  286. <xsd:enumeration value="completeState"/>
  287. <xsd:enumeration value="endTransition"/>
  288. <xsd:enumeration value="runningState"/>
  289. <xsd:enumeration value="skipTransition"/>
  290. <xsd:enumeration value="standbyState"/>
  291. <xsd:enumeration value="startTransition"/>
  292. <xsd:enumeration value="stopTransition"/>
  293. </xsd:restriction>
  294. </xsd:simpleType>
  295. <xsd:simpleType>
  296. <xsd:restriction base="parameter"/>
  297. </xsd:simpleType>
  298. </xsd:union>
  299. </xsd:simpleType>
  300. <xsd:simpleType name="StoryboardElementType">
  301. <xsd:union>
  302. <xsd:simpleType>
  303. <xsd:restriction base="xsd:string">
  304. <xsd:enumeration value="act"/>
  305. <xsd:enumeration value="action"/>
  306. <xsd:enumeration value="event"/>
  307. <xsd:enumeration value="maneuver"/>
  308. <xsd:enumeration value="maneuverGroup"/>
  309. <xsd:enumeration value="story"/>
  310. </xsd:restriction>
  311. </xsd:simpleType>
  312. <xsd:simpleType>
  313. <xsd:restriction base="parameter"/>
  314. </xsd:simpleType>
  315. </xsd:union>
  316. </xsd:simpleType>
  317. <xsd:simpleType name="TriggeringEntitiesRule">
  318. <xsd:union>
  319. <xsd:simpleType>
  320. <xsd:restriction base="xsd:string">
  321. <xsd:enumeration value="all"/>
  322. <xsd:enumeration value="any"/>
  323. </xsd:restriction>
  324. </xsd:simpleType>
  325. <xsd:simpleType>
  326. <xsd:restriction base="parameter"/>
  327. </xsd:simpleType>
  328. </xsd:union>
  329. </xsd:simpleType>
  330. <xsd:simpleType name="VehicleCategory">
  331. <xsd:union>
  332. <xsd:simpleType>
  333. <xsd:restriction base="xsd:string">
  334. <xsd:enumeration value="bicycle"/>
  335. <xsd:enumeration value="bus"/>
  336. <xsd:enumeration value="car"/>
  337. <xsd:enumeration value="motorbike"/>
  338. <xsd:enumeration value="semitrailer"/>
  339. <xsd:enumeration value="trailer"/>
  340. <xsd:enumeration value="train"/>
  341. <xsd:enumeration value="tram"/>
  342. <xsd:enumeration value="truck"/>
  343. <xsd:enumeration value="van"/>
  344. </xsd:restriction>
  345. </xsd:simpleType>
  346. <xsd:simpleType>
  347. <xsd:restriction base="parameter"/>
  348. </xsd:simpleType>
  349. </xsd:union>
  350. </xsd:simpleType>
  351. <xsd:complexType name="AbsoluteSpeed">
  352. <xsd:attribute name="value" type="Double" use="required"/>
  353. </xsd:complexType>
  354. <xsd:complexType name="AbsoluteTargetLane">
  355. <xsd:attribute name="value" type="String" use="required"/>
  356. </xsd:complexType>
  357. <xsd:complexType name="AbsoluteTargetLaneOffset">
  358. <xsd:attribute name="value" type="Double" use="required"/>
  359. </xsd:complexType>
  360. <xsd:complexType name="AbsoluteTargetSpeed">
  361. <xsd:attribute name="value" type="Double" use="required"/>
  362. </xsd:complexType>
  363. <xsd:complexType name="AccelerationCondition">
  364. <xsd:attribute name="rule" type="Rule" use="required"/>
  365. <xsd:attribute name="value" type="Double" use="required"/>
  366. </xsd:complexType>
  367. <xsd:complexType name="AcquirePositionAction">
  368. <xsd:all>
  369. <xsd:element name="Position" type="Position"/>
  370. </xsd:all>
  371. </xsd:complexType>
  372. <xsd:complexType name="Act">
  373. <xsd:sequence>
  374. <xsd:element name="ManeuverGroup" type="ManeuverGroup" maxOccurs="unbounded"/>
  375. <xsd:element name="StartTrigger" type="Trigger"/>
  376. <xsd:element name="StopTrigger" type="Trigger" minOccurs="0"/>
  377. </xsd:sequence>
  378. <xsd:attribute name="name" type="String" use="required"/>
  379. </xsd:complexType>
  380. <xsd:complexType name="Action">
  381. <xsd:choice>
  382. <xsd:element name="GlobalAction" type="GlobalAction" minOccurs="0"/>
  383. <xsd:element name="UserDefinedAction" type="UserDefinedAction" minOccurs="0"/>
  384. <xsd:element name="PrivateAction" type="PrivateAction" minOccurs="0"/>
  385. </xsd:choice>
  386. <xsd:attribute name="name" type="String" use="required"/>
  387. </xsd:complexType>
  388. <xsd:complexType name="ActivateControllerAction">
  389. <xsd:attribute name="lateral" type="Boolean"/>
  390. <xsd:attribute name="longitudinal" type="Boolean"/>
  391. </xsd:complexType>
  392. <xsd:complexType name="Actors">
  393. <xsd:sequence>
  394. <xsd:element name="EntityRef" type="EntityRef" minOccurs="0" maxOccurs="unbounded"/>
  395. </xsd:sequence>
  396. <xsd:attribute name="selectTriggeringEntities" type="Boolean" use="required"/>
  397. </xsd:complexType>
  398. <xsd:complexType name="AddEntityAction">
  399. <xsd:all>
  400. <xsd:element name="Position" type="Position"/>
  401. </xsd:all>
  402. </xsd:complexType>
  403. <xsd:complexType name="AssignControllerAction">
  404. <xsd:choice>
  405. <xsd:element name="Controller" type="Controller" minOccurs="0"/>
  406. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  407. </xsd:choice>
  408. </xsd:complexType>
  409. <xsd:complexType name="AssignRouteAction">
  410. <xsd:choice>
  411. <xsd:element name="Route" type="Route" minOccurs="0"/>
  412. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  413. </xsd:choice>
  414. </xsd:complexType>
  415. <xsd:complexType name="Axle">
  416. <xsd:attribute name="maxSteering" type="Double" use="required"/>
  417. <xsd:attribute name="positionX" type="Double" use="required"/>
  418. <xsd:attribute name="positionZ" type="Double" use="required"/>
  419. <xsd:attribute name="trackWidth" type="Double" use="required"/>
  420. <xsd:attribute name="wheelDiameter" type="Double" use="required"/>
  421. </xsd:complexType>
  422. <xsd:complexType name="Axles">
  423. <xsd:sequence>
  424. <xsd:element name="FrontAxle" type="Axle"/>
  425. <xsd:element name="RearAxle" type="Axle"/>
  426. <xsd:element name="AdditionalAxle" type="Axle" minOccurs="0" maxOccurs="unbounded"/>
  427. </xsd:sequence>
  428. </xsd:complexType>
  429. <xsd:complexType name="BoundingBox">
  430. <xsd:all>
  431. <xsd:element name="Center" type="Center"/>
  432. <xsd:element name="Dimensions" type="Dimensions"/>
  433. </xsd:all>
  434. </xsd:complexType>
  435. <xsd:complexType name="ByEntityCondition">
  436. <xsd:all>
  437. <xsd:element name="TriggeringEntities" type="TriggeringEntities"/>
  438. <xsd:element name="EntityCondition" type="EntityCondition"/>
  439. </xsd:all>
  440. </xsd:complexType>
  441. <xsd:complexType name="ByObjectType">
  442. <xsd:attribute name="type" type="ObjectType" use="required"/>
  443. </xsd:complexType>
  444. <xsd:complexType name="ByType">
  445. <xsd:attribute name="objectType" type="ObjectType" use="required"/>
  446. </xsd:complexType>
  447. <xsd:complexType name="ByValueCondition">
  448. <xsd:choice>
  449. <xsd:element name="ParameterCondition" type="ParameterCondition" minOccurs="0"/>
  450. <xsd:element name="TimeOfDayCondition" type="TimeOfDayCondition" minOccurs="0"/>
  451. <xsd:element name="SimulationTimeCondition" type="SimulationTimeCondition" minOccurs="0"/>
  452. <xsd:element name="StoryboardElementStateCondition" type="StoryboardElementStateCondition" minOccurs="0"/>
  453. <xsd:element name="UserDefinedValueCondition" type="UserDefinedValueCondition" minOccurs="0"/>
  454. <xsd:element name="TrafficSignalCondition" type="TrafficSignalCondition" minOccurs="0"/>
  455. <xsd:element name="TrafficSignalControllerCondition" type="TrafficSignalControllerCondition" minOccurs="0"/>
  456. </xsd:choice>
  457. </xsd:complexType>
  458. <xsd:complexType name="Catalog">
  459. <xsd:sequence>
  460. <xsd:element name="Vehicle" type="Vehicle" minOccurs="0" maxOccurs="unbounded"/>
  461. <xsd:element name="Controller" type="Controller" minOccurs="0" maxOccurs="unbounded"/>
  462. <xsd:element name="Pedestrian" type="Pedestrian" minOccurs="0" maxOccurs="unbounded"/>
  463. <xsd:element name="MiscObject" type="MiscObject" minOccurs="0" maxOccurs="unbounded"/>
  464. <xsd:element name="Environment" type="Environment" minOccurs="0" maxOccurs="unbounded"/>
  465. <xsd:element name="Maneuver" type="Maneuver" minOccurs="0" maxOccurs="unbounded"/>
  466. <xsd:element name="Trajectory" type="Trajectory" minOccurs="0" maxOccurs="unbounded"/>
  467. <xsd:element name="Route" type="Route" minOccurs="0" maxOccurs="unbounded"/>
  468. </xsd:sequence>
  469. <xsd:attribute name="name" type="String"/>
  470. </xsd:complexType>
  471. <xsd:group name="CatalogDefinition">
  472. <xsd:sequence>
  473. <xsd:element name="Catalog" type="Catalog"/>
  474. </xsd:sequence>
  475. </xsd:group>
  476. <xsd:complexType name="CatalogLocations">
  477. <xsd:all>
  478. <xsd:element name="VehicleCatalog" type="VehicleCatalogLocation" minOccurs="0"/>
  479. <xsd:element name="ControllerCatalog" type="ControllerCatalogLocation" minOccurs="0"/>
  480. <xsd:element name="PedestrianCatalog" type="PedestrianCatalogLocation" minOccurs="0"/>
  481. <xsd:element name="MiscObjectCatalog" type="MiscObjectCatalogLocation" minOccurs="0"/>
  482. <xsd:element name="EnvironmentCatalog" type="EnvironmentCatalogLocation" minOccurs="0"/>
  483. <xsd:element name="ManeuverCatalog" type="ManeuverCatalogLocation" minOccurs="0"/>
  484. <xsd:element name="TrajectoryCatalog" type="TrajectoryCatalogLocation" minOccurs="0"/>
  485. <xsd:element name="RouteCatalog" type="RouteCatalogLocation" minOccurs="0"/>
  486. </xsd:all>
  487. </xsd:complexType>
  488. <xsd:complexType name="CatalogReference">
  489. <xsd:sequence>
  490. <xsd:element name="ParameterAssignments" type="ParameterAssignments" minOccurs="0"/>
  491. </xsd:sequence>
  492. <xsd:attribute name="catalogName" type="String" use="required"/>
  493. <xsd:attribute name="entryName" type="String" use="required"/>
  494. </xsd:complexType>
  495. <xsd:complexType name="Center">
  496. <xsd:attribute name="x" type="Double" use="required"/>
  497. <xsd:attribute name="y" type="Double" use="required"/>
  498. <xsd:attribute name="z" type="Double" use="required"/>
  499. </xsd:complexType>
  500. <xsd:complexType name="CentralSwarmObject">
  501. <xsd:attribute name="entityRef" type="String" use="required"/>
  502. </xsd:complexType>
  503. <xsd:complexType name="Clothoid">
  504. <xsd:sequence>
  505. <xsd:element name="Position" type="Position"/>
  506. </xsd:sequence>
  507. <xsd:attribute name="curvature" type="Double" use="required"/>
  508. <xsd:attribute name="curvatureDot" type="Double" use="required"/>
  509. <xsd:attribute name="length" type="Double" use="required"/>
  510. <xsd:attribute name="startTime" type="Double"/>
  511. <xsd:attribute name="stopTime" type="Double"/>
  512. </xsd:complexType>
  513. <xsd:complexType name="CollisionCondition">
  514. <xsd:choice>
  515. <xsd:element name="EntityRef" type="EntityRef" minOccurs="0"/>
  516. <xsd:element name="ByType" type="ByObjectType" minOccurs="0"/>
  517. </xsd:choice>
  518. </xsd:complexType>
  519. <xsd:complexType name="Condition">
  520. <xsd:choice>
  521. <xsd:element name="ByEntityCondition" type="ByEntityCondition" minOccurs="0"/>
  522. <xsd:element name="ByValueCondition" type="ByValueCondition" minOccurs="0"/>
  523. </xsd:choice>
  524. <xsd:attribute name="conditionEdge" type="ConditionEdge" use="required"/>
  525. <xsd:attribute name="delay" type="Double" use="required"/>
  526. <xsd:attribute name="name" type="String" use="required"/>
  527. </xsd:complexType>
  528. <xsd:complexType name="ConditionGroup">
  529. <xsd:sequence>
  530. <xsd:element name="Condition" type="Condition" maxOccurs="unbounded"/>
  531. </xsd:sequence>
  532. </xsd:complexType>
  533. <xsd:complexType name="Controller">
  534. <xsd:all>
  535. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  536. <xsd:element name="Properties" type="Properties"/>
  537. </xsd:all>
  538. <xsd:attribute name="name" type="String" use="required"/>
  539. </xsd:complexType>
  540. <xsd:complexType name="ControllerAction">
  541. <xsd:all>
  542. <xsd:element name="AssignControllerAction" type="AssignControllerAction"/>
  543. <xsd:element name="OverrideControllerValueAction" type="OverrideControllerValueAction"/>
  544. </xsd:all>
  545. </xsd:complexType>
  546. <xsd:complexType name="ControllerCatalogLocation">
  547. <xsd:all>
  548. <xsd:element name="Directory" type="Directory"/>
  549. </xsd:all>
  550. </xsd:complexType>
  551. <xsd:complexType name="ControllerDistribution">
  552. <xsd:sequence>
  553. <xsd:element name="ControllerDistributionEntry" type="ControllerDistributionEntry" maxOccurs="unbounded"/>
  554. </xsd:sequence>
  555. </xsd:complexType>
  556. <xsd:complexType name="ControllerDistributionEntry">
  557. <xsd:choice>
  558. <xsd:element name="Controller" type="Controller" minOccurs="0"/>
  559. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  560. </xsd:choice>
  561. <xsd:attribute name="weight" type="Double" use="required"/>
  562. </xsd:complexType>
  563. <xsd:complexType name="ControlPoint">
  564. <xsd:sequence>
  565. <xsd:element name="Position" type="Position"/>
  566. </xsd:sequence>
  567. <xsd:attribute name="time" type="Double"/>
  568. <xsd:attribute name="weight" type="Double"/>
  569. </xsd:complexType>
  570. <xsd:complexType name="CustomCommandAction">
  571. <xsd:simpleContent>
  572. <xsd:extension base="xsd:string">
  573. <xsd:attribute name="type" type="String" use="required"/>
  574. </xsd:extension>
  575. </xsd:simpleContent>
  576. </xsd:complexType>
  577. <xsd:complexType name="DeleteEntityAction"/>
  578. <xsd:complexType name="Dimensions">
  579. <xsd:attribute name="height" type="Double" use="required"/>
  580. <xsd:attribute name="length" type="Double" use="required"/>
  581. <xsd:attribute name="width" type="Double" use="required"/>
  582. </xsd:complexType>
  583. <xsd:complexType name="Directory">
  584. <xsd:attribute name="path" type="String" use="required"/>
  585. </xsd:complexType>
  586. <xsd:complexType name="DistanceCondition">
  587. <xsd:all>
  588. <xsd:element name="Position" type="Position"/>
  589. </xsd:all>
  590. <xsd:attribute name="alongRoute" type="Boolean" use="required"/>
  591. <xsd:attribute name="freespace" type="Boolean" use="required"/>
  592. <xsd:attribute name="rule" type="Rule" use="required"/>
  593. <xsd:attribute name="value" type="Double" use="required"/>
  594. </xsd:complexType>
  595. <xsd:complexType name="DynamicConstraints">
  596. <xsd:attribute name="maxAcceleration" type="Double"/>
  597. <xsd:attribute name="maxDeceleration" type="Double"/>
  598. <xsd:attribute name="maxSpeed" type="Double"/>
  599. </xsd:complexType>
  600. <xsd:complexType name="EndOfRoadCondition">
  601. <xsd:attribute name="duration" type="Double" use="required"/>
  602. </xsd:complexType>
  603. <xsd:complexType name="Entities">
  604. <xsd:sequence>
  605. <xsd:element name="ScenarioObject" type="ScenarioObject" minOccurs="0" maxOccurs="unbounded"/>
  606. <xsd:element name="EntitySelection" type="EntitySelection" minOccurs="0" maxOccurs="unbounded"/>
  607. </xsd:sequence>
  608. </xsd:complexType>
  609. <xsd:complexType name="EntityAction">
  610. <xsd:choice>
  611. <xsd:element name="AddEntityAction" type="AddEntityAction" minOccurs="0"/>
  612. <xsd:element name="DeleteEntityAction" type="DeleteEntityAction" minOccurs="0"/>
  613. </xsd:choice>
  614. <xsd:attribute name="entityRef" type="String" use="required"/>
  615. </xsd:complexType>
  616. <xsd:complexType name="EntityCondition">
  617. <xsd:choice>
  618. <xsd:element name="EndOfRoadCondition" type="EndOfRoadCondition" minOccurs="0"/>
  619. <xsd:element name="CollisionCondition" type="CollisionCondition" minOccurs="0"/>
  620. <xsd:element name="OffroadCondition" type="OffroadCondition" minOccurs="0"/>
  621. <xsd:element name="TimeHeadwayCondition" type="TimeHeadwayCondition" minOccurs="0"/>
  622. <xsd:element name="TimeToCollisionCondition" type="TimeToCollisionCondition" minOccurs="0"/>
  623. <xsd:element name="AccelerationCondition" type="AccelerationCondition" minOccurs="0"/>
  624. <xsd:element name="StandStillCondition" type="StandStillCondition" minOccurs="0"/>
  625. <xsd:element name="SpeedCondition" type="SpeedCondition" minOccurs="0"/>
  626. <xsd:element name="RelativeSpeedCondition" type="RelativeSpeedCondition" minOccurs="0"/>
  627. <xsd:element name="TraveledDistanceCondition" type="TraveledDistanceCondition" minOccurs="0"/>
  628. <xsd:element name="ReachPositionCondition" type="ReachPositionCondition" minOccurs="0"/>
  629. <xsd:element name="DistanceCondition" type="DistanceCondition" minOccurs="0"/>
  630. <xsd:element name="RelativeDistanceCondition" type="RelativeDistanceCondition" minOccurs="0"/>
  631. </xsd:choice>
  632. </xsd:complexType>
  633. <xsd:group name="EntityObject">
  634. <xsd:choice>
  635. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  636. <xsd:element name="Vehicle" type="Vehicle" minOccurs="0"/>
  637. <xsd:element name="Pedestrian" type="Pedestrian" minOccurs="0"/>
  638. <xsd:element name="MiscObject" type="MiscObject" minOccurs="0"/>
  639. </xsd:choice>
  640. </xsd:group>
  641. <xsd:complexType name="EntityRef">
  642. <xsd:attribute name="entityRef" type="String" use="required"/>
  643. </xsd:complexType>
  644. <xsd:complexType name="EntitySelection">
  645. <xsd:sequence>
  646. <xsd:element name="Members" type="SelectedEntities"/>
  647. </xsd:sequence>
  648. <xsd:attribute name="name" type="String" use="required"/>
  649. </xsd:complexType>
  650. <xsd:complexType name="Environment">
  651. <xsd:all>
  652. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  653. <xsd:element name="TimeOfDay" type="TimeOfDay"/>
  654. <xsd:element name="Weather" type="Weather"/>
  655. <xsd:element name="RoadCondition" type="RoadCondition"/>
  656. </xsd:all>
  657. <xsd:attribute name="name" type="String" use="required"/>
  658. </xsd:complexType>
  659. <xsd:complexType name="EnvironmentAction">
  660. <xsd:choice>
  661. <xsd:element name="Environment" type="Environment" minOccurs="0"/>
  662. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  663. </xsd:choice>
  664. </xsd:complexType>
  665. <xsd:complexType name="EnvironmentCatalogLocation">
  666. <xsd:all>
  667. <xsd:element name="Directory" type="Directory"/>
  668. </xsd:all>
  669. </xsd:complexType>
  670. <xsd:complexType name="Event">
  671. <xsd:sequence>
  672. <xsd:element name="Action" type="Action" maxOccurs="unbounded"/>
  673. <xsd:element name="StartTrigger" type="Trigger"/>
  674. </xsd:sequence>
  675. <xsd:attribute name="maximumExecutionCount" type="UnsignedInt"/>
  676. <xsd:attribute name="name" type="String" use="required"/>
  677. <xsd:attribute name="priority" type="Priority" use="required"/>
  678. </xsd:complexType>
  679. <xsd:complexType name="File">
  680. <xsd:attribute name="filepath" type="String" use="required"/>
  681. </xsd:complexType>
  682. <xsd:complexType name="FileHeader">
  683. <xsd:attribute name="author" type="String" use="required"/>
  684. <xsd:attribute name="date" type="DateTime" use="required"/>
  685. <xsd:attribute name="description" type="String" use="required"/>
  686. <xsd:attribute name="revMajor" type="UnsignedShort" use="required"/>
  687. <xsd:attribute name="revMinor" type="UnsignedShort" use="required"/>
  688. </xsd:complexType>
  689. <xsd:complexType name="FinalSpeed">
  690. <xsd:choice>
  691. <xsd:element name="AbsoluteSpeed" type="AbsoluteSpeed" minOccurs="0"/>
  692. <xsd:element name="RelativeSpeedToMaster" type="RelativeSpeedToMaster" minOccurs="0"/>
  693. </xsd:choice>
  694. </xsd:complexType>
  695. <xsd:complexType name="Fog">
  696. <xsd:all>
  697. <xsd:element name="BoundingBox" type="BoundingBox" minOccurs="0"/>
  698. </xsd:all>
  699. <xsd:attribute name="visualRange" type="Double" use="required"/>
  700. </xsd:complexType>
  701. <xsd:complexType name="FollowTrajectoryAction">
  702. <xsd:all>
  703. <xsd:element name="Trajectory" type="Trajectory" minOccurs="0"/>
  704. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  705. <xsd:element name="TimeReference" type="TimeReference"/>
  706. <xsd:element name="TrajectoryFollowingMode" type="TrajectoryFollowingMode"/>
  707. </xsd:all>
  708. </xsd:complexType>
  709. <xsd:complexType name="GlobalAction">
  710. <xsd:choice>
  711. <xsd:element name="EnvironmentAction" type="EnvironmentAction" minOccurs="0"/>
  712. <xsd:element name="EntityAction" type="EntityAction" minOccurs="0"/>
  713. <xsd:element name="ParameterAction" type="ParameterAction" minOccurs="0"/>
  714. <xsd:element name="InfrastructureAction" type="InfrastructureAction" minOccurs="0"/>
  715. <xsd:element name="TrafficAction" type="TrafficAction" minOccurs="0"/>
  716. </xsd:choice>
  717. </xsd:complexType>
  718. <xsd:complexType name="InfrastructureAction">
  719. <xsd:all>
  720. <xsd:element name="TrafficSignalAction" type="TrafficSignalAction"/>
  721. </xsd:all>
  722. </xsd:complexType>
  723. <xsd:complexType name="Init">
  724. <xsd:sequence>
  725. <xsd:element name="Actions" type="InitActions"/>
  726. </xsd:sequence>
  727. </xsd:complexType>
  728. <xsd:complexType name="InitActions">
  729. <xsd:sequence>
  730. <xsd:element name="GlobalAction" type="GlobalAction" minOccurs="0" maxOccurs="unbounded"/>
  731. <xsd:element name="UserDefinedAction" type="UserDefinedAction" minOccurs="0" maxOccurs="unbounded"/>
  732. <xsd:element name="Private" type="Private" minOccurs="0" maxOccurs="unbounded"/>
  733. </xsd:sequence>
  734. </xsd:complexType>
  735. <xsd:complexType name="InRoutePosition">
  736. <xsd:choice>
  737. <xsd:element name="FromCurrentEntity" type="PositionOfCurrentEntity" minOccurs="0"/>
  738. <xsd:element name="FromRoadCoordinates" type="PositionInRoadCoordinates" minOccurs="0"/>
  739. <xsd:element name="FromLaneCoordinates" type="PositionInLaneCoordinates" minOccurs="0"/>
  740. </xsd:choice>
  741. </xsd:complexType>
  742. <xsd:complexType name="Knot">
  743. <xsd:attribute name="value" type="Double" use="required"/>
  744. </xsd:complexType>
  745. <xsd:complexType name="LaneChangeAction">
  746. <xsd:all>
  747. <xsd:element name="LaneChangeActionDynamics" type="TransitionDynamics"/>
  748. <xsd:element name="LaneChangeTarget" type="LaneChangeTarget"/>
  749. </xsd:all>
  750. <xsd:attribute name="targetLaneOffset" type="Double"/>
  751. </xsd:complexType>
  752. <xsd:complexType name="LaneChangeTarget">
  753. <xsd:choice>
  754. <xsd:element name="RelativeTargetLane" type="RelativeTargetLane" minOccurs="0"/>
  755. <xsd:element name="AbsoluteTargetLane" type="AbsoluteTargetLane" minOccurs="0"/>
  756. </xsd:choice>
  757. </xsd:complexType>
  758. <xsd:complexType name="LaneOffsetAction">
  759. <xsd:all>
  760. <xsd:element name="LaneOffsetActionDynamics" type="LaneOffsetActionDynamics"/>
  761. <xsd:element name="LaneOffsetTarget" type="LaneOffsetTarget"/>
  762. </xsd:all>
  763. <xsd:attribute name="continuous" type="Boolean" use="required"/>
  764. </xsd:complexType>
  765. <xsd:complexType name="LaneOffsetActionDynamics">
  766. <xsd:attribute name="dynamicsShape" type="DynamicsShape" use="required"/>
  767. <xsd:attribute name="maxLateralAcc" type="Double"/>
  768. </xsd:complexType>
  769. <xsd:complexType name="LaneOffsetTarget">
  770. <xsd:choice>
  771. <xsd:element name="RelativeTargetLaneOffset" type="RelativeTargetLaneOffset" minOccurs="0"/>
  772. <xsd:element name="AbsoluteTargetLaneOffset" type="AbsoluteTargetLaneOffset" minOccurs="0"/>
  773. </xsd:choice>
  774. </xsd:complexType>
  775. <xsd:complexType name="LanePosition">
  776. <xsd:all>
  777. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  778. </xsd:all>
  779. <xsd:attribute name="laneId" type="String" use="required"/>
  780. <xsd:attribute name="offset" type="Double"/>
  781. <xsd:attribute name="roadId" type="String" use="required"/>
  782. <xsd:attribute name="s" type="Double" use="required"/>
  783. </xsd:complexType>
  784. <xsd:complexType name="LateralAction">
  785. <xsd:choice>
  786. <xsd:element name="LaneChangeAction" type="LaneChangeAction" minOccurs="0"/>
  787. <xsd:element name="LaneOffsetAction" type="LaneOffsetAction" minOccurs="0"/>
  788. <xsd:element name="LateralDistanceAction" type="LateralDistanceAction" minOccurs="0"/>
  789. </xsd:choice>
  790. </xsd:complexType>
  791. <xsd:complexType name="LateralDistanceAction">
  792. <xsd:all>
  793. <xsd:element name="DynamicConstraints" type="DynamicConstraints" minOccurs="0"/>
  794. </xsd:all>
  795. <xsd:attribute name="entityRef" type="String" use="required"/>
  796. <xsd:attribute name="continuous" type="Boolean" use="required"/>
  797. <xsd:attribute name="distance" type="Double"/>
  798. <xsd:attribute name="freespace" type="Boolean" use="required"/>
  799. </xsd:complexType>
  800. <xsd:complexType name="LongitudinalAction">
  801. <xsd:choice>
  802. <xsd:element name="SpeedAction" type="SpeedAction" minOccurs="0"/>
  803. <xsd:element name="LongitudinalDistanceAction" type="LongitudinalDistanceAction" minOccurs="0"/>
  804. </xsd:choice>
  805. </xsd:complexType>
  806. <xsd:complexType name="LongitudinalDistanceAction">
  807. <xsd:all>
  808. <xsd:element name="DynamicConstraints" type="DynamicConstraints" minOccurs="0"/>
  809. </xsd:all>
  810. <xsd:attribute name="entityRef" type="String" use="required"/>
  811. <xsd:attribute name="continuous" type="Boolean" use="required"/>
  812. <xsd:attribute name="distance" type="Double"/>
  813. <xsd:attribute name="freespace" type="Boolean" use="required"/>
  814. <xsd:attribute name="timeGap" type="Double"/>
  815. </xsd:complexType>
  816. <xsd:complexType name="Maneuver">
  817. <xsd:sequence>
  818. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  819. <xsd:element name="Event" type="Event" maxOccurs="unbounded"/>
  820. </xsd:sequence>
  821. <xsd:attribute name="name" type="String" use="required"/>
  822. </xsd:complexType>
  823. <xsd:complexType name="ManeuverCatalogLocation">
  824. <xsd:all>
  825. <xsd:element name="Directory" type="Directory"/>
  826. </xsd:all>
  827. </xsd:complexType>
  828. <xsd:complexType name="ManeuverGroup">
  829. <xsd:sequence>
  830. <xsd:element name="Actors" type="Actors"/>
  831. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0" maxOccurs="unbounded"/>
  832. <xsd:element name="Maneuver" type="Maneuver" minOccurs="0" maxOccurs="unbounded"/>
  833. </xsd:sequence>
  834. <xsd:attribute name="maximumExecutionCount" type="UnsignedInt" use="required"/>
  835. <xsd:attribute name="name" type="String" use="required"/>
  836. </xsd:complexType>
  837. <xsd:complexType name="MiscObject">
  838. <xsd:all>
  839. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  840. <xsd:element name="BoundingBox" type="BoundingBox"/>
  841. <xsd:element name="Properties" type="Properties"/>
  842. </xsd:all>
  843. <xsd:attribute name="mass" type="Double" use="required"/>
  844. <xsd:attribute name="miscObjectCategory" type="MiscObjectCategory" use="required"/>
  845. <xsd:attribute name="name" type="String" use="required"/>
  846. </xsd:complexType>
  847. <xsd:complexType name="MiscObjectCatalogLocation">
  848. <xsd:all>
  849. <xsd:element name="Directory" type="Directory"/>
  850. </xsd:all>
  851. </xsd:complexType>
  852. <xsd:complexType name="ModifyRule">
  853. <xsd:choice>
  854. <xsd:element name="AddValue" type="ParameterAddValueRule" minOccurs="0"/>
  855. <xsd:element name="MultiplyByValue" type="ParameterMultiplyByValueRule" minOccurs="0"/>
  856. </xsd:choice>
  857. </xsd:complexType>
  858. <xsd:complexType name="None"/>
  859. <xsd:complexType name="Nurbs">
  860. <xsd:sequence>
  861. <xsd:element name="ControlPoint" type="ControlPoint" minOccurs="2" maxOccurs="unbounded"/>
  862. <xsd:element name="Knot" type="Knot" minOccurs="2" maxOccurs="unbounded"/>
  863. </xsd:sequence>
  864. <xsd:attribute name="order" type="UnsignedInt" use="required"/>
  865. </xsd:complexType>
  866. <xsd:complexType name="ObjectController">
  867. <xsd:choice>
  868. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  869. <xsd:element name="Controller" type="Controller" minOccurs="0"/>
  870. </xsd:choice>
  871. </xsd:complexType>
  872. <xsd:complexType name="OffroadCondition">
  873. <xsd:attribute name="duration" type="Double" use="required"/>
  874. </xsd:complexType>
  875. <xsd:complexType name="OpenScenario">
  876. <xsd:sequence>
  877. <xsd:element name="FileHeader" type="FileHeader"/>
  878. <xsd:group ref="OpenScenarioCategory"/>
  879. </xsd:sequence>
  880. </xsd:complexType>
  881. <xsd:element name="OpenScenario" type="OpenScenario"/>
  882. <xsd:group name="OpenScenarioCategory">
  883. <xsd:choice>
  884. <xsd:group ref="ScenarioDefinition"/>
  885. <xsd:group ref="CatalogDefinition"/>
  886. </xsd:choice>
  887. </xsd:group>
  888. <xsd:complexType name="Orientation">
  889. <xsd:attribute name="h" type="Double"/>
  890. <xsd:attribute name="p" type="Double"/>
  891. <xsd:attribute name="r" type="Double"/>
  892. <xsd:attribute name="type" type="ReferenceContext"/>
  893. </xsd:complexType>
  894. <xsd:complexType name="OverrideBrakeAction">
  895. <xsd:attribute name="active" type="Boolean" use="required"/>
  896. <xsd:attribute name="value" type="Double" use="required"/>
  897. </xsd:complexType>
  898. <xsd:complexType name="OverrideClutchAction">
  899. <xsd:attribute name="active" type="Boolean" use="required"/>
  900. <xsd:attribute name="value" type="Double" use="required"/>
  901. </xsd:complexType>
  902. <xsd:complexType name="OverrideControllerValueAction">
  903. <xsd:all>
  904. <xsd:element name="Throttle" type="OverrideThrottleAction"/>
  905. <xsd:element name="Brake" type="OverrideBrakeAction"/>
  906. <xsd:element name="Clutch" type="OverrideClutchAction"/>
  907. <xsd:element name="ParkingBrake" type="OverrideParkingBrakeAction"/>
  908. <xsd:element name="SteeringWheel" type="OverrideSteeringWheelAction"/>
  909. <xsd:element name="Gear" type="OverrideGearAction"/>
  910. </xsd:all>
  911. </xsd:complexType>
  912. <xsd:complexType name="OverrideGearAction">
  913. <xsd:attribute name="active" type="Boolean" use="required"/>
  914. <xsd:attribute name="number" type="Double" use="required"/>
  915. </xsd:complexType>
  916. <xsd:complexType name="OverrideParkingBrakeAction">
  917. <xsd:attribute name="active" type="Boolean" use="required"/>
  918. <xsd:attribute name="value" type="Double" use="required"/>
  919. </xsd:complexType>
  920. <xsd:complexType name="OverrideSteeringWheelAction">
  921. <xsd:attribute name="active" type="Boolean" use="required"/>
  922. <xsd:attribute name="value" type="Double" use="required"/>
  923. </xsd:complexType>
  924. <xsd:complexType name="OverrideThrottleAction">
  925. <xsd:attribute name="active" type="Boolean" use="required"/>
  926. <xsd:attribute name="value" type="Double" use="required"/>
  927. </xsd:complexType>
  928. <xsd:complexType name="ParameterAction">
  929. <xsd:choice>
  930. <xsd:element name="SetAction" type="ParameterSetAction" minOccurs="0"/>
  931. <xsd:element name="ModifyAction" type="ParameterModifyAction" minOccurs="0"/>
  932. </xsd:choice>
  933. <xsd:attribute name="parameterRef" type="String" use="required"/>
  934. </xsd:complexType>
  935. <xsd:complexType name="ParameterAddValueRule">
  936. <xsd:attribute name="value" type="Double" use="required"/>
  937. </xsd:complexType>
  938. <xsd:complexType name="ParameterAssignment">
  939. <xsd:attribute name="parameterRef" type="String" use="required"/>
  940. <xsd:attribute name="value" type="String" use="required"/>
  941. </xsd:complexType>
  942. <xsd:complexType name="ParameterAssignments">
  943. <xsd:sequence>
  944. <xsd:element name="ParameterAssignment" type="ParameterAssignment" minOccurs="0" maxOccurs="unbounded"/>
  945. </xsd:sequence>
  946. </xsd:complexType>
  947. <xsd:complexType name="ParameterCondition">
  948. <xsd:attribute name="parameterRef" type="String" use="required"/>
  949. <xsd:attribute name="rule" type="Rule" use="required"/>
  950. <xsd:attribute name="value" type="String" use="required"/>
  951. </xsd:complexType>
  952. <xsd:complexType name="ParameterDeclaration">
  953. <xsd:attribute name="name" type="String" use="required"/>
  954. <xsd:attribute name="parameterType" type="ParameterType" use="required"/>
  955. <xsd:attribute name="value" type="String" use="required"/>
  956. </xsd:complexType>
  957. <xsd:complexType name="ParameterDeclarations">
  958. <xsd:sequence>
  959. <xsd:element name="ParameterDeclaration" type="ParameterDeclaration" minOccurs="0" maxOccurs="unbounded"/>
  960. </xsd:sequence>
  961. </xsd:complexType>
  962. <xsd:complexType name="ParameterModifyAction">
  963. <xsd:all>
  964. <xsd:element name="Rule" type="ModifyRule"/>
  965. </xsd:all>
  966. </xsd:complexType>
  967. <xsd:complexType name="ParameterMultiplyByValueRule">
  968. <xsd:attribute name="value" type="Double" use="required"/>
  969. </xsd:complexType>
  970. <xsd:complexType name="ParameterSetAction">
  971. <xsd:attribute name="value" type="String" use="required"/>
  972. </xsd:complexType>
  973. <xsd:complexType name="Pedestrian">
  974. <xsd:all>
  975. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  976. <xsd:element name="BoundingBox" type="BoundingBox"/>
  977. <xsd:element name="Properties" type="Properties"/>
  978. </xsd:all>
  979. <xsd:attribute name="mass" type="Double" use="required"/>
  980. <xsd:attribute name="model" type="String" use="required"/>
  981. <xsd:attribute name="name" type="String" use="required"/>
  982. <xsd:attribute name="pedestrianCategory" type="PedestrianCategory" use="required"/>
  983. </xsd:complexType>
  984. <xsd:complexType name="PedestrianCatalogLocation">
  985. <xsd:all>
  986. <xsd:element name="Directory" type="Directory"/>
  987. </xsd:all>
  988. </xsd:complexType>
  989. <xsd:complexType name="Performance">
  990. <xsd:attribute name="maxAcceleration" type="Double" use="required"/>
  991. <xsd:attribute name="maxDeceleration" type="Double" use="required"/>
  992. <xsd:attribute name="maxSpeed" type="Double" use="required"/>
  993. </xsd:complexType>
  994. <xsd:complexType name="Phase">
  995. <xsd:sequence>
  996. <xsd:element name="TrafficSignalState" type="TrafficSignalState" minOccurs="0" maxOccurs="unbounded"/>
  997. </xsd:sequence>
  998. <xsd:attribute name="duration" type="Double" use="required"/>
  999. <xsd:attribute name="name" type="String" use="required"/>
  1000. </xsd:complexType>
  1001. <xsd:complexType name="Polyline">
  1002. <xsd:sequence>
  1003. <xsd:element name="Vertex" type="Vertex" minOccurs="2" maxOccurs="unbounded"/>
  1004. </xsd:sequence>
  1005. </xsd:complexType>
  1006. <xsd:complexType name="Position">
  1007. <xsd:choice>
  1008. <xsd:element name="WorldPosition" type="WorldPosition" minOccurs="0"/>
  1009. <xsd:element name="RelativeWorldPosition" type="RelativeWorldPosition" minOccurs="0"/>
  1010. <xsd:element name="RelativeObjectPosition" type="RelativeObjectPosition" minOccurs="0"/>
  1011. <xsd:element name="RoadPosition" type="RoadPosition" minOccurs="0"/>
  1012. <xsd:element name="RelativeRoadPosition" type="RelativeRoadPosition" minOccurs="0"/>
  1013. <xsd:element name="LanePosition" type="LanePosition" minOccurs="0"/>
  1014. <xsd:element name="RelativeLanePosition" type="RelativeLanePosition" minOccurs="0"/>
  1015. <xsd:element name="RoutePosition" type="RoutePosition" minOccurs="0"/>
  1016. </xsd:choice>
  1017. </xsd:complexType>
  1018. <xsd:complexType name="PositionInLaneCoordinates">
  1019. <xsd:attribute name="laneId" type="String" use="required"/>
  1020. <xsd:attribute name="laneOffset" type="Double"/>
  1021. <xsd:attribute name="pathS" type="Double" use="required"/>
  1022. </xsd:complexType>
  1023. <xsd:complexType name="PositionInRoadCoordinates">
  1024. <xsd:attribute name="pathS" type="Double" use="required"/>
  1025. <xsd:attribute name="t" type="Double" use="required"/>
  1026. </xsd:complexType>
  1027. <xsd:complexType name="PositionOfCurrentEntity">
  1028. <xsd:attribute name="entityRef" type="String" use="required"/>
  1029. </xsd:complexType>
  1030. <xsd:complexType name="Precipitation">
  1031. <xsd:attribute name="intensity" type="Double" use="required"/>
  1032. <xsd:attribute name="precipitationType" type="PrecipitationType" use="required"/>
  1033. </xsd:complexType>
  1034. <xsd:complexType name="Private">
  1035. <xsd:sequence>
  1036. <xsd:element name="PrivateAction" type="PrivateAction" maxOccurs="unbounded"/>
  1037. </xsd:sequence>
  1038. <xsd:attribute name="entityRef" type="String" use="required"/>
  1039. </xsd:complexType>
  1040. <xsd:complexType name="PrivateAction">
  1041. <xsd:choice>
  1042. <xsd:element name="LongitudinalAction" type="LongitudinalAction" minOccurs="0"/>
  1043. <xsd:element name="LateralAction" type="LateralAction" minOccurs="0"/>
  1044. <xsd:element name="VisibilityAction" type="VisibilityAction" minOccurs="0"/>
  1045. <xsd:element name="SynchronizeAction" type="SynchronizeAction" minOccurs="0"/>
  1046. <xsd:element name="ActivateControllerAction" type="ActivateControllerAction" minOccurs="0"/>
  1047. <xsd:element name="ControllerAction" type="ControllerAction" minOccurs="0"/>
  1048. <xsd:element name="TeleportAction" type="TeleportAction" minOccurs="0"/>
  1049. <xsd:element name="RoutingAction" type="RoutingAction" minOccurs="0"/>
  1050. </xsd:choice>
  1051. </xsd:complexType>
  1052. <xsd:complexType name="Properties">
  1053. <xsd:sequence>
  1054. <xsd:element name="Property" type="Property" minOccurs="0" maxOccurs="unbounded"/>
  1055. <xsd:element name="File" type="File" minOccurs="0" maxOccurs="unbounded"/>
  1056. </xsd:sequence>
  1057. </xsd:complexType>
  1058. <xsd:complexType name="Property">
  1059. <xsd:attribute name="name" type="String" use="required"/>
  1060. <xsd:attribute name="value" type="String" use="required"/>
  1061. </xsd:complexType>
  1062. <xsd:complexType name="ReachPositionCondition">
  1063. <xsd:all>
  1064. <xsd:element name="Position" type="Position"/>
  1065. </xsd:all>
  1066. <xsd:attribute name="tolerance" type="Double" use="required"/>
  1067. </xsd:complexType>
  1068. <xsd:complexType name="RelativeDistanceCondition">
  1069. <xsd:attribute name="entityRef" type="String" use="required"/>
  1070. <xsd:attribute name="freespace" type="Boolean" use="required"/>
  1071. <xsd:attribute name="relativeDistanceType" type="RelativeDistanceType" use="required"/>
  1072. <xsd:attribute name="rule" type="Rule" use="required"/>
  1073. <xsd:attribute name="value" type="Double" use="required"/>
  1074. </xsd:complexType>
  1075. <xsd:complexType name="RelativeLanePosition">
  1076. <xsd:all>
  1077. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  1078. </xsd:all>
  1079. <xsd:attribute name="entityRef" type="String" use="required"/>
  1080. <xsd:attribute name="dLane" type="Int" use="required"/>
  1081. <xsd:attribute name="ds" type="Double" use="required"/>
  1082. <xsd:attribute name="offset" type="Double"/>
  1083. </xsd:complexType>
  1084. <xsd:complexType name="RelativeObjectPosition">
  1085. <xsd:all>
  1086. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  1087. </xsd:all>
  1088. <xsd:attribute name="entityRef" type="String" use="required"/>
  1089. <xsd:attribute name="dx" type="Double" use="required"/>
  1090. <xsd:attribute name="dy" type="Double" use="required"/>
  1091. <xsd:attribute name="dz" type="Double"/>
  1092. </xsd:complexType>
  1093. <xsd:complexType name="RelativeRoadPosition">
  1094. <xsd:all>
  1095. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  1096. </xsd:all>
  1097. <xsd:attribute name="entityRef" type="String" use="required"/>
  1098. <xsd:attribute name="ds" type="Double" use="required"/>
  1099. <xsd:attribute name="dt" type="Double" use="required"/>
  1100. </xsd:complexType>
  1101. <xsd:complexType name="RelativeSpeedCondition">
  1102. <xsd:attribute name="entityRef" type="String" use="required"/>
  1103. <xsd:attribute name="rule" type="Rule" use="required"/>
  1104. <xsd:attribute name="value" type="Double" use="required"/>
  1105. </xsd:complexType>
  1106. <xsd:complexType name="RelativeSpeedToMaster">
  1107. <xsd:attribute name="speedTargetValueType" type="SpeedTargetValueType" use="required"/>
  1108. <xsd:attribute name="value" type="Double" use="required"/>
  1109. </xsd:complexType>
  1110. <xsd:complexType name="RelativeTargetLane">
  1111. <xsd:attribute name="entityRef" type="String" use="required"/>
  1112. <xsd:attribute name="value" type="Int" use="required"/>
  1113. </xsd:complexType>
  1114. <xsd:complexType name="RelativeTargetLaneOffset">
  1115. <xsd:attribute name="entityRef" type="String" use="required"/>
  1116. <xsd:attribute name="value" type="Double" use="required"/>
  1117. </xsd:complexType>
  1118. <xsd:complexType name="RelativeTargetSpeed">
  1119. <xsd:attribute name="entityRef" type="String" use="required"/>
  1120. <xsd:attribute name="continuous" type="Boolean" use="required"/>
  1121. <xsd:attribute name="speedTargetValueType" type="SpeedTargetValueType" use="required"/>
  1122. <xsd:attribute name="value" type="Double" use="required"/>
  1123. </xsd:complexType>
  1124. <xsd:complexType name="RelativeWorldPosition">
  1125. <xsd:all>
  1126. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  1127. </xsd:all>
  1128. <xsd:attribute name="entityRef" type="String" use="required"/>
  1129. <xsd:attribute name="dx" type="Double" use="required"/>
  1130. <xsd:attribute name="dy" type="Double" use="required"/>
  1131. <xsd:attribute name="dz" type="Double"/>
  1132. </xsd:complexType>
  1133. <xsd:complexType name="RoadCondition">
  1134. <xsd:sequence>
  1135. <xsd:element name="Properties" type="Properties" minOccurs="0"/>
  1136. </xsd:sequence>
  1137. <xsd:attribute name="frictionScaleFactor" type="Double" use="required"/>
  1138. </xsd:complexType>
  1139. <xsd:complexType name="RoadNetwork">
  1140. <xsd:sequence>
  1141. <xsd:element name="LogicFile" type="File" minOccurs="0"/>
  1142. <xsd:element name="SceneGraphFile" type="File" minOccurs="0"/>
  1143. <xsd:element name="TrafficSignals" type="TrafficSignals" minOccurs="0"/>
  1144. </xsd:sequence>
  1145. </xsd:complexType>
  1146. <xsd:complexType name="RoadPosition">
  1147. <xsd:all>
  1148. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  1149. </xsd:all>
  1150. <xsd:attribute name="roadId" type="String" use="required"/>
  1151. <xsd:attribute name="s" type="Double" use="required"/>
  1152. <xsd:attribute name="t" type="Double" use="required"/>
  1153. </xsd:complexType>
  1154. <xsd:complexType name="Route">
  1155. <xsd:sequence>
  1156. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  1157. <xsd:element name="Waypoint" type="Waypoint" minOccurs="2" maxOccurs="unbounded"/>
  1158. </xsd:sequence>
  1159. <xsd:attribute name="closed" type="Boolean" use="required"/>
  1160. <xsd:attribute name="name" type="String" use="required"/>
  1161. </xsd:complexType>
  1162. <xsd:complexType name="RouteCatalogLocation">
  1163. <xsd:all>
  1164. <xsd:element name="Directory" type="Directory"/>
  1165. </xsd:all>
  1166. </xsd:complexType>
  1167. <xsd:complexType name="RoutePosition">
  1168. <xsd:all>
  1169. <xsd:element name="RouteRef" type="RouteRef"/>
  1170. <xsd:element name="Orientation" type="Orientation" minOccurs="0"/>
  1171. <xsd:element name="InRoutePosition" type="InRoutePosition"/>
  1172. </xsd:all>
  1173. </xsd:complexType>
  1174. <xsd:complexType name="RouteRef">
  1175. <xsd:choice>
  1176. <xsd:element name="Route" type="Route" minOccurs="0"/>
  1177. <xsd:element name="CatalogReference" type="CatalogReference" minOccurs="0"/>
  1178. </xsd:choice>
  1179. </xsd:complexType>
  1180. <xsd:complexType name="RoutingAction">
  1181. <xsd:choice>
  1182. <xsd:element name="AssignRouteAction" type="AssignRouteAction" minOccurs="0"/>
  1183. <xsd:element name="FollowTrajectoryAction" type="FollowTrajectoryAction" minOccurs="0"/>
  1184. <xsd:element name="AcquirePositionAction" type="AcquirePositionAction" minOccurs="0"/>
  1185. </xsd:choice>
  1186. </xsd:complexType>
  1187. <xsd:group name="ScenarioDefinition">
  1188. <xsd:sequence>
  1189. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  1190. <xsd:element name="CatalogLocations" type="CatalogLocations"/>
  1191. <xsd:element name="RoadNetwork" type="RoadNetwork"/>
  1192. <xsd:element name="Entities" type="Entities"/>
  1193. <xsd:element name="Storyboard" type="Storyboard"/>
  1194. </xsd:sequence>
  1195. </xsd:group>
  1196. <xsd:complexType name="ScenarioObject">
  1197. <xsd:sequence>
  1198. <xsd:group ref="EntityObject"/>
  1199. <xsd:element name="ObjectController" type="ObjectController" minOccurs="0"/>
  1200. </xsd:sequence>
  1201. <xsd:attribute name="name" type="String" use="required"/>
  1202. </xsd:complexType>
  1203. <xsd:complexType name="SelectedEntities">
  1204. <xsd:choice>
  1205. <xsd:element name="EntityRef" type="EntityRef" minOccurs="0" maxOccurs="unbounded"/>
  1206. <xsd:element name="ByType" type="ByType" minOccurs="0" maxOccurs="unbounded"/>
  1207. </xsd:choice>
  1208. </xsd:complexType>
  1209. <xsd:complexType name="Shape">
  1210. <xsd:choice>
  1211. <xsd:element name="Polyline" type="Polyline" minOccurs="0"/>
  1212. <xsd:element name="Clothoid" type="Clothoid" minOccurs="0"/>
  1213. <xsd:element name="Nurbs" type="Nurbs" minOccurs="0"/>
  1214. </xsd:choice>
  1215. </xsd:complexType>
  1216. <xsd:complexType name="SimulationTimeCondition">
  1217. <xsd:attribute name="rule" type="Rule" use="required"/>
  1218. <xsd:attribute name="value" type="Double" use="required"/>
  1219. </xsd:complexType>
  1220. <xsd:complexType name="SpeedAction">
  1221. <xsd:all>
  1222. <xsd:element name="SpeedActionDynamics" type="TransitionDynamics"/>
  1223. <xsd:element name="SpeedActionTarget" type="SpeedActionTarget"/>
  1224. </xsd:all>
  1225. </xsd:complexType>
  1226. <xsd:complexType name="SpeedActionTarget">
  1227. <xsd:choice>
  1228. <xsd:element name="RelativeTargetSpeed" type="RelativeTargetSpeed" minOccurs="0"/>
  1229. <xsd:element name="AbsoluteTargetSpeed" type="AbsoluteTargetSpeed" minOccurs="0"/>
  1230. </xsd:choice>
  1231. </xsd:complexType>
  1232. <xsd:complexType name="SpeedCondition">
  1233. <xsd:attribute name="rule" type="Rule" use="required"/>
  1234. <xsd:attribute name="value" type="Double" use="required"/>
  1235. </xsd:complexType>
  1236. <xsd:complexType name="StandStillCondition">
  1237. <xsd:attribute name="duration" type="Double" use="required"/>
  1238. </xsd:complexType>
  1239. <xsd:complexType name="Story">
  1240. <xsd:sequence>
  1241. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  1242. <xsd:element name="Act" type="Act" maxOccurs="unbounded"/>
  1243. </xsd:sequence>
  1244. <xsd:attribute name="name" type="String" use="required"/>
  1245. </xsd:complexType>
  1246. <xsd:complexType name="Storyboard">
  1247. <xsd:sequence>
  1248. <xsd:element name="Init" type="Init"/>
  1249. <xsd:element name="Story" type="Story" maxOccurs="unbounded"/>
  1250. <xsd:element name="StopTrigger" type="Trigger"/>
  1251. </xsd:sequence>
  1252. </xsd:complexType>
  1253. <xsd:complexType name="StoryboardElementStateCondition">
  1254. <xsd:attribute name="storyboardElementRef" type="String" use="required"/>
  1255. <xsd:attribute name="state" type="StoryboardElementState" use="required"/>
  1256. <xsd:attribute name="storyboardElementType" type="StoryboardElementType" use="required"/>
  1257. </xsd:complexType>
  1258. <xsd:complexType name="Sun">
  1259. <xsd:attribute name="azimuth" type="Double" use="required"/>
  1260. <xsd:attribute name="elevation" type="Double" use="required"/>
  1261. <xsd:attribute name="intensity" type="Double" use="required"/>
  1262. </xsd:complexType>
  1263. <xsd:complexType name="SynchronizeAction">
  1264. <xsd:all>
  1265. <xsd:element name="TargetPositionMaster" type="Position"/>
  1266. <xsd:element name="TargetPosition" type="Position"/>
  1267. <xsd:element name="FinalSpeed" type="FinalSpeed" minOccurs="0"/>
  1268. </xsd:all>
  1269. <xsd:attribute name="masterEntityRef" type="String" use="required"/>
  1270. </xsd:complexType>
  1271. <xsd:complexType name="TeleportAction">
  1272. <xsd:sequence>
  1273. <xsd:element name="Position" type="Position"/>
  1274. </xsd:sequence>
  1275. </xsd:complexType>
  1276. <xsd:complexType name="TimeHeadwayCondition">
  1277. <xsd:attribute name="entityRef" type="String" use="required"/>
  1278. <xsd:attribute name="alongRoute" type="Boolean" use="required"/>
  1279. <xsd:attribute name="freespace" type="Boolean" use="required"/>
  1280. <xsd:attribute name="rule" type="Rule" use="required"/>
  1281. <xsd:attribute name="value" type="Double" use="required"/>
  1282. </xsd:complexType>
  1283. <xsd:complexType name="TimeOfDay">
  1284. <xsd:attribute name="animation" type="Boolean" use="required"/>
  1285. <xsd:attribute name="dateTime" type="DateTime" use="required"/>
  1286. </xsd:complexType>
  1287. <xsd:complexType name="TimeOfDayCondition">
  1288. <xsd:attribute name="dateTime" type="DateTime" use="required"/>
  1289. <xsd:attribute name="rule" type="Rule" use="required"/>
  1290. </xsd:complexType>
  1291. <xsd:complexType name="TimeReference">
  1292. <xsd:choice>
  1293. <xsd:element name="None" type="None" minOccurs="0"/>
  1294. <xsd:element name="Timing" type="Timing" minOccurs="0"/>
  1295. </xsd:choice>
  1296. </xsd:complexType>
  1297. <xsd:complexType name="TimeToCollisionCondition">
  1298. <xsd:all>
  1299. <xsd:element name="TimeToCollisionConditionTarget" type="TimeToCollisionConditionTarget"/>
  1300. </xsd:all>
  1301. <xsd:attribute name="alongRoute" type="Boolean" use="required"/>
  1302. <xsd:attribute name="freespace" type="Boolean" use="required"/>
  1303. <xsd:attribute name="rule" type="Rule" use="required"/>
  1304. <xsd:attribute name="value" type="Double" use="required"/>
  1305. </xsd:complexType>
  1306. <xsd:complexType name="TimeToCollisionConditionTarget">
  1307. <xsd:choice>
  1308. <xsd:element name="Position" type="Position" minOccurs="0"/>
  1309. <xsd:element name="EntityRef" type="EntityRef" minOccurs="0"/>
  1310. </xsd:choice>
  1311. </xsd:complexType>
  1312. <xsd:complexType name="Timing">
  1313. <xsd:attribute name="domainAbsoluteRelative" type="ReferenceContext" use="required"/>
  1314. <xsd:attribute name="offset" type="Double" use="required"/>
  1315. <xsd:attribute name="scale" type="Double" use="required"/>
  1316. </xsd:complexType>
  1317. <xsd:complexType name="TrafficAction">
  1318. <xsd:choice>
  1319. <xsd:element name="TrafficSourceAction" type="TrafficSourceAction" minOccurs="0"/>
  1320. <xsd:element name="TrafficSinkAction" type="TrafficSinkAction" minOccurs="0"/>
  1321. <xsd:element name="TrafficSwarmAction" type="TrafficSwarmAction" minOccurs="0"/>
  1322. </xsd:choice>
  1323. </xsd:complexType>
  1324. <xsd:complexType name="TrafficDefinition">
  1325. <xsd:all>
  1326. <xsd:element name="VehicleCategoryDistribution" type="VehicleCategoryDistribution"/>
  1327. <xsd:element name="ControllerDistribution" type="ControllerDistribution"/>
  1328. </xsd:all>
  1329. <xsd:attribute name="name" type="String" use="required"/>
  1330. </xsd:complexType>
  1331. <xsd:complexType name="TrafficSignalAction">
  1332. <xsd:choice>
  1333. <xsd:element name="TrafficSignalControllerAction" type="TrafficSignalControllerAction" minOccurs="0"/>
  1334. <xsd:element name="TrafficSignalStateAction" type="TrafficSignalStateAction" minOccurs="0"/>
  1335. </xsd:choice>
  1336. </xsd:complexType>
  1337. <xsd:complexType name="TrafficSignalCondition">
  1338. <xsd:attribute name="name" type="String" use="required"/>
  1339. <xsd:attribute name="state" type="String" use="required"/>
  1340. </xsd:complexType>
  1341. <xsd:complexType name="TrafficSignalController">
  1342. <xsd:sequence>
  1343. <xsd:element name="Phase" type="Phase" minOccurs="0" maxOccurs="unbounded"/>
  1344. </xsd:sequence>
  1345. <xsd:attribute name="delay" type="Double"/>
  1346. <xsd:attribute name="name" type="String" use="required"/>
  1347. <xsd:attribute name="reference" type="String"/>
  1348. </xsd:complexType>
  1349. <xsd:complexType name="TrafficSignals">
  1350. <xsd:sequence>
  1351. <xsd:element name="TrafficSignalController" type="TrafficSignalController" minOccurs="0" maxOccurs="unbounded"/>
  1352. </xsd:sequence>
  1353. </xsd:complexType>
  1354. <xsd:complexType name="TrafficSignalControllerAction">
  1355. <xsd:attribute name="trafficSignalControllerRef" type="String" use="required"/>
  1356. <xsd:attribute name="phase" type="String" use="required"/>
  1357. </xsd:complexType>
  1358. <xsd:complexType name="TrafficSignalControllerCondition">
  1359. <xsd:attribute name="trafficSignalControllerRef" type="String" use="required"/>
  1360. <xsd:attribute name="phase" type="String" use="required"/>
  1361. </xsd:complexType>
  1362. <xsd:complexType name="TrafficSignalState">
  1363. <xsd:attribute name="state" type="String" use="required"/>
  1364. <xsd:attribute name="trafficSignalId" type="String" use="required"/>
  1365. </xsd:complexType>
  1366. <xsd:complexType name="TrafficSignalStateAction">
  1367. <xsd:attribute name="name" type="String" use="required"/>
  1368. <xsd:attribute name="state" type="String" use="required"/>
  1369. </xsd:complexType>
  1370. <xsd:complexType name="TrafficSinkAction">
  1371. <xsd:all>
  1372. <xsd:element name="Position" type="Position"/>
  1373. <xsd:element name="TrafficDefinition" type="TrafficDefinition" minOccurs="0"/>
  1374. </xsd:all>
  1375. <xsd:attribute name="radius" type="Double" use="required"/>
  1376. <xsd:attribute name="rate" type="Double"/>
  1377. </xsd:complexType>
  1378. <xsd:complexType name="TrafficSourceAction">
  1379. <xsd:all>
  1380. <xsd:element name="Position" type="Position"/>
  1381. <xsd:element name="TrafficDefinition" type="TrafficDefinition"/>
  1382. </xsd:all>
  1383. <xsd:attribute name="radius" type="Double" use="required"/>
  1384. <xsd:attribute name="rate" type="Double" use="required"/>
  1385. <xsd:attribute name="velocity" type="Double"/>
  1386. </xsd:complexType>
  1387. <xsd:complexType name="TrafficSwarmAction">
  1388. <xsd:all>
  1389. <xsd:element name="CentralObject" type="CentralSwarmObject"/>
  1390. <xsd:element name="TrafficDefinition" type="TrafficDefinition"/>
  1391. </xsd:all>
  1392. <xsd:attribute name="innerRadius" type="Double" use="required"/>
  1393. <xsd:attribute name="numberOfVehicles" type="UnsignedInt" use="required"/>
  1394. <xsd:attribute name="offset" type="Double" use="required"/>
  1395. <xsd:attribute name="semiMajorAxis" type="Double" use="required"/>
  1396. <xsd:attribute name="semiMinorAxis" type="Double" use="required"/>
  1397. <xsd:attribute name="velocity" type="Double"/>
  1398. </xsd:complexType>
  1399. <xsd:complexType name="Trajectory">
  1400. <xsd:sequence>
  1401. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  1402. <xsd:element name="Shape" type="Shape"/>
  1403. </xsd:sequence>
  1404. <xsd:attribute name="closed" type="Boolean" use="required"/>
  1405. <xsd:attribute name="name" type="String" use="required"/>
  1406. </xsd:complexType>
  1407. <xsd:complexType name="TrajectoryCatalogLocation">
  1408. <xsd:all>
  1409. <xsd:element name="Directory" type="Directory"/>
  1410. </xsd:all>
  1411. </xsd:complexType>
  1412. <xsd:complexType name="TrajectoryFollowingMode">
  1413. <xsd:attribute name="followingMode" type="FollowingMode" use="required"/>
  1414. </xsd:complexType>
  1415. <xsd:complexType name="TransitionDynamics">
  1416. <xsd:attribute name="dynamicsDimension" type="DynamicsDimension" use="required"/>
  1417. <xsd:attribute name="dynamicsShape" type="DynamicsShape" use="required"/>
  1418. <xsd:attribute name="value" type="Double" use="required"/>
  1419. </xsd:complexType>
  1420. <xsd:complexType name="TraveledDistanceCondition">
  1421. <xsd:attribute name="value" type="Double" use="required"/>
  1422. </xsd:complexType>
  1423. <xsd:complexType name="Trigger">
  1424. <xsd:sequence>
  1425. <xsd:element name="ConditionGroup" type="ConditionGroup" minOccurs="0" maxOccurs="unbounded"/>
  1426. </xsd:sequence>
  1427. </xsd:complexType>
  1428. <xsd:complexType name="TriggeringEntities">
  1429. <xsd:sequence>
  1430. <xsd:element name="EntityRef" type="EntityRef" maxOccurs="unbounded"/>
  1431. </xsd:sequence>
  1432. <xsd:attribute name="triggeringEntitiesRule" type="TriggeringEntitiesRule" use="required"/>
  1433. </xsd:complexType>
  1434. <xsd:complexType name="UserDefinedAction">
  1435. <xsd:sequence>
  1436. <xsd:element name="CustomCommandAction" type="CustomCommandAction"/>
  1437. </xsd:sequence>
  1438. </xsd:complexType>
  1439. <xsd:complexType name="UserDefinedValueCondition">
  1440. <xsd:attribute name="name" type="String" use="required"/>
  1441. <xsd:attribute name="rule" type="Rule" use="required"/>
  1442. <xsd:attribute name="value" type="String" use="required"/>
  1443. </xsd:complexType>
  1444. <xsd:complexType name="Vehicle">
  1445. <xsd:all>
  1446. <xsd:element name="ParameterDeclarations" type="ParameterDeclarations" minOccurs="0"/>
  1447. <xsd:element name="BoundingBox" type="BoundingBox"/>
  1448. <xsd:element name="Performance" type="Performance"/>
  1449. <xsd:element name="Axles" type="Axles"/>
  1450. <xsd:element name="Properties" type="Properties"/>
  1451. </xsd:all>
  1452. <xsd:attribute name="name" type="String" use="required"/>
  1453. <xsd:attribute name="vehicleCategory" type="VehicleCategory" use="required"/>
  1454. </xsd:complexType>
  1455. <xsd:complexType name="VehicleCatalogLocation">
  1456. <xsd:all>
  1457. <xsd:element name="Directory" type="Directory"/>
  1458. </xsd:all>
  1459. </xsd:complexType>
  1460. <xsd:complexType name="VehicleCategoryDistribution">
  1461. <xsd:sequence>
  1462. <xsd:element name="VehicleCategoryDistributionEntry" type="VehicleCategoryDistributionEntry" maxOccurs="unbounded"/>
  1463. </xsd:sequence>
  1464. </xsd:complexType>
  1465. <xsd:complexType name="VehicleCategoryDistributionEntry">
  1466. <xsd:attribute name="category" type="VehicleCategory" use="required"/>
  1467. <xsd:attribute name="weight" type="Double" use="required"/>
  1468. </xsd:complexType>
  1469. <xsd:complexType name="Vertex">
  1470. <xsd:sequence>
  1471. <xsd:element name="Position" type="Position"/>
  1472. </xsd:sequence>
  1473. <xsd:attribute name="time" type="Double" use="required"/>
  1474. </xsd:complexType>
  1475. <xsd:complexType name="VisibilityAction">
  1476. <xsd:attribute name="graphics" type="Boolean" use="required"/>
  1477. <xsd:attribute name="sensors" type="Boolean" use="required"/>
  1478. <xsd:attribute name="traffic" type="Boolean" use="required"/>
  1479. </xsd:complexType>
  1480. <xsd:complexType name="Waypoint">
  1481. <xsd:sequence>
  1482. <xsd:element name="Position" type="Position"/>
  1483. </xsd:sequence>
  1484. <xsd:attribute name="routeStrategy" type="RouteStrategy" use="required"/>
  1485. </xsd:complexType>
  1486. <xsd:complexType name="Weather">
  1487. <xsd:all>
  1488. <xsd:element name="Sun" type="Sun"/>
  1489. <xsd:element name="Fog" type="Fog"/>
  1490. <xsd:element name="Precipitation" type="Precipitation"/>
  1491. </xsd:all>
  1492. <xsd:attribute name="cloudState" type="CloudState" use="required"/>
  1493. </xsd:complexType>
  1494. <xsd:complexType name="WorldPosition">
  1495. <xsd:attribute name="h" type="Double"/>
  1496. <xsd:attribute name="p" type="Double"/>
  1497. <xsd:attribute name="r" type="Double"/>
  1498. <xsd:attribute name="x" type="Double" use="required"/>
  1499. <xsd:attribute name="y" type="Double" use="required"/>
  1500. <xsd:attribute name="z" type="Double"/>
  1501. </xsd:complexType>
  1502. </xsd:schema>