xref: /aosp_15_r20/external/cldr/common/dtd/messageFormat/message.dtd (revision 912701f9769bb47905792267661f0baf2b85bed5)
1*912701f9SAndroid Build Coastguard Worker<!--
2*912701f9SAndroid Build Coastguard WorkerCopyright © 1991-2024 Unicode, Inc.
3*912701f9SAndroid Build Coastguard WorkerFor terms of use, see http://www.unicode.org/copyright.html
4*912701f9SAndroid Build Coastguard WorkerSPDX-License-Identifier: Unicode-3.0
5*912701f9SAndroid Build Coastguard WorkerCLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
6*912701f9SAndroid Build Coastguard Worker-->
7*912701f9SAndroid Build Coastguard Worker
8*912701f9SAndroid Build Coastguard Worker<!ELEMENT message (
9*912701f9SAndroid Build Coastguard Worker  (declaration | unsupportedStatement)*,
10*912701f9SAndroid Build Coastguard Worker  (pattern | (selectors,variant+))
11*912701f9SAndroid Build Coastguard Worker)>
12*912701f9SAndroid Build Coastguard Worker
13*912701f9SAndroid Build Coastguard Worker<!-- In a <declaration type="input">, the <expression> MUST contain a <variable> -->
14*912701f9SAndroid Build Coastguard Worker<!ELEMENT declaration (expression)>
15*912701f9SAndroid Build Coastguard Worker<!ATTLIST declaration
16*912701f9SAndroid Build Coastguard Worker  type (input | local) #REQUIRED
17*912701f9SAndroid Build Coastguard Worker  name NMTOKEN #REQUIRED
18*912701f9SAndroid Build Coastguard Worker>
19*912701f9SAndroid Build Coastguard Worker
20*912701f9SAndroid Build Coastguard Worker<!ELEMENT unsupportedStatement (expression)+>
21*912701f9SAndroid Build Coastguard Worker<!ATTLIST unsupportedStatement
22*912701f9SAndroid Build Coastguard Worker  keyword CDATA #REQUIRED
23*912701f9SAndroid Build Coastguard Worker  body CDATA #IMPLIED
24*912701f9SAndroid Build Coastguard Worker>
25*912701f9SAndroid Build Coastguard Worker
26*912701f9SAndroid Build Coastguard Worker<!ELEMENT selectors (expression)+>
27*912701f9SAndroid Build Coastguard Worker<!ELEMENT variant (key+,pattern)>
28*912701f9SAndroid Build Coastguard Worker<!ELEMENT key (#PCDATA)>
29*912701f9SAndroid Build Coastguard Worker<!ATTLIST key catchall (true | false) "false">
30*912701f9SAndroid Build Coastguard Worker
31*912701f9SAndroid Build Coastguard Worker<!ELEMENT pattern (#PCDATA | expression | markup)*>
32*912701f9SAndroid Build Coastguard Worker
33*912701f9SAndroid Build Coastguard Worker<!ELEMENT expression (
34*912701f9SAndroid Build Coastguard Worker  ((literal | variable), (functionAnnotation | unsupportedAnnotation)?, attribute*) |
35*912701f9SAndroid Build Coastguard Worker  ((functionAnnotation | unsupportedAnnotation), attribute*)
36*912701f9SAndroid Build Coastguard Worker)>
37*912701f9SAndroid Build Coastguard Worker
38*912701f9SAndroid Build Coastguard Worker<!ELEMENT literal (#PCDATA)>
39*912701f9SAndroid Build Coastguard Worker
40*912701f9SAndroid Build Coastguard Worker<!ELEMENT variable (EMPTY)>
41*912701f9SAndroid Build Coastguard Worker<!ATTLIST variable name NMTOKEN #REQUIRED>
42*912701f9SAndroid Build Coastguard Worker
43*912701f9SAndroid Build Coastguard Worker<!ELEMENT functionAnnotation (option)*>
44*912701f9SAndroid Build Coastguard Worker<!ATTLIST functionAnnotation name NMTOKEN #REQUIRED>
45*912701f9SAndroid Build Coastguard Worker
46*912701f9SAndroid Build Coastguard Worker<!ELEMENT option (literal | variable)>
47*912701f9SAndroid Build Coastguard Worker<!ATTLIST option name NMTOKEN #REQUIRED>
48*912701f9SAndroid Build Coastguard Worker
49*912701f9SAndroid Build Coastguard Worker<!ELEMENT unsupportedAnnotation (#PCDATA)>
50*912701f9SAndroid Build Coastguard Worker
51*912701f9SAndroid Build Coastguard Worker<!ELEMENT attribute (literal | variable)?>
52*912701f9SAndroid Build Coastguard Worker<!ATTLIST attribute name NMTOKEN #REQUIRED>
53*912701f9SAndroid Build Coastguard Worker
54*912701f9SAndroid Build Coastguard Worker<!ELEMENT markup (option*, attribute*)>
55*912701f9SAndroid Build Coastguard Worker<!ATTLIST markup
56*912701f9SAndroid Build Coastguard Worker  kind (open | standalone | close) #REQUIRED
57*912701f9SAndroid Build Coastguard Worker  name NMTOKEN #REQUIRED
58*912701f9SAndroid Build Coastguard Worker>
59