git_bsmd/nsw/Herberg/inlandPosition.xsd
2015-03-29 13:31:25 +00:00

231 lines
8.3 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema elementFormDefault="unqualified"
attributeFormDefault="unqualified" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.fleettracker.de/api/1.0" xmlns:tns="http://www.fleettracker.de/api/1.0"
targetNamespace="http://www.fleettracker.de/api/1.0">
<xsd:include schemaLocation="position.xsd" />
<!--
#######################################################################
These definition are used to define inland position data types.
-->
<!--
#######################################################################
-->
<xsd:complexType name="InlandDistance">
<xsd:annotation>
<xsd:documentation>This is the distance on a river.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="distanceValue" type="xsd:double"
minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the current value in the given unit.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="distanceUnit" minOccurs="1"
maxOccurs="1" default="METER">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="METER" />
<xsd:enumeration value="STATMILE" />
<xsd:enumeration value="KM" />
<xsd:enumeration value="NAUTICALMILE" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="InlandSpeed">
<xsd:annotation>
<xsd:documentation>This is the speed of a target.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="speedValue" type="xsd:double"
minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the current value in the given unit.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="speedUnit" minOccurs="1"
maxOccurs="1" default="METER_PER_SECOND">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="METER_PER_SECOND" />
<xsd:enumeration value="STATMILES_PER_HOUR" />
<xsd:enumeration value="KM_PER_HOUR" />
<xsd:enumeration value="KNOTS" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="River">
<xsd:annotation>
<xsd:documentation>This represents a river.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="rivername" type="xsd:string"
minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the river name.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="riverabbr" type="xsd:string"
minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the river abbreviation.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="MilesMarker">
<xsd:annotation>
<xsd:documentation>This represents a miles marker entry.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="miles" type="xsd:float" minOccurs="1"
maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the river mile or kilometer.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="unit" default="STATMILES" minOccurs="0"
maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the unit of the miles.
</xsd:documentation>
</xsd:annotation>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="STATMILES" />
<xsd:enumeration value="KM" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="river" type="tns:River" minOccurs="1"
maxOccurs="1">
<xsd:annotation>
<xsd:documentation>This is the river.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="MilesMarkerWithPosition">
<xsd:annotation>
<xsd:documentation>This represents a miles marker entry with a
geographic position.
</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="tns:MilesMarker">
<xsd:sequence>
<xsd:element name="position" type="tns:Position"
minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The geographic position of this miles marker
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="MilesMarkerWithPositionList">
<xsd:annotation>
<xsd:documentation>This represents a set of miles marker entry with a
geographic position.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="entries" type="tns:MilesMarkerWithPosition"
minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>A set of miles marker entries with positions.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="NoPassingZone">
<xsd:annotation>
<xsd:documentation>This represents a no passing zone.
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="id" type="xsd:int" minOccurs="1"
maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The mandatory unique id
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="name" type="xsd:string" minOccurs="0"
maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The optional name for identification.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="start" type="tns:MilesMarker"
minOccurs="1" maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The begin of the no passing zone. This is always
the lower mile marker.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="end" type="tns:MilesMarker" minOccurs="1"
maxOccurs="1">
<xsd:annotation>
<xsd:documentation>The end of the no passing zone. This is always
the higher mile marker.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!--
#######################################################################
-->
<xsd:complexType name="NoPassingZoneList">
<xsd:annotation>
<xsd:documentation>This represents a set of no passing zones
</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="entries" type="tns:NoPassingZone"
minOccurs="0" maxOccurs="unbounded">
<xsd:annotation>
<xsd:documentation>A set of NoPassingZone objects.
</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>