Commit d9fef3e0 authored by Moritz Klischat's avatar Moritz Klischat
Browse files

update scenario XSD

parent 4a5500af
<?xml version="1.0" encoding="UTF-8"?>
<!--
__author__ = "Markus Koschi, Anna-Katharina Rettinger, Sebastian Maierhofer"
__author__ = "Markus Koschi, Sebastian Maierhofer, Anna-Katharina Rettinger"
__copyright__ = "TUM Cyber-Physical System Group"
__credits__ = ["BMW Group CAR@TUM"]
__version__ = "2020b"
__maintainer__ = "Markus Koschi"
__email__ = "commonroad-i06@in.tum.de"
__version__ = "2020a"
__maintainer__ = "Sebastian Maierhofer"
__email__ = "commonroad@lists.lrz.de"
__status__ = "released"
""" XSD for CommonRoad benchmark scenarios """
......@@ -256,6 +256,8 @@ __status__ = "released"
<xs:enumeration value="solid"/>
<xs:enumeration value="broad_dashed"/>
<xs:enumeration value="broad_solid"/>
<xs:enumeration value="unknown"/>
<xs:enumeration value="no_marking"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="bound">
......@@ -288,7 +290,7 @@ __status__ = "released"
<xs:element name="point" type="point" minOccurs="0" maxOccurs="2"/>
<xs:element name="lineMarking" type="lineMarking"/>
<xs:element name="trafficSignRef" type="trafficSignRef" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="trafficLightRef" type="trafficLightRef" minOccurs="0" maxOccurs="1"/>
<xs:element name="trafficLightRef" type="trafficLightRef" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="laneletType">
......@@ -304,8 +306,10 @@ __status__ = "released"
<xs:enumeration value="exitRamp"/>
<xs:enumeration value="mainCarriageWay"/>
<xs:enumeration value="accessRamp"/>
<xs:enumeration value="shoulder"/>
<xs:enumeration value="driveWay"/>
<xs:enumeration value="busStop"/>
<xs:enumeration value="intersection"/>
<xs:enumeration value="unknown"/>
</xs:restriction>
</xs:simpleType>
......@@ -320,6 +324,7 @@ __status__ = "released"
<xs:enumeration value="pedestrian"/>
<xs:enumeration value="priorityVehicle"/>
<xs:enumeration value="train"/>
<xs:enumeration value="taxi"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="lanelet">
......@@ -335,33 +340,121 @@ __status__ = "released"
<xs:element name="userOneWay" type="vehicleType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="userBidirectional" type="vehicleType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="trafficSignRef" type="trafficSignRef" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="trafficLightRef" type="trafficLightRef" minOccurs="0"/>
<xs:element name="trafficLightRef" type="trafficLightRef" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
</xs:complexType>
<!-- intersections -->
<xs:simpleType name="trafficSignID">
<xs:restriction base="xs:string">
<xs:enumeration value="206"/>
<xs:enumeration value="101"/>
<xs:enumeration value="102"/>
<xs:enumeration value="108"/>
<xs:enumeration value="114"/>
<xs:enumeration value="123"/>
<xs:enumeration value="138"/>
<xs:enumeration value="142-10"/>
<xs:enumeration value="201"/>
<xs:enumeration value="205"/>
<xs:enumeration value="206"/>
<xs:enumeration value="208"/>
<xs:enumeration value="209"/>
<xs:enumeration value="209-10"/>
<xs:enumeration value="209-20"/>
<xs:enumeration value="215"/>
<xs:enumeration value="220-10"/>
<xs:enumeration value="220-20"/>
<xs:enumeration value="222-10"/>
<xs:enumeration value="222-20"/>
<xs:enumeration value="237"/>
<xs:enumeration value="239"/>
<xs:enumeration value="242.1"/>
<xs:enumeration value="242.2"/>
<xs:enumeration value="244.1"/>
<xs:enumeration value="244.2"/>
<xs:enumeration value="245"/>
<xs:enumeration value="250"/>
<xs:enumeration value="251"/>
<xs:enumeration value="253"/>
<xs:enumeration value="254"/>
<xs:enumeration value="255"/>
<xs:enumeration value="257-54"/>
<xs:enumeration value="259"/>
<xs:enumeration value="260"/>
<xs:enumeration value="261"/>
<xs:enumeration value="262"/>
<xs:enumeration value="264"/>
<xs:enumeration value="265"/>
<xs:enumeration value="266"/>
<xs:enumeration value="267"/>
<xs:enumeration value="272"/>
<xs:enumeration value="274"/>
<xs:enumeration value="274.1"/>
<xs:enumeration value="274.2"/>
<xs:enumeration value="275"/>
<xs:enumeration value="276"/>
<xs:enumeration value="277"/>
<xs:enumeration value="278"/>
<xs:enumeration value="281"/>
<xs:enumeration value="282"/>
<xs:enumeration value="301"/>
<xs:enumeration value="306"/>
<xs:enumeration value="308"/>
<xs:enumeration value="310"/>
<xs:enumeration value="325.1"/>
<xs:enumeration value="325.2"/>
<xs:enumeration value="327"/>
<xs:enumeration value="330.1"/>
<xs:enumeration value="330.2"/>
<xs:enumeration value="331.1"/>
<xs:enumeration value="331.2"/>
<xs:enumeration value="333-21"/>
<xs:enumeration value="333-22"/>
<xs:enumeration value="350"/>
<xs:enumeration value="357"/>
<xs:enumeration value="625-10"/>
<xs:enumeration value="625-11"/>
<xs:enumeration value="625-12"/>
<xs:enumeration value="625-13"/>
<xs:enumeration value="625-20"/>
<xs:enumeration value="625-21"/>
<xs:enumeration value="625-22"/>
<xs:enumeration value="625-23"/>
<xs:enumeration value="626-10"/>
<xs:enumeration value="626-20"/>
<xs:enumeration value="626-30"/>
<xs:enumeration value="626-31"/>
<xs:enumeration value="720"/>
<xs:enumeration value="1000-10"/>
<xs:enumeration value="1000-11"/>
<xs:enumeration value="1000-20"/>
<xs:enumeration value="1000-21"/>
<xs:enumeration value="1000-30"/>
<xs:enumeration value="1000-31"/>
<xs:enumeration value="1001-30"/>
<xs:enumeration value="1001-31"/>
<xs:enumeration value="1002-10"/>
<xs:enumeration value="1002-11"/>
<xs:enumeration value="1002-12"/>
<xs:enumeration value="1002-13"/>
<xs:enumeration value="1002-14"/>
<xs:enumeration value="1002-20"/>
<xs:enumeration value="1002-21"/>
<xs:enumeration value="1002-22"/>
<xs:enumeration value="1002-23"/>
<xs:enumeration value="1002-11"/>
<xs:enumeration value="1002-14"/>
<xs:enumeration value="1002-21"/>
<xs:enumeration value="1002-24"/>
<xs:enumeration value="102"/>
<xs:enumeration value="1002-24"/>
<xs:enumeration value="1004-30"/>
<xs:enumeration value="1004-31"/>
<xs:enumeration value="1020-30"/>
<xs:enumeration value="1022-10"/>
<xs:enumeration value="1024-10"/>
<xs:enumeration value="1026-36"/>
<xs:enumeration value="1026-37"/>
<xs:enumeration value="1026-38"/>
<xs:enumeration value="1040-30"/>
<xs:enumeration value="1053-33"/>
<xs:enumeration value="R2-1"/>
<xs:enumeration value="R3-4"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="trafficSign">
......@@ -382,9 +475,10 @@ __status__ = "released"
<xs:simpleType name="trafficLightColor">
<xs:restriction base="xs:string">
<xs:enumeration value="red"/>
<xs:enumeration value="redYellow"/>
<xs:enumeration value="redYellow"/>
<xs:enumeration value="green"/>
<xs:enumeration value="yellow"/>
<xs:enumeration value="yellow"/>
<xs:enumeration value="inactive"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="trafficCycleElement">
......@@ -437,10 +531,11 @@ __status__ = "released"
</xs:complexType>
<xs:complexType name="incomingRef">
<xs:attribute name="ref" type="xs:integer" use="required"/>
</xs:complexType>
</xs:complexType>
<xs:complexType name="intersection">
<xs:sequence>
<xs:element name="incoming" type="incoming" minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="crossing" type="crossing" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
</xs:complexType>
......@@ -478,6 +573,7 @@ __status__ = "released"
<xs:enumeration value="pedestrian"/>
<xs:enumeration value="priorityVehicle"/>
<xs:enumeration value="train"/>
<xs:enumeration value="taxi"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="dynamicObstacle">
......@@ -512,6 +608,35 @@ __status__ = "released"
</xs:sequence>
<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
</xs:complexType>
<!-- environmentObstacle -->
<xs:simpleType name="obstacleTypeEnvironment">
<xs:restriction base="xs:string">
<xs:enumeration value="unknown"/>
<xs:enumeration value="building"/>
<xs:enumeration value="pillar"/>
<xs:enumeration value="median_strip"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="environmentObstacle">
<xs:sequence>
<xs:element name="type" type="obstacleTypeEnvironment"/>
<xs:element name="shape" type="shape"/>
</xs:sequence>
<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
</xs:complexType>
<!-- phantomObstacle -->
<xs:complexType name="phantomObstacle">
<xs:sequence>
<xs:element name="occupancySet">
<xs:complexType>
<xs:sequence>
<xs:element name="occupancy" type="occupancy" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
</xs:complexType>
<!-- planning problem -->
<xs:complexType name="planningProblem">
<xs:sequence>
......@@ -537,12 +662,48 @@ __status__ = "released"
<xs:element name="additionalTransformation" type="additionalTransformation"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="timeOfDay">
<xs:restriction base="xs:string">
<xs:enumeration value="unknown"/>
<xs:enumeration value="night"/>
<xs:enumeration value="day"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="weather">
<xs:restriction base="xs:string">
<xs:enumeration value="sunny"/>
<xs:enumeration value="light_rain"/>
<xs:enumeration value="heavy_rain"/>
<xs:enumeration value="fog"/>
<xs:enumeration value="snow"/>
<xs:enumeration value="hail"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="underground">
<xs:restriction base="xs:string">
<xs:enumeration value="wet"/>
<xs:enumeration value="clean"/>
<xs:enumeration value="dirty"/>
<xs:enumeration value="damaged"/>
<xs:enumeration value="snow"/>
<xs:enumeration value="ice"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="environment">
<xs:sequence>
<xs:element name="time" type="xs:time"/>
<xs:element name="timeOfDay" type="timeOfDay"/>
<xs:element name="weather" type="weather"/>
<xs:element name="underground" type="underground"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="location">
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="geoNameId" type="xs:integer"/>
<xs:element name="gpsLatitude" type="xs:decimal"/>
<xs:element name="gpsLongitude" type="xs:decimal"/>
<xs:element name="geoTransformation" type="geoTransformation" minOccurs="0"/>
<xs:element name="environment" type="environment" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="tag">
......@@ -558,9 +719,9 @@ __status__ = "released"
<xs:element name="intersection" type="xs:string" minOccurs="0"/>
<xs:element name="lane_change" type="xs:string" minOccurs="0"/>
<xs:element name="lane_following" type="xs:string" minOccurs="0"/>
<xs:element name="merging_lanes" type="xs:string" minOccurs="0"/>
<xs:element name="multi_lane" type="xs:string" minOccurs="0"/>
<xs:element name="no_oncoming_traffic" type="xs:string" minOccurs="0"/>
<xs:element name="merging_lanes" type="xs:string" minOccurs="0"/>
<xs:element name="multi_lane" type="xs:string" minOccurs="0"/>
<xs:element name="no_oncoming_traffic" type="xs:string" minOccurs="0"/>
<xs:element name="oncoming_traffic" type="xs:string" minOccurs="0"/>
<xs:element name="parallel_lanes" type="xs:string" minOccurs="0"/>
<xs:element name="race_track" type="xs:string" minOccurs="0"/>
......@@ -589,6 +750,8 @@ __status__ = "released"
<xs:element name="intersection" type="intersection" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="staticObstacle" type="staticObstacle" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="dynamicObstacle" type="dynamicObstacle" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="phantomObstacle" type="phantomObstacle" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="environmentObstacle" type="environmentObstacle" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="planningProblem" type="planningProblem" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="commonRoadVersion" use="required">
......@@ -606,7 +769,7 @@ __status__ = "released"
<xs:attribute name="timeStepSize" type="xs:decimal" use="required"/>
</xs:complexType>
<xs:key name="id">
<xs:selector xpath="./lanelet | ./trafficSign | ./trafficLight | ./trafficSign | ./trafficLight | ./intersection | ./staticObstacle | ./dynamicObstacle | ./planningProblem | ./intersection/incoming"/>
<xs:selector xpath="./lanelet | ./trafficSign | ./trafficLight | ./trafficSign | ./trafficLight | ./intersection | ./staticObstacle | ./dynamicObstacle| ./phantomObstacle | ./environmentObstacle | ./planningProblem | ./intersection/incoming"/>
<xs:field xpath="@id"/>
</xs:key>
<xs:keyref name="idref" refer="id">
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment