Skip to content
TS_103_280.xsd 7.95 KiB
Newer Older
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/03280/common/2017/07" targetNamespace="http://uri.etsi.org/03280/common/2017/07" version="2.2.1" elementFormDefault="qualified">
    <xs:simpleType name="ShortString">
        <xs:restriction base="xs:string">
            <xs:maxLength value="255"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="LongString">
        <xs:restriction base="xs:string">
            <xs:maxLength value="65535"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="LIID">
        <xs:restriction base="xs:normalizedString">
            <xs:pattern value="([!-~]{1,25})|([0-9a-f]{26,50})"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="UTCDateTime">
        <xs:restriction base="xs:dateTime">
            <xs:pattern value="[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="UTCMicrosecondDateTime">
        <xs:restriction base="xs:dateTime">
            <xs:pattern value="[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{6}Z"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="QualifiedDateTime">
        <xs:restriction base="xs:dateTime">
            <xs:pattern value="[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(Z|[+-][0-9]{2}:[0-9]{2})"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="QualifiedMicrosecondDateTime">
        <xs:restriction base="xs:dateTime">
            <xs:pattern value="[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\.[0-9]{6}(Z|[+-][0-9]{2}:[0-9]{2})"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="InternationalE164">
        <xs:restriction base="xs:token">
            <xs:pattern value="[0-9]{1,15}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IMSI">
        <xs:restriction base="xs:token">
            <xs:pattern value="[0-9]{6,15}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IMEI">
        <xs:restriction base="xs:token">
            <xs:pattern value="[0-9]{14}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IMEICheckDigit">
        <xs:restriction base="xs:token">
            <xs:pattern value="[0-9]{15}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IPv4Address">
        <xs:restriction base="xs:token">
            <xs:pattern value="((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IPv4CIDR">
        <xs:restriction base="xs:token">
            <xs:pattern value="((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])/([1-2]?[0-9]|3[0-2])"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IPv6Address">
        <xs:restriction base="xs:token">
            <xs:pattern value="([0-9a-f]{4}:){7}([0-9a-f]{4})"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="IPv6CIDR">
        <xs:restriction base="xs:token">
            <xs:pattern value="([0-9a-f]{4}:){7}([0-9a-f]{4})/(([1-9][0-9]?)|(1[0-1][0-9])|(12[0-8]))"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="IPAddress">
        <xs:choice>
            <xs:element name="IPv4Address" type="IPv4Address"/>
            <xs:element name="IPv6Address" type="IPv6Address"/>
        </xs:choice>
    <xs:complexType name="IPCIDR">
        <xs:choice>
            <xs:element name="IPv4CIDR" type="IPv4CIDR"/>
            <xs:element name="IPv6CIDR" type="IPv6CIDR"/>
        </xs:choice>
    <xs:simpleType name="TCPPort">
        <xs:restriction base="xs:integer">
            <xs:minExclusive value="1"/>
            <xs:maxInclusive value="65535"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="TCPPortRange">
        <xs:sequence>
            <xs:element name="start" type="TCPPort"/>
            <xs:element name="end" type="TCPPort"/>
        </xs:sequence>
    </xs:complexType>
    <xs:simpleType name="UDPPort">
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="0"/>
            <xs:maxInclusive value="65535"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="UDPPortRange">
        <xs:sequence>
            <xs:element name="start" type="UDPPort"/>
            <xs:element name="end" type="UDPPort"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="Port">
        <xs:choice>
            <xs:element name="TCPPort" type="TCPPort"/>
            <xs:element name="UDPPort" type="UDPPort"/>
        </xs:choice>
    <xs:complexType name="PortRange">
        <xs:choice>
            <xs:element name="TCPPortRange" type="TCPPortRange"/>
            <xs:element name="UDPPortRange" type="UDPPortRange"/>
        </xs:choice>
    <xs:complexType name="IPAddressPort">
        <xs:sequence>
            <xs:element name="address" type="IPAddress"/>
            <xs:element name="port" type="Port"/>
        </xs:sequence>
    <xs:complexType name="IPAddressPortRange">
        <xs:sequence>
            <xs:element name="address" type="IPAddress"/>
            <xs:element name="portRange" type="PortRange"/>
        </xs:sequence>
    <xs:simpleType name="MACAddress">
        <xs:restriction base="xs:token">
            <xs:pattern value="([a-f0-9]{2}:){5}[a-f0-9]{2}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="EmailAddress">
        <xs:restriction base="ShortString">
            <xs:pattern value="[a-zA-Z0-9\.!#$%&amp;'\*\+\\/=\?\^_`\{\|\}~\-]+@[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(\.[a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="UUID">
        <xs:restriction base="xs:token">
            <xs:pattern value="[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="ISOCountryCode">
        <xs:restriction base="xs:token">
            <xs:pattern value="[A-Z]{2}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="SIPURI">
        <xs:restriction base="xs:anyURI">
            <xs:pattern value="sips?:[a-zA-Z0-9!#$&amp;-;=?-\[\]_~%]+"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="TELURI">
        <xs:restriction base="xs:anyURI">
            <xs:pattern value="tel:[a-zA-Z0-9!#$&amp;-;=?-\[\]_~%]+"/>
        </xs:restriction>
    </xs:simpleType>
   <xs:complexType name="WGS84CoordinateDecimal">
        <xs:sequence>
            <xs:element name="latitude" type="WGS84LatitudeDecimal"/>
            <xs:element name="longitude" type="WGS84LongitudeDecimal"/>
        </xs:sequence>
    </xs:complexType>
    <xs:simpleType name="WGS84LatitudeDecimal">
        <xs:restriction base="xs:string">
            <xs:pattern value="[NS][0-9]{2}\.[0-9]{6}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="WGS84LongitudeDecimal">
        <xs:restriction base="xs:string">
            <xs:pattern value="[EW][0-9]{3}\.[0-9]{6}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:complexType name="WGS84CoordinateAngular">
        <xs:sequence>
            <xs:element name="latitude" type="WGS84LatitudeAngular"/>
            <xs:element name="longitude" type="WGS84LongitudeAngular"/>
        </xs:sequence>
    </xs:complexType>
    <xs:simpleType name="WGS84LatitudeAngular">
        <xs:restriction base="xs:string">
            <xs:pattern value="[NS][0-9]{6}\.[0-9]{2}"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="WGS84LongitudeAngular">
        <xs:restriction base="xs:string">
            <xs:pattern value="[EW][0-9]{7}\.[0-9]{2}"/>
        </xs:restriction>
    </xs:simpleType>