1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?>
2*184e05d2SAndrew Rist<!--***********************************************************
3*184e05d2SAndrew Rist *
4*184e05d2SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
5*184e05d2SAndrew Rist * or more contributor license agreements.  See the NOTICE file
6*184e05d2SAndrew Rist * distributed with this work for additional information
7*184e05d2SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
8*184e05d2SAndrew Rist * to you under the Apache License, Version 2.0 (the
9*184e05d2SAndrew Rist * "License"); you may not use this file except in compliance
10*184e05d2SAndrew Rist * with the License.  You may obtain a copy of the License at
11*184e05d2SAndrew Rist *
12*184e05d2SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
13*184e05d2SAndrew Rist *
14*184e05d2SAndrew Rist * Unless required by applicable law or agreed to in writing,
15*184e05d2SAndrew Rist * software distributed under the License is distributed on an
16*184e05d2SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17*184e05d2SAndrew Rist * KIND, either express or implied.  See the License for the
18*184e05d2SAndrew Rist * specific language governing permissions and limitations
19*184e05d2SAndrew Rist * under the License.
20*184e05d2SAndrew Rist *
21*184e05d2SAndrew Rist ***********************************************************-->
22*184e05d2SAndrew Rist
23cdf0e10cSrcweir<grammar xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" ns="http://www.w3.org/XML/1998/namespace" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" xmlns:xml="http://www.w3.org/XML/1998/namespace">
24cdf0e10cSrcweir  <start>
25cdf0e10cSrcweir    <ref name="doc"/>
26cdf0e10cSrcweir  </start>
27cdf0e10cSrcweir  <!-- I cannot seem to do this in RNGC so they are expanded in-line -->
28cdf0e10cSrcweir  <!--
29cdf0e10cSrcweir    coreSyntaxTerms = rdf:RDF | rdf:ID | rdf:about | rdf:parseType | rdf:resource | rdf:nodeID | rdf:datatype
30cdf0e10cSrcweir    syntaxTerms = coreSyntaxTerms | rdf:Description | rdf:li
31cdf0e10cSrcweir    oldTerms    = rdf:aboutEach | rdf:aboutEachPrefix | rdf:bagID
32cdf0e10cSrcweir    nodeElementURIs       = * - ( coreSyntaxTerms | rdf:li | oldTerms )
33cdf0e10cSrcweir    propertyElementURIs   = * - ( coreSyntaxTerms | rdf:Description | oldTerms )
34cdf0e10cSrcweir    propertyAttributeURIs = * - ( coreSyntaxTerms | rdf:Description | rdf:li | oldTerms )
35cdf0e10cSrcweir  -->
36cdf0e10cSrcweir  <!--
37cdf0e10cSrcweir    Also needed to allow rdf:li on all property element productions
38cdf0e10cSrcweir    since we can't capture the rdf:li rewriting to rdf_<n> in relaxng
39cdf0e10cSrcweir  -->
40cdf0e10cSrcweir  <!-- Need to add these explicitly -->
41cdf0e10cSrcweir  <define name="xmllang">
42cdf0e10cSrcweir    <attribute name="xml:lang"/>
43cdf0e10cSrcweir  </define>
44cdf0e10cSrcweir  <define name="xmlbase">
45cdf0e10cSrcweir    <attribute name="xml:base"/>
46cdf0e10cSrcweir  </define>
47cdf0e10cSrcweir  <!-- and to forbid every other xml:* attribute, element -->
48cdf0e10cSrcweir  <define name="doc">
49cdf0e10cSrcweir    <ref name="RDF"/>
50cdf0e10cSrcweir  </define>
51cdf0e10cSrcweir  <define name="RDF">
52cdf0e10cSrcweir    <element name="rdf:RDF">
53cdf0e10cSrcweir      <optional>
54cdf0e10cSrcweir        <ref name="xmllang"/>
55cdf0e10cSrcweir      </optional>
56cdf0e10cSrcweir      <optional>
57cdf0e10cSrcweir        <ref name="xmlbase"/>
58cdf0e10cSrcweir      </optional>
59cdf0e10cSrcweir      <ref name="nodeElementList"/>
60cdf0e10cSrcweir    </element>
61cdf0e10cSrcweir  </define>
62cdf0e10cSrcweir  <define name="nodeElementList">
63cdf0e10cSrcweir    <zeroOrMore>
64cdf0e10cSrcweir      <ref name="nodeElement"/>
65cdf0e10cSrcweir    </zeroOrMore>
66cdf0e10cSrcweir  </define>
67cdf0e10cSrcweir  <!--
68cdf0e10cSrcweir    Should be something like:
69cdf0e10cSrcweir     ws* , (  nodeElement , ws* )*
70cdf0e10cSrcweir    but RELAXNG does this by default, ignoring whitespace separating tags.
71cdf0e10cSrcweir  -->
72cdf0e10cSrcweir  <define name="nodeElement">
73cdf0e10cSrcweir    <element>
74cdf0e10cSrcweir      <anyName>
75cdf0e10cSrcweir        <except>
76cdf0e10cSrcweir          <nsName ns=""/>
77cdf0e10cSrcweir          <name>rdf:RDF</name>
78cdf0e10cSrcweir          <name>rdf:ID</name>
79cdf0e10cSrcweir          <name>rdf:about</name>
80cdf0e10cSrcweir          <name>rdf:parseType</name>
81cdf0e10cSrcweir          <name>rdf:resource</name>
82cdf0e10cSrcweir          <name>rdf:nodeID</name>
83cdf0e10cSrcweir          <name>rdf:datatype</name>
84cdf0e10cSrcweir          <name>rdf:li</name>
85cdf0e10cSrcweir          <name>rdf:aboutEach</name>
86cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
87cdf0e10cSrcweir          <name>rdf:bagID</name>
88cdf0e10cSrcweir        </except>
89cdf0e10cSrcweir      </anyName>
90cdf0e10cSrcweir      <optional>
91cdf0e10cSrcweir        <choice>
92cdf0e10cSrcweir          <ref name="idAttr"/>
93cdf0e10cSrcweir          <ref name="nodeIdAttr"/>
94cdf0e10cSrcweir          <ref name="aboutAttr"/>
95cdf0e10cSrcweir        </choice>
96cdf0e10cSrcweir      </optional>
97cdf0e10cSrcweir      <optional>
98cdf0e10cSrcweir        <ref name="xmllang"/>
99cdf0e10cSrcweir      </optional>
100cdf0e10cSrcweir      <optional>
101cdf0e10cSrcweir        <ref name="xmlbase"/>
102cdf0e10cSrcweir      </optional>
103cdf0e10cSrcweir      <zeroOrMore>
104cdf0e10cSrcweir        <ref name="propertyAttr"/>
105cdf0e10cSrcweir      </zeroOrMore>
106cdf0e10cSrcweir      <ref name="propertyEltList"/>
107cdf0e10cSrcweir    </element>
108cdf0e10cSrcweir  </define>
109cdf0e10cSrcweir  <!--
110cdf0e10cSrcweir    It is not possible to say "and not things
111cdf0e10cSrcweir    beginning with _ in the rdf: namespace" in RELAX NG.
112cdf0e10cSrcweir  -->
113cdf0e10cSrcweir  <define name="ws">
114cdf0e10cSrcweir    <value> </value>
115cdf0e10cSrcweir  </define>
116cdf0e10cSrcweir  <!--
117cdf0e10cSrcweir    Not used in this RELAX NG schema; but should be any legal XML
118cdf0e10cSrcweir    whitespace defined by http://www.w3.org/TR/2000/REC-xml-20001006#NT-S
119cdf0e10cSrcweir  -->
120cdf0e10cSrcweir  <define name="propertyEltList">
121cdf0e10cSrcweir    <zeroOrMore>
122cdf0e10cSrcweir      <ref name="propertyElt"/>
123cdf0e10cSrcweir    </zeroOrMore>
124cdf0e10cSrcweir  </define>
125cdf0e10cSrcweir  <!--
126cdf0e10cSrcweir    Should be something like:
127cdf0e10cSrcweir     ws* , ( propertyElt , ws* )*
128cdf0e10cSrcweir    but RELAXNG does this by default, ignoring whitespace separating tags.
129cdf0e10cSrcweir  -->
130cdf0e10cSrcweir  <define name="propertyElt">
131cdf0e10cSrcweir    <choice>
132cdf0e10cSrcweir      <ref name="resourcePropertyElt"/>
133cdf0e10cSrcweir      <ref name="literalPropertyElt"/>
134cdf0e10cSrcweir      <ref name="parseTypeLiteralPropertyElt"/>
135cdf0e10cSrcweir      <ref name="parseTypeResourcePropertyElt"/>
136cdf0e10cSrcweir      <ref name="parseTypeCollectionPropertyElt"/>
137cdf0e10cSrcweir      <ref name="parseTypeOtherPropertyElt"/>
138cdf0e10cSrcweir      <ref name="emptyPropertyElt"/>
139cdf0e10cSrcweir    </choice>
140cdf0e10cSrcweir  </define>
141cdf0e10cSrcweir  <define name="resourcePropertyElt">
142cdf0e10cSrcweir    <element>
143cdf0e10cSrcweir      <anyName>
144cdf0e10cSrcweir        <except>
145cdf0e10cSrcweir          <nsName ns=""/>
146cdf0e10cSrcweir          <name>rdf:RDF</name>
147cdf0e10cSrcweir          <name>rdf:ID</name>
148cdf0e10cSrcweir          <name>rdf:about</name>
149cdf0e10cSrcweir          <name>rdf:parseType</name>
150cdf0e10cSrcweir          <name>rdf:resource</name>
151cdf0e10cSrcweir          <name>rdf:nodeID</name>
152cdf0e10cSrcweir          <name>rdf:datatype</name>
153cdf0e10cSrcweir          <name>rdf:Description</name>
154cdf0e10cSrcweir          <name>rdf:aboutEach</name>
155cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
156cdf0e10cSrcweir          <name>rdf:bagID</name>
157cdf0e10cSrcweir          <nsName/>
158cdf0e10cSrcweir        </except>
159cdf0e10cSrcweir      </anyName>
160cdf0e10cSrcweir      <optional>
161cdf0e10cSrcweir        <ref name="idAttr"/>
162cdf0e10cSrcweir      </optional>
163cdf0e10cSrcweir      <optional>
164cdf0e10cSrcweir        <ref name="xmllang"/>
165cdf0e10cSrcweir      </optional>
166cdf0e10cSrcweir      <optional>
167cdf0e10cSrcweir        <ref name="xmlbase"/>
168cdf0e10cSrcweir      </optional>
169cdf0e10cSrcweir      <ref name="nodeElement"/>
170cdf0e10cSrcweir    </element>
171cdf0e10cSrcweir  </define>
172cdf0e10cSrcweir  <define name="literalPropertyElt">
173cdf0e10cSrcweir    <element>
174cdf0e10cSrcweir      <anyName>
175cdf0e10cSrcweir        <except>
176cdf0e10cSrcweir          <nsName ns=""/>
177cdf0e10cSrcweir          <name>rdf:RDF</name>
178cdf0e10cSrcweir          <name>rdf:ID</name>
179cdf0e10cSrcweir          <name>rdf:about</name>
180cdf0e10cSrcweir          <name>rdf:parseType</name>
181cdf0e10cSrcweir          <name>rdf:resource</name>
182cdf0e10cSrcweir          <name>rdf:nodeID</name>
183cdf0e10cSrcweir          <name>rdf:datatype</name>
184cdf0e10cSrcweir          <name>rdf:Description</name>
185cdf0e10cSrcweir          <name>rdf:aboutEach</name>
186cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
187cdf0e10cSrcweir          <name>rdf:bagID</name>
188cdf0e10cSrcweir          <nsName/>
189cdf0e10cSrcweir        </except>
190cdf0e10cSrcweir      </anyName>
191cdf0e10cSrcweir      <optional>
192cdf0e10cSrcweir        <choice>
193cdf0e10cSrcweir          <ref name="idAttr"/>
194cdf0e10cSrcweir          <ref name="datatypeAttr"/>
195cdf0e10cSrcweir        </choice>
196cdf0e10cSrcweir      </optional>
197cdf0e10cSrcweir      <optional>
198cdf0e10cSrcweir        <ref name="xmllang"/>
199cdf0e10cSrcweir      </optional>
200cdf0e10cSrcweir      <optional>
201cdf0e10cSrcweir        <ref name="xmlbase"/>
202cdf0e10cSrcweir      </optional>
203cdf0e10cSrcweir      <text/>
204cdf0e10cSrcweir    </element>
205cdf0e10cSrcweir  </define>
206cdf0e10cSrcweir  <define name="parseTypeLiteralPropertyElt">
207cdf0e10cSrcweir    <element>
208cdf0e10cSrcweir      <anyName>
209cdf0e10cSrcweir        <except>
210cdf0e10cSrcweir          <nsName ns=""/>
211cdf0e10cSrcweir          <name>rdf:RDF</name>
212cdf0e10cSrcweir          <name>rdf:ID</name>
213cdf0e10cSrcweir          <name>rdf:about</name>
214cdf0e10cSrcweir          <name>rdf:parseType</name>
215cdf0e10cSrcweir          <name>rdf:resource</name>
216cdf0e10cSrcweir          <name>rdf:nodeID</name>
217cdf0e10cSrcweir          <name>rdf:datatype</name>
218cdf0e10cSrcweir          <name>rdf:Description</name>
219cdf0e10cSrcweir          <name>rdf:aboutEach</name>
220cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
221cdf0e10cSrcweir          <name>rdf:bagID</name>
222cdf0e10cSrcweir          <nsName/>
223cdf0e10cSrcweir        </except>
224cdf0e10cSrcweir      </anyName>
225cdf0e10cSrcweir      <optional>
226cdf0e10cSrcweir        <ref name="idAttr"/>
227cdf0e10cSrcweir      </optional>
228cdf0e10cSrcweir      <ref name="parseLiteral"/>
229cdf0e10cSrcweir      <optional>
230cdf0e10cSrcweir        <ref name="xmllang"/>
231cdf0e10cSrcweir      </optional>
232cdf0e10cSrcweir      <optional>
233cdf0e10cSrcweir        <ref name="xmlbase"/>
234cdf0e10cSrcweir      </optional>
235cdf0e10cSrcweir      <ref name="literal"/>
236cdf0e10cSrcweir    </element>
237cdf0e10cSrcweir  </define>
238cdf0e10cSrcweir  <define name="parseTypeResourcePropertyElt">
239cdf0e10cSrcweir    <element>
240cdf0e10cSrcweir      <anyName>
241cdf0e10cSrcweir        <except>
242cdf0e10cSrcweir          <nsName ns=""/>
243cdf0e10cSrcweir          <name>rdf:RDF</name>
244cdf0e10cSrcweir          <name>rdf:ID</name>
245cdf0e10cSrcweir          <name>rdf:about</name>
246cdf0e10cSrcweir          <name>rdf:parseType</name>
247cdf0e10cSrcweir          <name>rdf:resource</name>
248cdf0e10cSrcweir          <name>rdf:nodeID</name>
249cdf0e10cSrcweir          <name>rdf:datatype</name>
250cdf0e10cSrcweir          <name>rdf:Description</name>
251cdf0e10cSrcweir          <name>rdf:aboutEach</name>
252cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
253cdf0e10cSrcweir          <name>rdf:bagID</name>
254cdf0e10cSrcweir          <nsName/>
255cdf0e10cSrcweir        </except>
256cdf0e10cSrcweir      </anyName>
257cdf0e10cSrcweir      <optional>
258cdf0e10cSrcweir        <ref name="idAttr"/>
259cdf0e10cSrcweir      </optional>
260cdf0e10cSrcweir      <ref name="parseResource"/>
261cdf0e10cSrcweir      <optional>
262cdf0e10cSrcweir        <ref name="xmllang"/>
263cdf0e10cSrcweir      </optional>
264cdf0e10cSrcweir      <optional>
265cdf0e10cSrcweir        <ref name="xmlbase"/>
266cdf0e10cSrcweir      </optional>
267cdf0e10cSrcweir      <ref name="propertyEltList"/>
268cdf0e10cSrcweir    </element>
269cdf0e10cSrcweir  </define>
270cdf0e10cSrcweir  <define name="parseTypeCollectionPropertyElt">
271cdf0e10cSrcweir    <element>
272cdf0e10cSrcweir      <anyName>
273cdf0e10cSrcweir        <except>
274cdf0e10cSrcweir          <nsName ns=""/>
275cdf0e10cSrcweir          <name>rdf:RDF</name>
276cdf0e10cSrcweir          <name>rdf:ID</name>
277cdf0e10cSrcweir          <name>rdf:about</name>
278cdf0e10cSrcweir          <name>rdf:parseType</name>
279cdf0e10cSrcweir          <name>rdf:resource</name>
280cdf0e10cSrcweir          <name>rdf:nodeID</name>
281cdf0e10cSrcweir          <name>rdf:datatype</name>
282cdf0e10cSrcweir          <name>rdf:Description</name>
283cdf0e10cSrcweir          <name>rdf:aboutEach</name>
284cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
285cdf0e10cSrcweir          <name>rdf:bagID</name>
286cdf0e10cSrcweir          <nsName/>
287cdf0e10cSrcweir        </except>
288cdf0e10cSrcweir      </anyName>
289cdf0e10cSrcweir      <optional>
290cdf0e10cSrcweir        <ref name="idAttr"/>
291cdf0e10cSrcweir      </optional>
292cdf0e10cSrcweir      <optional>
293cdf0e10cSrcweir        <ref name="xmllang"/>
294cdf0e10cSrcweir      </optional>
295cdf0e10cSrcweir      <optional>
296cdf0e10cSrcweir        <ref name="xmlbase"/>
297cdf0e10cSrcweir      </optional>
298cdf0e10cSrcweir      <ref name="parseCollection"/>
299cdf0e10cSrcweir      <ref name="nodeElementList"/>
300cdf0e10cSrcweir    </element>
301cdf0e10cSrcweir  </define>
302cdf0e10cSrcweir  <define name="parseTypeOtherPropertyElt">
303cdf0e10cSrcweir    <element>
304cdf0e10cSrcweir      <anyName>
305cdf0e10cSrcweir        <except>
306cdf0e10cSrcweir          <nsName ns=""/>
307cdf0e10cSrcweir          <name>rdf:RDF</name>
308cdf0e10cSrcweir          <name>rdf:ID</name>
309cdf0e10cSrcweir          <name>rdf:about</name>
310cdf0e10cSrcweir          <name>rdf:parseType</name>
311cdf0e10cSrcweir          <name>rdf:resource</name>
312cdf0e10cSrcweir          <name>rdf:nodeID</name>
313cdf0e10cSrcweir          <name>rdf:datatype</name>
314cdf0e10cSrcweir          <name>rdf:Description</name>
315cdf0e10cSrcweir          <name>rdf:aboutEach</name>
316cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
317cdf0e10cSrcweir          <name>rdf:bagID</name>
318cdf0e10cSrcweir          <nsName/>
319cdf0e10cSrcweir        </except>
320cdf0e10cSrcweir      </anyName>
321cdf0e10cSrcweir      <optional>
322cdf0e10cSrcweir        <ref name="idAttr"/>
323cdf0e10cSrcweir      </optional>
324cdf0e10cSrcweir      <optional>
325cdf0e10cSrcweir        <ref name="xmllang"/>
326cdf0e10cSrcweir      </optional>
327cdf0e10cSrcweir      <optional>
328cdf0e10cSrcweir        <ref name="xmlbase"/>
329cdf0e10cSrcweir      </optional>
330cdf0e10cSrcweir      <ref name="parseOther"/>
331cdf0e10cSrcweir      <ref name="any"/>
332cdf0e10cSrcweir    </element>
333cdf0e10cSrcweir  </define>
334cdf0e10cSrcweir  <define name="emptyPropertyElt">
335cdf0e10cSrcweir    <element>
336cdf0e10cSrcweir      <anyName>
337cdf0e10cSrcweir        <except>
338cdf0e10cSrcweir          <nsName ns=""/>
339cdf0e10cSrcweir          <name>rdf:RDF</name>
340cdf0e10cSrcweir          <name>rdf:ID</name>
341cdf0e10cSrcweir          <name>rdf:about</name>
342cdf0e10cSrcweir          <name>rdf:parseType</name>
343cdf0e10cSrcweir          <name>rdf:resource</name>
344cdf0e10cSrcweir          <name>rdf:nodeID</name>
345cdf0e10cSrcweir          <name>rdf:datatype</name>
346cdf0e10cSrcweir          <name>rdf:Description</name>
347cdf0e10cSrcweir          <name>rdf:aboutEach</name>
348cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
349cdf0e10cSrcweir          <name>rdf:bagID</name>
350cdf0e10cSrcweir          <nsName/>
351cdf0e10cSrcweir        </except>
352cdf0e10cSrcweir      </anyName>
353cdf0e10cSrcweir      <optional>
354cdf0e10cSrcweir        <ref name="idAttr"/>
355cdf0e10cSrcweir      </optional>
356cdf0e10cSrcweir      <optional>
357cdf0e10cSrcweir        <choice>
358cdf0e10cSrcweir          <ref name="resourceAttr"/>
359cdf0e10cSrcweir          <ref name="nodeIdAttr"/>
360cdf0e10cSrcweir        </choice>
361cdf0e10cSrcweir      </optional>
362cdf0e10cSrcweir      <optional>
363cdf0e10cSrcweir        <ref name="xmllang"/>
364cdf0e10cSrcweir      </optional>
365cdf0e10cSrcweir      <optional>
366cdf0e10cSrcweir        <ref name="xmlbase"/>
367cdf0e10cSrcweir      </optional>
368cdf0e10cSrcweir      <zeroOrMore>
369cdf0e10cSrcweir        <ref name="propertyAttr"/>
370cdf0e10cSrcweir      </zeroOrMore>
371cdf0e10cSrcweir    </element>
372cdf0e10cSrcweir  </define>
373cdf0e10cSrcweir  <define name="idAttr">
374cdf0e10cSrcweir    <attribute name="rdf:ID">
375cdf0e10cSrcweir      <ref name="IDsymbol"/>
376cdf0e10cSrcweir    </attribute>
377cdf0e10cSrcweir  </define>
378cdf0e10cSrcweir  <define name="nodeIdAttr">
379cdf0e10cSrcweir    <attribute name="rdf:nodeID">
380cdf0e10cSrcweir      <ref name="IDsymbol"/>
381cdf0e10cSrcweir    </attribute>
382cdf0e10cSrcweir  </define>
383cdf0e10cSrcweir  <define name="aboutAttr">
384cdf0e10cSrcweir    <attribute name="rdf:about">
385cdf0e10cSrcweir      <ref name="URI-reference"/>
386cdf0e10cSrcweir    </attribute>
387cdf0e10cSrcweir  </define>
388cdf0e10cSrcweir  <define name="propertyAttr">
389cdf0e10cSrcweir    <attribute>
390cdf0e10cSrcweir      <anyName>
391cdf0e10cSrcweir        <except>
392cdf0e10cSrcweir          <nsName ns=""/>
393cdf0e10cSrcweir          <name>rdf:RDF</name>
394cdf0e10cSrcweir          <name>rdf:ID</name>
395cdf0e10cSrcweir          <name>rdf:about</name>
396cdf0e10cSrcweir          <name>rdf:parseType</name>
397cdf0e10cSrcweir          <name>rdf:resource</name>
398cdf0e10cSrcweir          <name>rdf:nodeID</name>
399cdf0e10cSrcweir          <name>rdf:datatype</name>
400cdf0e10cSrcweir          <name>rdf:li</name>
401cdf0e10cSrcweir          <name>rdf:Description</name>
402cdf0e10cSrcweir          <name>rdf:aboutEach</name>
403cdf0e10cSrcweir          <name>rdf:aboutEachPrefix</name>
404cdf0e10cSrcweir          <name>rdf:bagID</name>
405cdf0e10cSrcweir          <nsName/>
406cdf0e10cSrcweir        </except>
407cdf0e10cSrcweir      </anyName>
408cdf0e10cSrcweir      <data type="string" datatypeLibrary=""/>
409cdf0e10cSrcweir    </attribute>
410cdf0e10cSrcweir  </define>
411cdf0e10cSrcweir  <define name="resourceAttr">
412cdf0e10cSrcweir    <attribute name="rdf:resource">
413cdf0e10cSrcweir      <ref name="URI-reference"/>
414cdf0e10cSrcweir    </attribute>
415cdf0e10cSrcweir  </define>
416cdf0e10cSrcweir  <define name="datatypeAttr">
417cdf0e10cSrcweir    <attribute name="rdf:datatype">
418cdf0e10cSrcweir      <ref name="URI-reference"/>
419cdf0e10cSrcweir    </attribute>
420cdf0e10cSrcweir  </define>
421cdf0e10cSrcweir  <define name="parseLiteral">
422cdf0e10cSrcweir    <attribute name="rdf:parseType">
423cdf0e10cSrcweir      <value>Literal</value>
424cdf0e10cSrcweir    </attribute>
425cdf0e10cSrcweir  </define>
426cdf0e10cSrcweir  <define name="parseResource">
427cdf0e10cSrcweir    <attribute name="rdf:parseType">
428cdf0e10cSrcweir      <value>Resource</value>
429cdf0e10cSrcweir    </attribute>
430cdf0e10cSrcweir  </define>
431cdf0e10cSrcweir  <define name="parseCollection">
432cdf0e10cSrcweir    <attribute name="rdf:parseType">
433cdf0e10cSrcweir      <value>Collection</value>
434cdf0e10cSrcweir    </attribute>
435cdf0e10cSrcweir  </define>
436cdf0e10cSrcweir  <define name="parseOther">
437cdf0e10cSrcweir    <attribute name="rdf:parseType"/>
438cdf0e10cSrcweir  </define>
439cdf0e10cSrcweir  <define name="URI-reference">
440cdf0e10cSrcweir    <data type="string" datatypeLibrary=""/>
441cdf0e10cSrcweir  </define>
442cdf0e10cSrcweir  <define name="literal">
443cdf0e10cSrcweir    <ref name="any"/>
444cdf0e10cSrcweir  </define>
445cdf0e10cSrcweir  <define name="IDsymbol">
446cdf0e10cSrcweir    <data type="NMTOKEN"/>
447cdf0e10cSrcweir  </define>
448cdf0e10cSrcweir  <define name="any">
449cdf0e10cSrcweir    <mixed>
450cdf0e10cSrcweir      <zeroOrMore>
451cdf0e10cSrcweir        <element>
452cdf0e10cSrcweir          <anyName/>
453cdf0e10cSrcweir          <zeroOrMore>
454cdf0e10cSrcweir            <attribute>
455cdf0e10cSrcweir              <anyName/>
456cdf0e10cSrcweir            </attribute>
457cdf0e10cSrcweir          </zeroOrMore>
458cdf0e10cSrcweir          <ref name="any"/>
459cdf0e10cSrcweir        </element>
460cdf0e10cSrcweir      </zeroOrMore>
461cdf0e10cSrcweir    </mixed>
462cdf0e10cSrcweir  </define>
463cdf0e10cSrcweir</grammar>
464