File: omdocdc.rng

package info (click to toggle)
texlive-extra 2012.20120611-2
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 1,508,552 kB
  • sloc: perl: 75,280; makefile: 12,192; sh: 9,570; python: 6,296; csh: 2,987; java: 1,367; ansic: 1,032; xml: 896; lisp: 541; lex: 358; ruby: 150; tcl: 142; sed: 28; pascal: 18; awk: 10
file content (121 lines) | stat: -rw-r--r-- 3,832 bytes parent folder | download | duplicates (2)
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
  <!--
    A RelaxNG schema for Open Mathematical documents (OMDoc 1.3) Module DC  
    $Id: omdocdc.rnc 8968 2011-09-07 05:37:09Z kohlhase $
    $HeadURL: https://svn.omdoc.org/repos/omdoc/branches/omdoc-1.3/schema/rnc/omdocdc.rnc $
    See the documentation and examples at http://www.omdoc.org
    Copyright (c) 2004-2010 Michael Kohlhase, released under the GNU Public License (GPL) 
  -->
  <!-- we include the dublin core and MARC elements, filling them with our content types -->
  <define name="dc.common">
    <interleave>
      <ref name="id.attribs"/>
      <ref name="nonlocal.attribs"/>
    </interleave>
  </define>
  <define name="dc.comlang">
    <interleave>
      <ref name="dc.common"/>
      <ref name="xml.lang.attrib"/>
    </interleave>
  </define>
  <define name="dublincore">
    <grammar>
      <include href="MARCRelators.rng"/>
      <include href="dublincore.rng">
        <define name="dc.date">
          <interleave>
            <parentRef name="dc.common"/>
            <optional>
              <attribute name="action">
                <data type="NMTOKEN"/>
              </attribute>
            </optional>
            <optional>
              <attribute name="who">
                <data type="anyURI"/>
              </attribute>
            </optional>
            <choice>
              <data type="date"/>
              <data type="dateTime"/>
            </choice>
          </interleave>
        </define>
        <define name="dc.identifier">
          <choice>
            <parentRef name="tref"/>
            <interleave>
              <parentRef name="dc.common"/>
              <attribute name="scheme">
                <data type="NMTOKEN"/>
              </attribute>
              <text/>
            </interleave>
          </choice>
        </define>
        <define name="dc.type">
          <choice>
            <parentRef name="tref"/>
            <interleave>
              <parentRef name="dc.common"/>
              <choice>
                <value>Dataset</value>
                <value>Text</value>
                <value>Collection</value>
              </choice>
            </interleave>
          </choice>
        </define>
        <define name="dc.inline">
          <choice>
            <parentRef name="tref"/>
            <interleave>
              <parentRef name="dc.comlang"/>
              <parentRef name="inline.model"/>
            </interleave>
          </choice>
        </define>
        <define name="dc.text">
          <choice>
            <parentRef name="tref"/>
            <interleave>
              <parentRef name="dc.comlang"/>
              <parentRef name="plike.class"/>
            </interleave>
          </choice>
        </define>
        <define name="dc.person">
          <choice>
            <parentRef name="tref"/>
            <interleave>
              <parentRef name="dc.common"/>
              <optional>
                <attribute name="role">
                  <ref name="MARCRelators"/>
                </attribute>
              </optional>
              <parentRef name="inline.model"/>
            </interleave>
          </choice>
        </define>
        <define name="dc.rights">
          <choice>
            <parentRef name="tref"/>
            <interleave>
              <parentRef name="dc.comlang"/>
              <parentRef name="plike.class"/>
            </interleave>
          </choice>
        </define>
        <define name="dc.source">
          <parentRef name="plike.class"/>
        </define>
      </include>
    </grammar>
  </define>
  <define name="metadata.model" combine="interleave">
    <ref name="dublincore"/>
  </define>
</grammar>