Mercurial > hg > rc1
comparison vendor/pear/console_commandline/data/xmlschema.rng @ 0:1e000243b222
vanilla 1.3.3 distro, I hope
author | Charlie Root |
---|---|
date | Thu, 04 Jan 2018 15:50:29 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:1e000243b222 |
---|---|
1 <?xml version="1.0" encoding="UTF-8"?> | |
2 | |
3 <!-- | |
4 This is the RNG file for validating Console_CommandLine xml definitions. | |
5 | |
6 Author : David JEAN LOUIS | |
7 Licence : MIT License | |
8 Version : CVS: $Id$ | |
9 --> | |
10 | |
11 <grammar xmlns="http://relaxng.org/ns/structure/1.0" | |
12 datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> | |
13 | |
14 <!-- structure --> | |
15 <start> | |
16 <ref name="ref_command"/> | |
17 </start> | |
18 | |
19 <!-- Command node --> | |
20 <define name="ref_command_subcommand_common"> | |
21 <interleave> | |
22 <optional> | |
23 <element name="name"> | |
24 <text/> | |
25 </element> | |
26 </optional> | |
27 <optional> | |
28 <element name="description"> | |
29 <text/> | |
30 </element> | |
31 </optional> | |
32 <optional> | |
33 <element name="version"> | |
34 <text/> | |
35 </element> | |
36 </optional> | |
37 <optional> | |
38 <element name="add_help_option"> | |
39 <ref name="ref_bool_choices"/> | |
40 </element> | |
41 </optional> | |
42 <optional> | |
43 <element name="add_version_option"> | |
44 <ref name="ref_bool_choices"/> | |
45 </element> | |
46 </optional> | |
47 <optional> | |
48 <element name="force_posix"> | |
49 <ref name="ref_bool_choices"/> | |
50 </element> | |
51 </optional> | |
52 <optional> | |
53 <ref name="ref_messages_common"/> | |
54 </optional> | |
55 <zeroOrMore> | |
56 <ref name="ref_option"/> | |
57 </zeroOrMore> | |
58 <zeroOrMore> | |
59 <ref name="ref_argument"/> | |
60 </zeroOrMore> | |
61 <zeroOrMore> | |
62 <ref name="ref_subcommand"/> | |
63 </zeroOrMore> | |
64 </interleave> | |
65 </define> | |
66 | |
67 <!-- command element --> | |
68 | |
69 <define name="ref_command"> | |
70 <element name="command"> | |
71 <interleave> | |
72 <ref name="ref_command_subcommand_common"/> | |
73 </interleave> | |
74 </element> | |
75 </define> | |
76 | |
77 <!-- subcommand element --> | |
78 | |
79 <define name="ref_subcommand"> | |
80 <element name="command"> | |
81 <interleave> | |
82 <ref name="ref_command_subcommand_common"/> | |
83 <optional> | |
84 <element name="aliases"> | |
85 <zeroOrMore> | |
86 <element name="alias"> | |
87 <text/> | |
88 </element> | |
89 </zeroOrMore> | |
90 </element> | |
91 </optional> | |
92 </interleave> | |
93 </element> | |
94 </define> | |
95 | |
96 <!-- custom messages common element --> | |
97 | |
98 <define name="ref_messages_common"> | |
99 <element name="messages"> | |
100 <oneOrMore> | |
101 <element name="message"> | |
102 <attribute name="name"> | |
103 <data type="string"/> | |
104 </attribute> | |
105 <text/> | |
106 </element> | |
107 </oneOrMore> | |
108 </element> | |
109 </define> | |
110 | |
111 <!-- options and arguments common elements --> | |
112 | |
113 <define name="ref_option_argument_common"> | |
114 <interleave> | |
115 <optional> | |
116 <element name="description"> | |
117 <text/> | |
118 </element> | |
119 </optional> | |
120 <optional> | |
121 <element name="help_name"> | |
122 <text/> | |
123 </element> | |
124 </optional> | |
125 <optional> | |
126 <element name="default"> | |
127 <text/> | |
128 </element> | |
129 </optional> | |
130 <optional> | |
131 <ref name="ref_messages_common"/> | |
132 </optional> | |
133 </interleave> | |
134 </define> | |
135 | |
136 <!-- Option node --> | |
137 <define name="ref_option"> | |
138 <element name="option"> | |
139 <attribute name="name"> | |
140 <data type="string"/> | |
141 </attribute> | |
142 <interleave> | |
143 <optional> | |
144 <element name="short_name"> | |
145 <text/> | |
146 </element> | |
147 </optional> | |
148 <optional> | |
149 <element name="long_name"> | |
150 <text/> | |
151 </element> | |
152 </optional> | |
153 <ref name="ref_option_argument_common"/> | |
154 <optional> | |
155 <element name="action"> | |
156 <text/> | |
157 </element> | |
158 </optional> | |
159 <optional> | |
160 <element name="choices"> | |
161 <zeroOrMore> | |
162 <element name="choice"> | |
163 <text/> | |
164 </element> | |
165 </zeroOrMore> | |
166 </element> | |
167 </optional> | |
168 <optional> | |
169 <element name="add_list_option"> | |
170 <ref name="ref_bool_choices"/> | |
171 </element> | |
172 </optional> | |
173 </interleave> | |
174 </element> | |
175 </define> | |
176 | |
177 <!-- Argument node --> | |
178 <define name="ref_argument"> | |
179 <element name="argument"> | |
180 <attribute name="name"> | |
181 <data type="string"/> | |
182 </attribute> | |
183 <interleave> | |
184 <ref name="ref_option_argument_common"/> | |
185 <optional> | |
186 <element name="multiple"> | |
187 <ref name="ref_bool_choices"/> | |
188 </element> | |
189 </optional> | |
190 <optional> | |
191 <element name="optional"> | |
192 <ref name="ref_bool_choices"/> | |
193 </element> | |
194 </optional> | |
195 <optional> | |
196 <element name="choices"> | |
197 <zeroOrMore> | |
198 <element name="choice"> | |
199 <text/> | |
200 </element> | |
201 </zeroOrMore> | |
202 </element> | |
203 </optional> | |
204 </interleave> | |
205 </element> | |
206 </define> | |
207 | |
208 <!-- boolean choices --> | |
209 <define name="ref_bool_choices"> | |
210 <choice> | |
211 <data type="token"> | |
212 <param name="pattern">[Tt][Rr][Uu][Ee]</param> | |
213 </data> | |
214 <data type="token"> | |
215 <param name="pattern">[On][Nn]</param> | |
216 </data> | |
217 <data type="token"> | |
218 <param name="pattern">[Yy][Ee][Ss]</param> | |
219 </data> | |
220 <value>1</value> | |
221 <data type="token"> | |
222 <param name="pattern">[Ff][Aa][Ll][Ss][Ee]</param> | |
223 </data> | |
224 <data type="token"> | |
225 <param name="pattern">[Of][Ff][Ff]</param> | |
226 </data> | |
227 <data type="token"> | |
228 <param name="pattern">[Nn][Oo]</param> | |
229 </data> | |
230 <value>0</value> | |
231 </choice> | |
232 </define> | |
233 | |
234 </grammar> |