blob: 56539d0da4353775f7aa8c0a01838a283e920ec3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT root ANY>
<!ELEMENT e EMPTY>
<!ELEMENT once (e)>
<!ELEMENT twice (e,e)>
<!ENTITY % once-or-twice-a "(e,(e)?)">
<!ENTITY % once-or-twice-b "((e),e?)">
<!ENTITY % once-or-twice-c "((e),(e)?)">
<!ENTITY % once-or-twice-d "(((e)),e?)">
<!ENTITY % once-or-twice-e "(e,(((e)))?)">
<!-- disallowed by spec; a document error, parser needn't report -->
<!-- (e?,e) -->
<!ELEMENT once-or-twice-a %once-or-twice-a;>
<!ELEMENT once-or-twice-b %once-or-twice-b;>
<!ELEMENT once-or-twice-c %once-or-twice-c;>
<!ELEMENT once-or-twice-d %once-or-twice-d;>
<!ELEMENT once-or-twice-e %once-or-twice-e;>
<!-- disallowed by spec; a document error, parser needn't report -->
<!--
<!ELEMENT once-or-twice-X (Xonce;|Xtwice)>
... above, 'X' should be a percent sign but this comment
is being nice to those parsers that try to parse comments
(they shouldn't)
-->
<!ENTITY % once-or-more-a "(e+)">
<!ENTITY % once-or-more-b "(e,e*)">
<!ENTITY % once-or-more-c "((e)+)">
<!ENTITY % once-or-more-d "((e),e*)">
<!ENTITY % once-or-more-e "(e,(e)*)">
<!ELEMENT once-or-more-a %once-or-more-a;>
<!ELEMENT once-or-more-b %once-or-more-b;>
<!ELEMENT once-or-more-c %once-or-more-c;>
<!ELEMENT once-or-more-d %once-or-more-d;>
<!ELEMENT once-or-more-e %once-or-more-e;>
|