Commit 5f06ad19 authored by Markus Koschi's avatar Markus Koschi

added Release 2017a

parent 9299ee52
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<?xml version="1.0" encoding="UTF-8" ?>
<!--
XSD for CommonRoad benchmark scenarios
commonRoadVersion="2017a" date="2018-03-23"
author="Markus Koschi"
website="commonroad.in.tum.de"
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- %%%%%%%%%%%%%%% auxiliary xsd elements %%%%%%%%%%%%%%% -->
<!-- distance in meter (positive floats) -->
<xs:simpleType name="distance">
<xs:restriction base="xs:float">
<xs:minExclusive value="0.0" />
</xs:restriction>
</xs:simpleType>
<!-- value: either exact or interval -->
<xs:complexType name="floatInterval">
<xs:choice>
<xs:element name="exact" type="xs:float" />
<xs:sequence>
<xs:element name="intervalStart" type="xs:float" />
<xs:element name="intervalEnd" type="xs:float" />
</xs:sequence>
</xs:choice>
</xs:complexType>
<!-- %%%%%%%%%%%%%%% auxiliary CommonRoad elements %%%%%%%%%%%%%%% -->
<xs:complexType name="point">
<xs:sequence>
<xs:element name="x" type="xs:float" />
<xs:element name="y" type="xs:float" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="rectangle">
<xs:sequence>
<xs:element name="length" type="distance" />
<xs:element name="width" type="distance" />
<xs:element name="orientation" type="xs:float" minOccurs="0" />
<xs:element name="center" type="point" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="circle">
<xs:sequence>
<xs:element name="radius" type="distance" />
<xs:element name="center" type="point" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="polygon">
<xs:sequence>
<xs:element name="point" type="point"
minOccurs="3" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="shape">
<xs:choice maxOccurs="unbounded">
<xs:element name="rectangle" type="rectangle" />
<xs:element name="circle" type="circle" />
<xs:element name="polygon" type="polygon" />
</xs:choice>
</xs:complexType>
<xs:complexType name="position">
<xs:choice>
<xs:element name="point" type="point" />
<xs:element name="rectangle" type="rectangle" maxOccurs="unbounded" />
<xs:element name="circle" type="circle" maxOccurs="unbounded" />
<xs:element name="polygon" type="polygon" maxOccurs="unbounded" />
<xs:element name="lanelet" type="laneletRef" maxOccurs="unbounded" />
</xs:choice>
</xs:complexType>
<xs:complexType name="state">
<xs:sequence>
<xs:element name="position" type="position" />
<xs:element name="orientation" type="floatInterval" />
<xs:element name="time" type="floatInterval" />
<xs:element name="velocity" type="floatInterval" minOccurs="0" />
<xs:element name="acceleration" type="floatInterval" minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="initialState">
<xs:all>
<xs:element name="position" type="position" />
<xs:element name="velocity" type="floatInterval" />
<xs:element name="orientation" type="floatInterval" />
<xs:element name="yawRate" type="floatInterval" />
<xs:element name="slipAngle" type="floatInterval" />
<xs:element name="time" type="floatInterval" />
</xs:all>
</xs:complexType>
<xs:complexType name="occupancy">
<xs:sequence>
<xs:element name="shape" type="shape" />
<xs:element name="time" type="floatInterval" />
</xs:sequence>
</xs:complexType>
<!-- %%%%%%%%%%%%%%% main CommonRoad elements %%%%%%%%%%%%%%% -->
<!-- lanelet -->
<xs:simpleType name="lineMarking">
<xs:restriction base="xs:string">
<xs:enumeration value="dashed" />
<xs:enumeration value="solid" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="bound">
<xs:sequence>
<xs:element name="point" type="point"
minOccurs="2" maxOccurs="unbounded" />
<xs:element name="lineMarking" type="lineMarking"
minOccurs="0" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="laneletRef">
<xs:attribute name="ref" type="xs:integer" use="required" />
</xs:complexType>
<xs:simpleType name="drivingDir">
<xs:restriction base="xs:string">
<xs:enumeration value="same" />
<xs:enumeration value="opposite" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="laneletAdjacentRef">
<xs:attribute name="ref" type="xs:integer" use="required" />
<xs:attribute name="drivingDir" type="drivingDir"
use="required" />
</xs:complexType>
<xs:complexType name="lanelet">
<xs:sequence>
<xs:element name="leftBound" type="bound" />
<xs:element name="rightBound" type="bound" />
<xs:element name="predecessor" type="laneletRef"
minOccurs="0" maxOccurs="unbounded" />
<xs:element name="successor" type="laneletRef"
minOccurs="0" maxOccurs="unbounded" />
<xs:element name="adjacentLeft" type="laneletAdjacentRef"
minOccurs="0" />
<xs:element name="adjacentRight" type="laneletAdjacentRef"
minOccurs="0" />
<xs:element name="speedLimit" type="xs:float"
minOccurs="0" />
</xs:sequence>
<xs:attribute name="id" type="xs:integer" use="required" />
</xs:complexType>
<!-- obstacle -->
<xs:simpleType name="obstacleRole">
<xs:restriction base="xs:string">
<xs:enumeration value="static" />
<xs:enumeration value="dynamic" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="obstacleType">
<xs:restriction base="xs:string">
<xs:enumeration value="unknown" />
<!-- static -->
<xs:enumeration value="parkedVehicle" />
<xs:enumeration value="constructionZone" />
<xs:enumeration value="roadBoundary" />
<!-- dynamic -->
<xs:enumeration value="car" />
<xs:enumeration value="truck" />
<xs:enumeration value="bus" />
<xs:enumeration value="bicycle" />
<xs:enumeration value="pedestrian" />
<xs:enumeration value="priorityVehicle" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="obstacle">
<xs:sequence>
<xs:element name="role" type="obstacleRole" />
<xs:element name="type" type="obstacleType" />
<xs:element name="shape" type="shape"
minOccurs="0" />
<xs:choice minOccurs="0">
<xs:element name="trajectory">
<xs:complexType>
<xs:sequence>
<xs:element name="state" type="state"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="occupancySet">
<xs:complexType>
<xs:sequence>
<xs:element name="occupancy" type="occupancy"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:sequence>
<xs:attribute name="id" type="xs:integer" use="required" />
</xs:complexType>
<!-- planning problem -->
<xs:complexType name="planningProblem">
<xs:sequence>
<xs:element name="initialState" type="initialState" />
<xs:element name="goalRegion">
<xs:complexType>
<xs:sequence>
<xs:element name="state" type="state"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="id" type="xs:integer" use="required" />
</xs:complexType>
<!-- %%%%%%%%%%%%%%% root CommonRoad element %%%%%%%%%%%%%%% -->
<xs:element name="commonRoad">
<xs:complexType>
<xs:sequence>
<xs:element name="lanelet" type="lanelet"
minOccurs="1" maxOccurs="unbounded" />
<xs:element name="obstacle" type="obstacle"
minOccurs="0" maxOccurs="unbounded" />
<xs:element name="planningProblem" type="planningProblem"
minOccurs="1" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="commonRoadVersion" use="required">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="2017a" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="benchmarkID" type="xs:string"
use="required" />
<xs:attribute name="date" type="xs:date"
use="required" />
<xs:attribute name="timeStepSize" type="xs:float"
use="required" />
</xs:complexType>
<xs:key name="id">
<xs:selector xpath="./*" />
<xs:field xpath="@id" />
</xs:key>
<xs:keyref name="idref" refer="id">
<xs:selector xpath=".//*" />
<xs:field xpath="@ref" />
</xs:keyref>
</xs:element>
</xs:schema>
\ No newline at end of file
<?xml version='1.0' encoding='utf-8'?>
<commonRoad commonRoadVersion='2017a' benchmarkID='minimalWorkingExample' date='2017-08-25' timeStepSize='0.1'>
<!-- (1) Road Network -->
<lanelet id='10'>
<leftBound>
<point>
<x>-15.0</x>
<y>2.0</y>
</point>
<point>
<x>0.0</x>
<y>2.0</y>
</point>
<lineMarking>dashed</lineMarking>
</leftBound>
<rightBound>
<point>
<x>-15.0</x>
<y>-2.0</y>
</point>
<point>
<x>0.0</x>
<y>-2.0</y>
</point>
<lineMarking>solid</lineMarking>
</rightBound>
<successor ref='11'/>
<adjacentLeft ref='12' drivingDir='opposite'/>
<speedLimit>16.67</speedLimit>
</lanelet>
<lanelet id='11'>
<leftBound>
<point>
<x>0.0</x>
<y>2.0</y>
</point>
<point>
<x>15.0</x>
<y>2.0</y>
</point>
<lineMarking>dashed</lineMarking>
</leftBound>
<rightBound>
<point>
<x>0.0</x>
<y>-2.0</y>
</point>
<point>
<x>15.0</x>
<y>-2.0</y>
</point>
<lineMarking>solid</lineMarking>
</rightBound>
<predecessor ref='10'/>
<adjacentLeft ref='13' drivingDir='opposite'/>
<speedLimit>16.67</speedLimit>
</lanelet>
<lanelet id='12'>
<leftBound>
<point>
<x>15.0</x>
<y>2.0</y>
</point>
<point>
<x>0.0</x>
<y>2.0</y>
</point>
<lineMarking>dashed</lineMarking>
</leftBound>
<rightBound>
<point>
<x>15.0</x>
<y>6.0</y>
</point>
<point>
<x>0.0</x>
<y>6.0</y>
</point>
<lineMarking>solid</lineMarking>
</rightBound>
<successor ref='13'/>
<adjacentLeft ref='11' drivingDir='opposite'/>
</lanelet>
<lanelet id='13'>
<leftBound>
<point>
<x>0.0</x>
<y>2.0</y>
</point>
<point>
<x>-15.0</x>
<y>2.0</y>
</point>
<lineMarking>dashed</lineMarking>
</leftBound>
<rightBound>
<point>
<x>0.0</x>
<y>6.0</y>
</point>
<point>
<x>-15.0</x>
<y>6.0</y>
</point>
<lineMarking>solid</lineMarking>
</rightBound>
<predecessor ref='12'/>
<adjacentLeft ref='10' drivingDir='opposite'/>
</lanelet>
<!-- (2) Traffic -->
<!-- (2.1) Static Obstacle -->
<obstacle id='57'>
<role>static</role>
<type>parkedVehicle</type>
<shape>
<rectangle>
<length>4.2</length>
<width>1.9</width>
<orientation>3.142</orientation>
<center>
<x>1.0</x>
<y>5.0</y>
</center>
</rectangle>
</shape>
</obstacle>
<!-- (2.2) Dynamic Obstacle with known behavior -->
<obstacle id='58'>
<role>dynamic</role>
<type>car</type>
<shape>
<rectangle>
<length>4.2</length>
<width>1.9</width>
</rectangle>
</shape>
<trajectory>
<state>
<position>
<point>
<x>-10.0</x>
<y>0.0</y>
</point>
</position>
<orientation>
<exact>0.0</exact>
</orientation>
<time>
<exact>0.0</exact>
</time>
<velocity>
<exact>15.0</exact>
</velocity>
<acceleration>
<exact>0.0</exact>
</acceleration>
</state>
<state>
<position>
<point>
<x>-8.5</x>
<y>0.0</y>
</point>
</position>
<orientation>
<exact>0.0</exact>
</orientation>
<time>
<exact>0.1</exact>
</time>
<velocity>
<exact>15.0</exact>
</velocity>
<acceleration>
<exact>0.0</exact>
</acceleration>
</state>
</trajectory>
</obstacle>
<!-- (3) Planning Problem -->
<planningProblem id='100'>
<initialState>
<position>
<point>
<x>10.0</x>
<y>4.0</y>
</point>
</position>
<velocity>
<exact>15.0</exact>
</velocity>
<orientation>
<exact>3.142</exact>
</orientation>
<yawRate>
<exact>0.0</exact>
</yawRate>
<slipAngle>
<exact>0.001</exact>
</slipAngle>
<time>
<exact>0.0</exact>
</time>
</initialState>
<goalRegion>
<state>
<position>
<rectangle>
<length>3</length>
<width>2</width>
<orientation>3.142</orientation>
<center>
<x>-10.0</x>
<y>4.0</y>
</center>
</rectangle>
</position>
<orientation>
<intervalStart>1.50</intervalStart>
<intervalEnd>1.65</intervalEnd>
</orientation>
<time>
<intervalStart>0.0</intervalStart>
<intervalEnd>10.0</intervalEnd>
</time>
</state>
</goalRegion>
</planningProblem>
</commonRoad>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.