• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="UTF-8" ?>
2<!--
3Note: The .xsd files are a Technology Preview. They are subject to change or removal in future CLDR versions.
4Note: DTD @-annotations are not currently converted to .xsd. For full CLDR file validation, use the DTD and CLDR tools.
5-->
6
7<!--
8  Copyright © 1991-2024 Unicode, Inc.
9  For terms of use, see http://www.unicode.org/copyright.html
10  SPDX-License-Identifier: Unicode-3.0
11  CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
12--><!--
13  Important Note:
14
15  This DTD describes a technical preview of Keyboard Test Data
16--><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
17  <xs:element name="keyboardTest3">
18    <xs:complexType>
19      <xs:sequence>
20        <xs:element ref="info"/>
21        <xs:element maxOccurs="unbounded" minOccurs="0" ref="repertoire"/>
22        <xs:element maxOccurs="unbounded" minOccurs="0" ref="tests"/>
23        <xs:element maxOccurs="unbounded" minOccurs="0" ref="special"/>
24      </xs:sequence>
25      <xs:attribute name="conformsTo" use="required">
26        <xs:simpleType>
27          <xs:restriction base="xs:token">
28            <xs:enumeration value="techpreview"/>
29          </xs:restriction>
30        </xs:simpleType>
31      </xs:attribute>
32    </xs:complexType>
33  </xs:element>
34
35
36
37  <xs:element name="info">
38    <xs:complexType>
39      <xs:attribute name="keyboard" use="required"/>
40      <xs:attribute name="author"/>
41      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
42    </xs:complexType>
43  </xs:element>
44
45
46
47
48
49
50  <xs:element name="repertoire">
51    <xs:complexType>
52      <xs:attribute name="chars" use="required"/>
53      <xs:attribute name="type">
54        <xs:simpleType>
55          <xs:restriction base="xs:token">
56            <xs:enumeration value="default"/>
57            <xs:enumeration value="simple"/>
58            <xs:enumeration value="gesture"/>
59            <xs:enumeration value="flick"/>
60            <xs:enumeration value="longPress"/>
61            <xs:enumeration value="multiTap"/>
62            <xs:enumeration value="hardware"/>
63          </xs:restriction>
64        </xs:simpleType>
65      </xs:attribute>
66      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
67    </xs:complexType>
68  </xs:element>
69
70
71
72
73
74  <xs:element name="tests">
75    <xs:complexType>
76      <xs:sequence>
77        <xs:element maxOccurs="unbounded" ref="test"/>
78        <xs:element maxOccurs="unbounded" minOccurs="0" ref="special"/>
79      </xs:sequence>
80      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
81    </xs:complexType>
82  </xs:element>
83
84
85  <xs:element name="test">
86    <xs:complexType>
87      <xs:sequence>
88        <xs:element minOccurs="0" ref="startContext"/>
89        <xs:choice maxOccurs="unbounded" minOccurs="0">
90          <xs:element ref="keystroke"/>
91          <xs:element ref="emit"/>
92          <xs:element ref="backspace"/>
93          <xs:element ref="check"/>
94        </xs:choice>
95        <xs:element maxOccurs="unbounded" minOccurs="0" ref="special"/>
96      </xs:sequence>
97      <xs:attribute name="name" type="xs:NMTOKEN" use="required"/>
98    </xs:complexType>
99  </xs:element>
100
101
102  <xs:element name="startContext">
103    <xs:complexType>
104      <xs:attribute name="to" use="required"/>
105    </xs:complexType>
106  </xs:element>
107
108
109
110
111  <xs:element name="keystroke">
112    <xs:complexType>
113      <xs:attribute name="key" type="xs:NMTOKEN" use="required"/>
114      <xs:attribute name="flick" type="xs:NMTOKENS"/>
115      <xs:attribute name="longPress"/>
116      <xs:attribute name="tapCount"/>
117    </xs:complexType>
118  </xs:element>
119
120
121
122
123
124
125
126
127
128
129  <xs:element name="emit">
130    <xs:complexType>
131      <xs:attribute name="to" use="required"/>
132    </xs:complexType>
133  </xs:element>
134
135
136
137
138
139  <xs:element name="backspace">
140    <xs:complexType/>
141  </xs:element>
142
143
144  <xs:element name="check">
145    <xs:complexType>
146      <xs:attribute name="result" use="required"/>
147    </xs:complexType>
148  </xs:element>
149
150
151
152
153
154  <xs:element name="special" type="any"/>
155  <xs:complexType mixed="true" name="any">
156    <xs:sequence>
157      <xs:any maxOccurs="unbounded" minOccurs="0" processContents="strict"/>
158    </xs:sequence>
159  </xs:complexType>
160</xs:schema>