TS_103_280.xsd 6.68 KB
Newer Older
1
<?xml version="1.0" encoding="utf-8"?>
2
<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.1.1" elementFormDefault="qualified">
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
    <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">
45
            <xs:pattern value="[0-9]{6,15}"/>
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
        </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>
83
    </xs:complexType>
84
85
86
87
88
    <xs:complexType name="IPCIDR">
        <xs:choice>
            <xs:element name="IPv4CIDR" type="IPv4CIDR"/>
            <xs:element name="IPv6CIDR" type="IPv6CIDR"/>
        </xs:choice>
89
    </xs:complexType>
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
    <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>
119
    </xs:complexType>
120
121
122
123
124
    <xs:complexType name="PortRange">
        <xs:choice>
            <xs:element name="TCPPortRange" type="TCPPortRange"/>
            <xs:element name="UDPPortRange" type="UDPPortRange"/>
        </xs:choice>
125
    </xs:complexType>
126
127
128
129
130
    <xs:complexType name="IPAddressPort">
        <xs:sequence>
            <xs:element name="address" type="IPAddress"/>
            <xs:element name="port" type="Port"/>
        </xs:sequence>
131
    </xs:complexType>
132
133
134
135
136
    <xs:complexType name="IPAddressPortRange">
        <xs:sequence>
            <xs:element name="address" type="IPAddress"/>
            <xs:element name="portRange" type="PortRange"/>
        </xs:sequence>
137
    </xs:complexType>
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
    <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>
158
159
160
161
162
163
164
165
166
167
    <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>
168
</xs:schema>