Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
tum-cps
commonroad-scenarios
Commits
d9fef3e0
Commit
d9fef3e0
authored
Oct 05, 2021
by
Moritz Klischat
Browse files
update scenario XSD
parent
4a5500af
Changes
1
Hide whitespace changes
Inline
Side-by-side
documentation/XML_commonRoad_XSD_2020a.xsd
View file @
d9fef3e0
<?xml version="1.0" encoding="UTF-8"?>
<!--
__author__ = "Markus Koschi, Anna-Katharina Retting
er, Sebastian Maierhof
er"
__author__ = "Markus Koschi,
Sebastian Maierhofer,
Anna-Katharina Rettinger"
__copyright__ = "TUM Cyber-Physical System Group"
__credits__ = ["BMW Group CAR@TUM"]
__version__ = "2020
b
"
__maintainer__ = "
Markus Koschi
"
__email__ = "commonroad
-i06@in.tum
.de"
__version__ = "2020
a
"
__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"
>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment