Mercurial > repos > shellac > sam_consensus_v3
comparison env/lib/python3.9/site-packages/lxml/isoschematron/resources/rng/iso-schematron.rng @ 0:4f3585e2f14b draft default tip
"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author | shellac |
---|---|
date | Mon, 22 Mar 2021 18:12:50 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:4f3585e2f14b |
---|---|
1 <?xml version="1.0" encoding="UTF-8"?> | |
2 <!-- Copyright © ISO/IEC 2015 --> | |
3 <!-- | |
4 The following permission notice and disclaimer shall be included in all | |
5 copies of this XML schema ("the Schema"), and derivations of the Schema: | |
6 | |
7 Permission is hereby granted, free of charge in perpetuity, to any | |
8 person obtaining a copy of the Schema, to use, copy, modify, merge and | |
9 distribute free of charge, copies of the Schema for the purposes of | |
10 developing, implementing, installing and using software based on the | |
11 Schema, and to permit persons to whom the Schema is furnished to do so, | |
12 subject to the following conditions: | |
13 | |
14 THE SCHEMA IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
15 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
16 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | |
17 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR | |
18 OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, | |
19 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SCHEMA OR THE USE OR | |
20 OTHER DEALINGS IN THE SCHEMA. | |
21 | |
22 In addition, any modified copy of the Schema shall include the following | |
23 notice: | |
24 | |
25 "THIS SCHEMA HAS BEEN MODIFIED FROM THE SCHEMA DEFINED IN ISO/IEC 19757-3, | |
26 AND SHOULD NOT BE INTERPRETED AS COMPLYING WITH THAT STANDARD". | |
27 --> | |
28 <grammar ns="http://purl.oclc.org/dsdl/schematron" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> | |
29 <start> | |
30 <ref name="schema"/> | |
31 </start> | |
32 <!-- Element declarations --> | |
33 <define name="schema"> | |
34 <element name="schema"> | |
35 <optional> | |
36 <attribute name="id"> | |
37 <data type="ID"/> | |
38 </attribute> | |
39 </optional> | |
40 <ref name="rich"/> | |
41 <optional> | |
42 <attribute name="schemaVersion"> | |
43 <ref name="non-empty-string"/> | |
44 </attribute> | |
45 </optional> | |
46 <optional> | |
47 <attribute name="defaultPhase"> | |
48 <data type="IDREF"/> | |
49 </attribute> | |
50 </optional> | |
51 <optional> | |
52 <attribute name="queryBinding"> | |
53 <ref name="non-empty-string"/> | |
54 </attribute> | |
55 </optional> | |
56 <interleave> | |
57 <ref name="foreign"/> | |
58 <zeroOrMore> | |
59 <ref name="inclusion"/> | |
60 </zeroOrMore> | |
61 <group> | |
62 <optional> | |
63 <ref name="title"/> | |
64 </optional> | |
65 <zeroOrMore> | |
66 <ref name="ns"/> | |
67 </zeroOrMore> | |
68 <zeroOrMore> | |
69 <ref name="p"/> | |
70 </zeroOrMore> | |
71 <zeroOrMore> | |
72 <ref name="let"/> | |
73 </zeroOrMore> | |
74 <zeroOrMore> | |
75 <ref name="phase"/> | |
76 </zeroOrMore> | |
77 <oneOrMore> | |
78 <ref name="pattern"/> | |
79 </oneOrMore> | |
80 <zeroOrMore> | |
81 <ref name="p"/> | |
82 </zeroOrMore> | |
83 <optional> | |
84 <ref name="diagnostics"/> | |
85 </optional> | |
86 <optional> | |
87 <!-- edited (lxml): required in standard, optional here (since it can be empty anyway) --> | |
88 <ref name="properties"/> | |
89 </optional> | |
90 </group> | |
91 </interleave> | |
92 </element> | |
93 </define> | |
94 <define name="active"> | |
95 <element name="active"> | |
96 <attribute name="pattern"> | |
97 <data type="IDREF"/> | |
98 </attribute> | |
99 <interleave> | |
100 <ref name="foreign"/> | |
101 <zeroOrMore> | |
102 <choice> | |
103 <text/> | |
104 <ref name="dir"/> | |
105 <ref name="emph"/> | |
106 <ref name="span"/> | |
107 </choice> | |
108 </zeroOrMore> | |
109 </interleave> | |
110 </element> | |
111 </define> | |
112 <define name="assert"> | |
113 <element name="assert"> | |
114 <attribute name="test"> | |
115 <ref name="exprValue"/> | |
116 </attribute> | |
117 <optional> | |
118 <attribute name="flag"> | |
119 <ref name="flagValue"/> | |
120 </attribute> | |
121 </optional> | |
122 <optional> | |
123 <attribute name="id"> | |
124 <data type="ID"/> | |
125 </attribute> | |
126 </optional> | |
127 <optional> | |
128 <attribute name="diagnostics"> | |
129 <data type="IDREFS"/> | |
130 </attribute> | |
131 </optional> | |
132 <optional> | |
133 <attribute name="properties"> | |
134 <data type="IDREFS"/> | |
135 </attribute> | |
136 </optional> | |
137 <ref name="rich"/> | |
138 <ref name="linkable"/> | |
139 <interleave> | |
140 <ref name="foreign"/> | |
141 <zeroOrMore> | |
142 <choice> | |
143 <text/> | |
144 <ref name="name"/> | |
145 <ref name="value-of"/> | |
146 <ref name="emph"/> | |
147 <ref name="dir"/> | |
148 <ref name="span"/> | |
149 </choice> | |
150 </zeroOrMore> | |
151 </interleave> | |
152 </element> | |
153 </define> | |
154 <define name="diagnostic"> | |
155 <element name="diagnostic"> | |
156 <attribute name="id"> | |
157 <data type="ID"/> | |
158 </attribute> | |
159 <ref name="rich"/> | |
160 <interleave> | |
161 <ref name="foreign"/> | |
162 <zeroOrMore> | |
163 <choice> | |
164 <text/> | |
165 <ref name="value-of"/> | |
166 <ref name="emph"/> | |
167 <ref name="dir"/> | |
168 <ref name="span"/> | |
169 </choice> | |
170 </zeroOrMore> | |
171 </interleave> | |
172 </element> | |
173 </define> | |
174 <define name="diagnostics"> | |
175 <element name="diagnostics"> | |
176 <interleave> | |
177 <ref name="foreign"/> | |
178 <zeroOrMore> | |
179 <ref name="inclusion"/> | |
180 </zeroOrMore> | |
181 <zeroOrMore> | |
182 <ref name="diagnostic"/> | |
183 </zeroOrMore> | |
184 </interleave> | |
185 </element> | |
186 </define> | |
187 <define name="dir"> | |
188 <element name="dir"> | |
189 <optional> | |
190 <attribute name="value"> | |
191 <choice> | |
192 <value>ltr</value> | |
193 <value>rtl</value> | |
194 </choice> | |
195 </attribute> | |
196 </optional> | |
197 <interleave> | |
198 <ref name="foreign"/> | |
199 <text/> | |
200 </interleave> | |
201 </element> | |
202 </define> | |
203 <define name="emph"> | |
204 <element name="emph"> | |
205 <text/> | |
206 </element> | |
207 </define> | |
208 <define name="extends"> | |
209 <element name="extends"> | |
210 <choice> | |
211 <attribute name="rule"> | |
212 <data type="IDREF"/> | |
213 </attribute> | |
214 <attribute name="href"> | |
215 <ref name="uriValue"/> | |
216 </attribute> | |
217 </choice> | |
218 <ref name="foreign-empty"/> | |
219 </element> | |
220 </define> | |
221 <define name="let"> | |
222 <element name="let"> | |
223 <attribute name="name"> | |
224 <ref name="nameValue"/> | |
225 </attribute> | |
226 <choice> | |
227 <attribute name="value"> | |
228 <data type="string" datatypeLibrary=""/> | |
229 </attribute> | |
230 <oneOrMore> | |
231 <ref name="foreign-element"/> | |
232 </oneOrMore> | |
233 </choice> | |
234 </element> | |
235 </define> | |
236 <define name="name"> | |
237 <element name="name"> | |
238 <optional> | |
239 <attribute name="path"> | |
240 <ref name="pathValue"/> | |
241 </attribute> | |
242 </optional> | |
243 <ref name="foreign-empty"/> | |
244 </element> | |
245 </define> | |
246 <define name="ns"> | |
247 <element name="ns"> | |
248 <attribute name="uri"> | |
249 <ref name="uriValue"/> | |
250 </attribute> | |
251 <attribute name="prefix"> | |
252 <ref name="nameValue"/> | |
253 </attribute> | |
254 <ref name="foreign-empty"/> | |
255 </element> | |
256 </define> | |
257 <define name="p"> | |
258 <element name="p"> | |
259 <optional> | |
260 <attribute name="id"> | |
261 <data type="ID"/> | |
262 </attribute> | |
263 </optional> | |
264 <optional> | |
265 <attribute name="class"> | |
266 <ref name="classValue"/> | |
267 </attribute> | |
268 </optional> | |
269 <optional> | |
270 <attribute name="icon"> | |
271 <ref name="uriValue"/> | |
272 </attribute> | |
273 </optional> | |
274 <interleave> | |
275 <ref name="foreign"/> | |
276 <zeroOrMore> | |
277 <choice> | |
278 <text/> | |
279 <ref name="dir"/> | |
280 <ref name="emph"/> | |
281 <ref name="span"/> | |
282 </choice> | |
283 </zeroOrMore> | |
284 </interleave> | |
285 </element> | |
286 </define> | |
287 <define name="param"> | |
288 <element name="param"> | |
289 <attribute name="name"> | |
290 <ref name="nameValue"/> | |
291 </attribute> | |
292 <attribute name="value"> | |
293 <ref name="non-empty-string"/> | |
294 </attribute> | |
295 </element> | |
296 </define> | |
297 <define name="pattern"> | |
298 <element name="pattern"> | |
299 <optional> | |
300 <attribute name="documents"> | |
301 <ref name="pathValue"/> | |
302 </attribute> | |
303 </optional> | |
304 <ref name="rich"/> | |
305 <interleave> | |
306 <ref name="foreign"/> | |
307 <zeroOrMore> | |
308 <ref name="inclusion"/> | |
309 </zeroOrMore> | |
310 <choice> | |
311 <group> | |
312 <attribute name="abstract"> | |
313 <value>true</value> | |
314 </attribute> | |
315 <attribute name="id"> | |
316 <data type="ID"/> | |
317 </attribute> | |
318 <optional> | |
319 <ref name="title"/> | |
320 </optional> | |
321 <group> | |
322 <zeroOrMore> | |
323 <ref name="p"/> | |
324 </zeroOrMore> | |
325 <zeroOrMore> | |
326 <ref name="let"/> | |
327 </zeroOrMore> | |
328 <zeroOrMore> | |
329 <ref name="rule"/> | |
330 </zeroOrMore> | |
331 </group> | |
332 </group> | |
333 <group> | |
334 <optional> | |
335 <attribute name="abstract"> | |
336 <value>false</value> | |
337 </attribute> | |
338 </optional> | |
339 <optional> | |
340 <attribute name="id"> | |
341 <data type="ID"/> | |
342 </attribute> | |
343 </optional> | |
344 <optional> | |
345 <ref name="title"/> | |
346 </optional> | |
347 <group> | |
348 <zeroOrMore> | |
349 <ref name="p"/> | |
350 </zeroOrMore> | |
351 <zeroOrMore> | |
352 <ref name="let"/> | |
353 </zeroOrMore> | |
354 <zeroOrMore> | |
355 <ref name="rule"/> | |
356 </zeroOrMore> | |
357 </group> | |
358 </group> | |
359 <group> | |
360 <optional> | |
361 <attribute name="abstract"> | |
362 <value>false</value> | |
363 </attribute> | |
364 </optional> | |
365 <attribute name="is-a"> | |
366 <data type="IDREF"/> | |
367 </attribute> | |
368 <optional> | |
369 <attribute name="id"> | |
370 <data type="ID"/> | |
371 </attribute> | |
372 </optional> | |
373 <optional> | |
374 <ref name="title"/> | |
375 </optional> | |
376 <group> | |
377 <zeroOrMore> | |
378 <ref name="p"/> | |
379 </zeroOrMore> | |
380 <zeroOrMore> | |
381 <ref name="param"/> | |
382 </zeroOrMore> | |
383 </group> | |
384 </group> | |
385 </choice> | |
386 </interleave> | |
387 </element> | |
388 </define> | |
389 <define name="phase"> | |
390 <element name="phase"> | |
391 <attribute name="id"> | |
392 <data type="ID"/> | |
393 </attribute> | |
394 <ref name="rich"/> | |
395 <interleave> | |
396 <ref name="foreign"/> | |
397 <zeroOrMore> | |
398 <ref name="inclusion"/> | |
399 </zeroOrMore> | |
400 <group> | |
401 <zeroOrMore> | |
402 <ref name="p"/> | |
403 </zeroOrMore> | |
404 <zeroOrMore> | |
405 <ref name="let"/> | |
406 </zeroOrMore> | |
407 <zeroOrMore> | |
408 <ref name="active"/> | |
409 </zeroOrMore> | |
410 </group> | |
411 </interleave> | |
412 </element> | |
413 </define> | |
414 <define name="properties"> | |
415 <element name="properties"> | |
416 <zeroOrMore> | |
417 <ref name="property"/> | |
418 </zeroOrMore> | |
419 </element> | |
420 </define> | |
421 <define name="property"> | |
422 <element name="property"> | |
423 <attribute name="id"> | |
424 <data type="ID"/> | |
425 </attribute> | |
426 <optional> | |
427 <attribute name="role"> | |
428 <ref name="roleValue"/> | |
429 </attribute> | |
430 </optional> | |
431 <optional> | |
432 <attribute name="scheme"/> | |
433 </optional> | |
434 <interleave> | |
435 <ref name="foreign"/> | |
436 <zeroOrMore> | |
437 <choice> | |
438 <text/> | |
439 <ref name="name"/> | |
440 <ref name="value-of"/> | |
441 <ref name="emph"/> | |
442 <ref name="dir"/> | |
443 <ref name="span"/> | |
444 </choice> | |
445 </zeroOrMore> | |
446 </interleave> | |
447 </element> | |
448 </define> | |
449 <define name="report"> | |
450 <element name="report"> | |
451 <attribute name="test"> | |
452 <ref name="exprValue"/> | |
453 </attribute> | |
454 <optional> | |
455 <attribute name="flag"> | |
456 <ref name="flagValue"/> | |
457 </attribute> | |
458 </optional> | |
459 <optional> | |
460 <attribute name="id"> | |
461 <data type="ID"/> | |
462 </attribute> | |
463 </optional> | |
464 <optional> | |
465 <attribute name="diagnostics"> | |
466 <data type="IDREFS"/> | |
467 </attribute> | |
468 </optional> | |
469 <optional> | |
470 <attribute name="properties"> | |
471 <data type="IDREFS"/> | |
472 </attribute> | |
473 </optional> | |
474 <ref name="rich"/> | |
475 <ref name="linkable"/> | |
476 <interleave> | |
477 <ref name="foreign"/> | |
478 <zeroOrMore> | |
479 <choice> | |
480 <text/> | |
481 <ref name="name"/> | |
482 <ref name="value-of"/> | |
483 <ref name="emph"/> | |
484 <ref name="dir"/> | |
485 <ref name="span"/> | |
486 </choice> | |
487 </zeroOrMore> | |
488 </interleave> | |
489 </element> | |
490 </define> | |
491 <define name="rule"> | |
492 <element name="rule"> | |
493 <optional> | |
494 <attribute name="flag"> | |
495 <ref name="flagValue"/> | |
496 </attribute> | |
497 </optional> | |
498 <ref name="rich"/> | |
499 <ref name="linkable"/> | |
500 <interleave> | |
501 <ref name="foreign"/> | |
502 <zeroOrMore> | |
503 <ref name="inclusion"/> | |
504 </zeroOrMore> | |
505 <choice> | |
506 <group> | |
507 <attribute name="abstract"> | |
508 <value>true</value> | |
509 </attribute> | |
510 <attribute name="id"> | |
511 <data type="ID"/> | |
512 </attribute> | |
513 <zeroOrMore> | |
514 <ref name="let"/> | |
515 </zeroOrMore> | |
516 <oneOrMore> | |
517 <choice> | |
518 <ref name="assert"/> | |
519 <ref name="report"/> | |
520 <ref name="extends"/> | |
521 <ref name="p"/> | |
522 </choice> | |
523 </oneOrMore> | |
524 </group> | |
525 <group> | |
526 <attribute name="context"> | |
527 <ref name="pathValue"/> | |
528 </attribute> | |
529 <optional> | |
530 <attribute name="id"> | |
531 <data type="ID"/> | |
532 </attribute> | |
533 </optional> | |
534 <optional> | |
535 <attribute name="abstract"> | |
536 <value>false</value> | |
537 </attribute> | |
538 </optional> | |
539 <zeroOrMore> | |
540 <ref name="let"/> | |
541 </zeroOrMore> | |
542 <oneOrMore> | |
543 <choice> | |
544 <ref name="assert"/> | |
545 <ref name="report"/> | |
546 <ref name="extends"/> | |
547 <ref name="p"/> | |
548 </choice> | |
549 </oneOrMore> | |
550 </group> | |
551 </choice> | |
552 </interleave> | |
553 </element> | |
554 </define> | |
555 <define name="span"> | |
556 <element name="span"> | |
557 <attribute name="class"> | |
558 <ref name="classValue"/> | |
559 </attribute> | |
560 <interleave> | |
561 <ref name="foreign"/> | |
562 <text/> | |
563 </interleave> | |
564 </element> | |
565 </define> | |
566 <define name="title"> | |
567 <element name="title"> | |
568 <zeroOrMore> | |
569 <choice> | |
570 <text/> | |
571 <ref name="dir"/> | |
572 </choice> | |
573 </zeroOrMore> | |
574 </element> | |
575 </define> | |
576 <define name="value-of"> | |
577 <element name="value-of"> | |
578 <attribute name="select"> | |
579 <ref name="pathValue"/> | |
580 </attribute> | |
581 <ref name="foreign-empty"/> | |
582 </element> | |
583 </define> | |
584 <!-- common declarations --> | |
585 <define name="inclusion"> | |
586 <element name="include"> | |
587 <attribute name="href"> | |
588 <ref name="uriValue"/> | |
589 </attribute> | |
590 <ref name="foreign-empty"/> | |
591 </element> | |
592 </define> | |
593 <define name="rich"> | |
594 <optional> | |
595 <attribute name="icon"> | |
596 <ref name="uriValue"/> | |
597 </attribute> | |
598 </optional> | |
599 <optional> | |
600 <attribute name="see"> | |
601 <ref name="uriValue"/> | |
602 </attribute> | |
603 </optional> | |
604 <optional> | |
605 <attribute name="fpi"> | |
606 <ref name="fpiValue"/> | |
607 </attribute> | |
608 </optional> | |
609 <optional> | |
610 <attribute name="xml:lang"> | |
611 <ref name="langValue"/> | |
612 </attribute> | |
613 </optional> | |
614 <optional> | |
615 <attribute name="xml:space"> | |
616 <choice> | |
617 <value>preserve</value> | |
618 <value>default</value> | |
619 </choice> | |
620 </attribute> | |
621 </optional> | |
622 </define> | |
623 <define name="linkable"> | |
624 <optional> | |
625 <attribute name="role"> | |
626 <ref name="roleValue"/> | |
627 </attribute> | |
628 </optional> | |
629 <optional> | |
630 <attribute name="subject"> | |
631 <ref name="pathValue"/> | |
632 </attribute> | |
633 </optional> | |
634 </define> | |
635 <define name="foreign"> | |
636 <ref name="foreign-attributes"/> | |
637 <zeroOrMore> | |
638 <ref name="foreign-element"/> | |
639 </zeroOrMore> | |
640 </define> | |
641 <define name="foreign-empty"> | |
642 <ref name="foreign-attributes"/> | |
643 </define> | |
644 <define name="foreign-attributes"> | |
645 <zeroOrMore> | |
646 <attribute> | |
647 <anyName> | |
648 <except> | |
649 <nsName ns=""/> | |
650 <nsName ns="http://www.w3.org/XML/1998/namespace"/> | |
651 </except> | |
652 </anyName> | |
653 </attribute> | |
654 </zeroOrMore> | |
655 </define> | |
656 <define name="foreign-element"> | |
657 <element> | |
658 <anyName> | |
659 <except> | |
660 <nsName/> | |
661 </except> | |
662 </anyName> | |
663 <zeroOrMore> | |
664 <choice> | |
665 <attribute> | |
666 <anyName/> | |
667 </attribute> | |
668 <ref name="foreign-element"/> | |
669 <ref name="schema"/> | |
670 <text/> | |
671 </choice> | |
672 </zeroOrMore> | |
673 </element> | |
674 </define> | |
675 <!-- Data types --> | |
676 <define name="uriValue"> | |
677 <data type="anyURI"/> | |
678 </define> | |
679 <define name="pathValue"> | |
680 <data type="string" datatypeLibrary=""/> | |
681 </define> | |
682 <define name="exprValue"> | |
683 <data type="string" datatypeLibrary=""/> | |
684 </define> | |
685 <define name="fpiValue"> | |
686 <data type="string" datatypeLibrary=""/> | |
687 </define> | |
688 <define name="langValue"> | |
689 <data type="language"/> | |
690 </define> | |
691 <define name="roleValue"> | |
692 <data type="string" datatypeLibrary=""/> | |
693 </define> | |
694 <define name="flagValue"> | |
695 <data type="string" datatypeLibrary=""/> | |
696 </define> | |
697 <define name="nameValue"> | |
698 <data type="string" datatypeLibrary=""/> | |
699 </define> | |
700 <!-- In the default query language binding, xsd:NCNAME --> | |
701 <define name="classValue"> | |
702 <data type="string" datatypeLibrary=""/> | |
703 </define> | |
704 <define name="non-empty-string"> | |
705 <data type="token"> | |
706 <param name="minLength">1</param> | |
707 </data> | |
708 </define> | |
709 </grammar> |