123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- <?xml version="1.0"?>
- <xs:schema
- targetNamespace="urn:ietf:params:xml:ns:geopriv:held"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:held="urn:ietf:params:xml:ns:geopriv:held"
- xmlns:xml="http://www.w3.org/XML/1998/namespace"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified">
- <xs:annotation>
- <xs:documentation>
- This document (RFC-ietf-geopriv-http-location-delivery-16) defines HELD messages.
- </xs:documentation>
- </xs:annotation>
- <xs:import namespace="http://www.w3.org/XML/1998/namespace"/>
- <!-- Return Location -->
- <xs:complexType name="returnLocationType">
- <xs:complexContent>
- <xs:restriction base="xs:anyType">
- <xs:sequence>
- <xs:element name="locationURI" type="xs:anyURI"
- maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="expires" type="xs:dateTime"
- use="required"/>
- </xs:restriction>
- </xs:complexContent>
- </xs:complexType>
- <!-- responseTime Type -->
- <xs:simpleType name="responseTimeType">
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="emergencyRouting"/>
- <xs:enumeration value="emergencyDispatch"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="xs:nonNegativeInteger">
- <xs:minInclusive value="0"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <!-- Location Type -->
- <xs:simpleType name="locationTypeBase">
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="any"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="held:locationTypeList">
- <xs:minLength value="1"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="locationTypeList">
- <xs:list>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="civic"/>
- <xs:enumeration value="geodetic"/>
- <xs:enumeration value="locationURI"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:list>
- </xs:simpleType>
- <xs:complexType name="locationTypeType">
- <xs:simpleContent>
- <xs:extension base="held:locationTypeBase">
- <xs:attribute name="exact" type="xs:boolean"
- use="optional" default="false"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <!-- Message Definitions -->
- <xs:complexType name="baseRequestType">
- <xs:complexContent>
- <xs:restriction base="xs:anyType">
- <xs:sequence/>
- <xs:attribute name="responseTime" type="held:responseTimeType"
- use="optional"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:restriction>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="errorType">
- <xs:complexContent>
- <xs:restriction base="xs:anyType">
- <xs:sequence>
- <xs:element name="message" type="held:errorMsgType"
- minOccurs="0" maxOccurs="unbounded"/>
- <xs:any namespace="##other" processContents="lax"
- minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="code" type="xs:token"
- use="required"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:restriction>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="errorMsgType">
- <xs:simpleContent>
- <xs:extension base="xs:token">
- <xs:attribute ref="xml:lang"/>
- <xs:anyAttribute namespace="##any" processContents="lax"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:element name="error" type="held:errorType"/>
- <!-- Location Response -->
- <xs:complexType name="locationResponseType">
- <xs:complexContent>
- <xs:restriction base="xs:anyType">
- <xs:sequence>
- <xs:element name="locationUriSet"
- type="held:returnLocationType"
- minOccurs="0"/>
- <xs:any namespace="##other" processContents="lax"
- minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:restriction>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="locationResponse"
- type="held:locationResponseType"/>
- <!-- Location Request -->
- <xs:complexType name="locationRequestType">
- <xs:complexContent>
- <xs:extension base="held:baseRequestType">
- <xs:sequence>
- <xs:element name="locationType"
- type="held:locationTypeType"
- minOccurs="0"/>
- <xs:any namespace="##other" processContents="lax"
- minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:element name="locationRequest"
- type="held:locationRequestType"/>
- </xs:schema>
|