xref: /aosp_15_r20/external/cldr/common/dtd/ldmlBCP47.xsd (revision 912701f9769bb47905792267661f0baf2b85bed5)
1*912701f9SAndroid Build Coastguard Worker<?xml version="1.0" encoding="UTF-8" ?>
2*912701f9SAndroid Build Coastguard Worker<!--
3*912701f9SAndroid Build Coastguard WorkerNote: The .xsd files are a Technology Preview. They are subject to change or removal in future CLDR versions.
4*912701f9SAndroid Build Coastguard WorkerNote: DTD @-annotations are not currently converted to .xsd. For full CLDR file validation, use the DTD and CLDR tools.
5*912701f9SAndroid Build Coastguard Worker-->
6*912701f9SAndroid Build Coastguard Worker
7*912701f9SAndroid Build Coastguard Worker<!--
8*912701f9SAndroid Build Coastguard Worker  Copyright © 1991-2024 Unicode, Inc.
9*912701f9SAndroid Build Coastguard Worker  For terms of use, see http://www.unicode.org/copyright.html
10*912701f9SAndroid Build Coastguard Worker  SPDX-License-Identifier: Unicode-3.0
11*912701f9SAndroid Build Coastguard Worker  CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
12*912701f9SAndroid Build Coastguard Worker--><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
13*912701f9SAndroid Build Coastguard Worker  <xs:element name="ldmlBCP47">
14*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
15*912701f9SAndroid Build Coastguard Worker      <xs:sequence>
16*912701f9SAndroid Build Coastguard Worker        <xs:element ref="version"/>
17*912701f9SAndroid Build Coastguard Worker        <xs:element minOccurs="0" ref="generation"/>
18*912701f9SAndroid Build Coastguard Worker        <xs:element minOccurs="0" ref="cldrVersion"/>
19*912701f9SAndroid Build Coastguard Worker        <xs:element maxOccurs="unbounded" minOccurs="0" ref="keyword"/>
20*912701f9SAndroid Build Coastguard Worker        <xs:element maxOccurs="unbounded" minOccurs="0" ref="attribute"/>
21*912701f9SAndroid Build Coastguard Worker      </xs:sequence>
22*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
23*912701f9SAndroid Build Coastguard Worker  </xs:element>
24*912701f9SAndroid Build Coastguard Worker  <xs:element name="version">
25*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
26*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="number" use="required"/>
27*912701f9SAndroid Build Coastguard Worker      <xs:attribute default="45" name="cldrVersion">
28*912701f9SAndroid Build Coastguard Worker        <xs:simpleType>
29*912701f9SAndroid Build Coastguard Worker          <xs:restriction base="xs:string">
30*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="45"/>
31*912701f9SAndroid Build Coastguard Worker          </xs:restriction>
32*912701f9SAndroid Build Coastguard Worker        </xs:simpleType>
33*912701f9SAndroid Build Coastguard Worker      </xs:attribute>
34*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
35*912701f9SAndroid Build Coastguard Worker  </xs:element>
36*912701f9SAndroid Build Coastguard Worker
37*912701f9SAndroid Build Coastguard Worker
38*912701f9SAndroid Build Coastguard Worker
39*912701f9SAndroid Build Coastguard Worker
40*912701f9SAndroid Build Coastguard Worker
41*912701f9SAndroid Build Coastguard Worker  <xs:element name="generation">
42*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
43*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="date" use="required"/>
44*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
45*912701f9SAndroid Build Coastguard Worker  </xs:element>
46*912701f9SAndroid Build Coastguard Worker
47*912701f9SAndroid Build Coastguard Worker
48*912701f9SAndroid Build Coastguard Worker
49*912701f9SAndroid Build Coastguard Worker
50*912701f9SAndroid Build Coastguard Worker  <xs:element name="cldrVersion">
51*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
52*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="version" use="required"/>
53*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
54*912701f9SAndroid Build Coastguard Worker  </xs:element>
55*912701f9SAndroid Build Coastguard Worker
56*912701f9SAndroid Build Coastguard Worker
57*912701f9SAndroid Build Coastguard Worker
58*912701f9SAndroid Build Coastguard Worker  <xs:element name="keyword">
59*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
60*912701f9SAndroid Build Coastguard Worker      <xs:sequence>
61*912701f9SAndroid Build Coastguard Worker        <xs:element maxOccurs="unbounded" minOccurs="0" ref="key"/>
62*912701f9SAndroid Build Coastguard Worker      </xs:sequence>
63*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
64*912701f9SAndroid Build Coastguard Worker  </xs:element>
65*912701f9SAndroid Build Coastguard Worker  <xs:element name="key">
66*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
67*912701f9SAndroid Build Coastguard Worker      <xs:sequence>
68*912701f9SAndroid Build Coastguard Worker        <xs:element maxOccurs="unbounded" minOccurs="0" ref="type"/>
69*912701f9SAndroid Build Coastguard Worker      </xs:sequence>
70*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="extension" type="xs:NMTOKEN"/>
71*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
72*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="description"/>
73*912701f9SAndroid Build Coastguard Worker      <xs:attribute default="false" name="deprecated">
74*912701f9SAndroid Build Coastguard Worker        <xs:simpleType>
75*912701f9SAndroid Build Coastguard Worker          <xs:restriction base="xs:token">
76*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="true"/>
77*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="false"/>
78*912701f9SAndroid Build Coastguard Worker          </xs:restriction>
79*912701f9SAndroid Build Coastguard Worker        </xs:simpleType>
80*912701f9SAndroid Build Coastguard Worker      </xs:attribute>
81*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="preferred" type="xs:NMTOKEN"/>
82*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="alias" type="xs:NMTOKEN"/>
83*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="valueType">
84*912701f9SAndroid Build Coastguard Worker        <xs:simpleType>
85*912701f9SAndroid Build Coastguard Worker          <xs:restriction base="xs:token">
86*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="single"/>
87*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="multiple"/>
88*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="incremental"/>
89*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="any"/>
90*912701f9SAndroid Build Coastguard Worker          </xs:restriction>
91*912701f9SAndroid Build Coastguard Worker        </xs:simpleType>
92*912701f9SAndroid Build Coastguard Worker      </xs:attribute>
93*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="since"/>
94*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
95*912701f9SAndroid Build Coastguard Worker  </xs:element>
96*912701f9SAndroid Build Coastguard Worker
97*912701f9SAndroid Build Coastguard Worker
98*912701f9SAndroid Build Coastguard Worker
99*912701f9SAndroid Build Coastguard Worker
100*912701f9SAndroid Build Coastguard Worker
101*912701f9SAndroid Build Coastguard Worker
102*912701f9SAndroid Build Coastguard Worker
103*912701f9SAndroid Build Coastguard Worker
104*912701f9SAndroid Build Coastguard Worker
105*912701f9SAndroid Build Coastguard Worker
106*912701f9SAndroid Build Coastguard Worker
107*912701f9SAndroid Build Coastguard Worker  <xs:element name="type">
108*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
109*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
110*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="description" use="required"/>
111*912701f9SAndroid Build Coastguard Worker      <xs:attribute default="false" name="deprecated">
112*912701f9SAndroid Build Coastguard Worker        <xs:simpleType>
113*912701f9SAndroid Build Coastguard Worker          <xs:restriction base="xs:token">
114*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="true"/>
115*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="false"/>
116*912701f9SAndroid Build Coastguard Worker          </xs:restriction>
117*912701f9SAndroid Build Coastguard Worker        </xs:simpleType>
118*912701f9SAndroid Build Coastguard Worker      </xs:attribute>
119*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="preferred" type="xs:NMTOKEN"/>
120*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="alias"/>
121*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="since"/>
122*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="iana"/>
123*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
124*912701f9SAndroid Build Coastguard Worker  </xs:element>
125*912701f9SAndroid Build Coastguard Worker
126*912701f9SAndroid Build Coastguard Worker
127*912701f9SAndroid Build Coastguard Worker
128*912701f9SAndroid Build Coastguard Worker
129*912701f9SAndroid Build Coastguard Worker
130*912701f9SAndroid Build Coastguard Worker
131*912701f9SAndroid Build Coastguard Worker
132*912701f9SAndroid Build Coastguard Worker
133*912701f9SAndroid Build Coastguard Worker
134*912701f9SAndroid Build Coastguard Worker
135*912701f9SAndroid Build Coastguard Worker
136*912701f9SAndroid Build Coastguard Worker
137*912701f9SAndroid Build Coastguard Worker  <xs:element name="attribute">
138*912701f9SAndroid Build Coastguard Worker    <xs:complexType>
139*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
140*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="description" use="required"/>
141*912701f9SAndroid Build Coastguard Worker      <xs:attribute default="false" name="deprecated">
142*912701f9SAndroid Build Coastguard Worker        <xs:simpleType>
143*912701f9SAndroid Build Coastguard Worker          <xs:restriction base="xs:token">
144*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="true"/>
145*912701f9SAndroid Build Coastguard Worker            <xs:enumeration value="false"/>
146*912701f9SAndroid Build Coastguard Worker          </xs:restriction>
147*912701f9SAndroid Build Coastguard Worker        </xs:simpleType>
148*912701f9SAndroid Build Coastguard Worker      </xs:attribute>
149*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="preferred" type="xs:NMTOKEN"/>
150*912701f9SAndroid Build Coastguard Worker      <xs:attribute name="since"/>
151*912701f9SAndroid Build Coastguard Worker    </xs:complexType>
152*912701f9SAndroid Build Coastguard Worker  </xs:element>
153*912701f9SAndroid Build Coastguard Worker</xs:schema>