The base schema document does not directly include any definitions for access technology elements.
<?xml version="1.0"?> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://sitacs.uow.edu.au/ns/location/flap/beep" xmlns="http://sitacs.uow.edu.au/ns/location/flap/beep" elementFormDefault="qualified" attributeFormDefault="unqualified" finalDefault="extension"> <xsd:annotat ion> <xsd:documentation> This schema describes the format of messages exchanged between a LIS and ALE. </xsd:documentation> </xsd:annotation> <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/> <!-- ============= Miscellaneous Messages ================ --> <xsd:element name="ns-prefix" type="ns-prefixType"> <xsd:annotation> <xsd:documentation> The error element indicates an error with a particular message, the stream or the session as a whole. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:complexType name="ns-prefixType" final="#all"> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence> <xsd:any namespace="##any" processContents="strict" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:element name="error" type="errorType"> <xsd:annotation> <xsd:documentation> The error element indicates an error with a particular message, the stream or the session as a whole. </xsd:documentation> </xsd:annotation> </xsd:element> <xsd:simpleType name="errorText" final="restriction"> <xsd:restriction base="xsd:normalizedString"> <xsd:maxLength value="256"/> </xsd:restriction> </xsd:simpleType> <xsd:complexType name="errorType" final="#all"> <xsd:simpleContent> <xsd:extension base="errorText"> <xsd:attribute name="cause" type="resultCodeType" use="required"/> <xsd:attribute ref="xml:lang" use="optional"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <!-- ============== Core Message Types =================== --> <xsd:complexType name="messageType" abstract="true" final="restriction"> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:attribute name="tech" type="xsd:anyURI"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="responseType"> <xsd:complexContent> <xsd:extension base="messageType"> <xsd:sequence minOccurs="0"> <xsd:element ref="terminal" minOccurs="0"/> <xsd:element ref="access" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="result" type="resultCodeType" use=" required"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ntfyType" final="extension"> <xsd:complexContent> <xsd:extension base="messageType"> <xsd:sequence> <xsd:element ref="terminal"/> <xsd:element ref="access"/> </xsd:sequence> <xsd:attribute name="ale" type="ipAddress"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="syncType" final="extension"> <xsd:complexContent> <xsd:extension base="messageType"> <xsd:attribute name="since" type="xsd:dateTime" use="optional"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="syncrType" final="extension"> <xsd:complexContent> <xsd:restriction base="responseType"> <xsd:sequence> <xsd:element ref="terminal"/> <xsd:element ref = "access"/> </xsd:sequence> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="aqType" final="extension"> <xsd:complexContent> <xsd:extension base="messageType"> <xsd:sequence> <xsd:element ref="terminal"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="aqrType" final="extension"> <xsd:complexContent> <xsd:restriction base="responseType"> <xsd:sequence minOccurs="0"> <xsd:element ref="terminal" minOccurs="0"/> <xsd:element ref="access"/> </xsd:sequence> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <!-- =============== Message Elements ==================== --> <xsd:element name= "_message" type= "messageType" final="" abstract="true"/> <xsd:element name="aq" type="aqType" substitutionGroup="_message" block="extension"/> <xsd:element name="aqr" type="aqrType" substitutionGroup="_message" block="extension"/> <xsd:element name="ntfy" type="ntfyType" substitutionGroup="_message" block="extension"/> <xsd:element name="sync" type="syncType" substitutionGroup="_message" block="extension"/> <xsd:element name="syncr" type="syncrType" substitutionGroup="_message" block="extension"/> <!-- ================== Base Types ======================= --> <xsd:simpleType name="resultCodeType"> <xsd:restriction base="xsd:token"> <xsd:pattern value="\d{3}"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="ipAddress"> <xsd:annotation> <xsd:documentation> This represents any IP address, IPv4 or IPv6. </xsd:documentation> </xsd:annotation> <xsd:union memberTypes="ipv4 ipv6"/> </xsd:simpleType> <xsd:simpleType name="ipv4"> <xsd:annotation> <xsd:documentation> An IP version 4 address. </xsd:documentation> </xsd:annotation> <xsd:restriction base="xsd:token"> <xsd:pattern value="(25 [0-5] |2 [0-4] [0-9] [0-l]?[0-9]?[0-9])\.(25 [0- 5] |2 [0-4] [0-9] I [0-1] ? [0-l]?[0-9]?[0-9])\.(25[0-5] |2 [0-4] [0-9] I [0-1]?[0-9] ? [0- 9])\.(25[0-5] I2 [0-4] [0-9] [0-9]?[0-9])"/> <xsd:pattern value="[0-9A-Fa-f]{8}"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="ipv6"> <xsd:annotation> <xsd:documentation> An IP version 6 address, based on RFC 2373. </xsd:documentation> </xsd:annotation> <xsd:restriction base="xsd:token"> <xsd:pattern value="[0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4})(7}"/> <xsd:pattern value=":(:[0-9A-Fa-f]{1,4})(1,7}"/> <xsd:pattern value="([0-9A-Fa-f]{l,4}:){1,6}(:[0-9A-Fa-f]{1,4}){1}"/> <xsd:pattern value="([0-9A-Fa-f]{l,4}:){l,5}(:[0-9A-Fa-f]{1,4}){l,2}"/> <xsd:pattern value="([0-9A-Fa-f]{l,4}:){l,4}(:[0-9A-Fa-f]{1,4}){l,3}"/> <xsd:pattern value="([0-9A-Fa-f]{l,4}:){l,3}(:[0-9A-Fa-f]{1,4}){l,4}"/> <xsd:pattern value="([0-9A-Fa-f]{1,4}:){l,2}(:[0-9A-Fa-f]{1,4}){l,5}"/> <xsd:pattern value="([0-9A-Fa-f]{l,4}:){1}(:[0-9A-Fa-f]{1,4}){l,6}"/> <xsd:pattern value="([0-9A-Fa-f]{1,4}:){l,7}:"/> <xsd:pattern value="((:(:0{l,4}){0,3}(:(0{l,4}|[fF]{4}))?)|(0{1,4}:(:0{ 1,4}){0,2}(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){2}(:0{1,4})?(:(0{1,4}|[fF]{4}))?)| ((0{1,4}:){3}(:(0{1,4}|[fF]{4}))?)|((0{1,4}:){4}(0{1,4}|[fF]{4})?)):(25[0- 5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0- 9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0-9]?[0-9])\.(25[0-5]|2[0-4][0-9]|[0-1]?[0- 9]?[0-9])"/> <xsd:pattern value="::"/> </xsd:restriction> </xsd:simpleType> <!-- ============== Element Definitions ================== --> <xsd:element name="terminal" type="terminalType"/> <xsd:complexType name="terminalType" abstract="true" final="extension"> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence> <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:element name="access" type="accessType"/> <xsd:complexType name="accessType" abstract="true" final="extension"> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence minOccurs="0"> <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="time" type="xsd:dateTime" use="required"/> <xsd:attribute name="expires" type="xsd:dateTime" use="optional"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:element name="ip" type="ipAddress"/> <xsd:element name="_vendor" type="vendorExtensionType" abstract="true"/> <xsd:complexType name="vendorExtensionType" abstract="true" final="extension"> <xsd:complexContent> <xsd:restriction base="xsd:anyType"> <xsd:sequence> <xsd:any namespace="##any" processContents="strict" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute ref="vendor" use="optional"/> <xsd:anyAttribute namespace="##any" processContents="strict"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:attribute name="vendor" type="xsd:anyURI"/> </xsd:schema>