3 <!-- Rdf Schema definition for theory files:
4 xmlns:hth="http://www.cs.unibo.it/~schena/schema-hth.rdf#" -->
7 <!ENTITY rdfns 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
8 <!ENTITY rdfsns 'http://www.w3.org/2000/01/rdf-schema#'>
9 <!ENTITY dcns 'http://www.cs.unibo.it/~schena/dces#'>
10 <!ENTITY dcqns 'http://www.cs.unibo.it/~schena/dcq#'>
11 <!ENTITY xschemans 'http://www.w3.org/1999/XMLSchema-datatypes#'>
14 <rdf:RDF xml:lang="en"
19 xmlns:xs="&xschemans;">
21 <!-- RICORDA: aggiungi commento anche a proprieta' e istanze -->
22 <!-- RICORDA: studiare tipi di dato (invece di Literal) -->
23 <!-- RICORDA: specificare i contenuti dei dc elements -->
24 <!-- RICORDA: verifica formato xml.helm.cic -->
25 <!-- RICORDA: aggiungi euler properties -->
29 <rdfs:Class rdf:ID="MathResource">
30 <rdfs:comment>Mathematical resource</rdfs:comment>
31 <rdfs:subClassOf rdf:resource="&rdfsns;Resource"/>
34 <rdfs:Class rdf:ID="Theory">
35 <rdfs:comment>Mathematical resource represented by a theory</rdfs:comment>
36 <rdfs:subClassOf rdf:resource="#MathResource"/>
39 <rdfs:Class rdf:ID="TheoryItem">
40 <rdfs:comment>Theory item represented by: axiom, fact, definition, theorem, lemma, corollary, variable, specified by a XPath expression </rdfs:comment>
43 <rdfs:Class rdf:ID="HelmFormat">
44 <rdfs:comment>HELM File format of a mathematical resource (possible values of the Dublin Core property Format). Possible values of its rdf:about
45 attribute can be XML.cic, XML.hol, XML.mizar. Each Helm format describes
46 a logical framework. The class dcq:IMT contains values as text/xml, text/xhtml,
47 text/mml, text/ps, text/tex, text/pdf.</rdfs:comment>
48 <rdfs:subClassOf rdf:resource="&dcqns;FormatScheme"/>
51 <rdfs:Class rdf:ID="HelmURI">
52 <rdfs:comment>HELM URI of a mathematical resource</rdfs:comment>
55 <rdfs:Class rdf:ID="HelmID">
56 <rdfs:comment>HELM identifier</rdfs:comment>
59 <rdfs:Class rdf:ID="Contact">
60 <rdfs:comment>Creator contact information</rdfs:comment>
63 <!-- Added subProperties of the Property dc:relation -->
65 <rdf:Property rdf:ID="isBasedOn">
66 <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
67 <rdfs:domain rdf:resource="#MathResource"/>
68 <rdfs:range rdf:resource="&rdfsns;Literal"/>
69 <rdfs:comment>A relation between mathematical resources</rdfs:comment>
72 <rdf:Property rdf:ID="isBasisFor">
73 <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
74 <rdfs:domain rdf:resource="#MathResource"/>
75 <rdfs:range rdf:resource="&rdfsns;Literal"/>
76 <rdfs:comment>A relation between mathematical resources</rdfs:comment>
79 <rdf:Property rdf:ID="isSourceFor">
80 <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
81 <rdfs:domain rdf:resource="#MathResource"/>
82 <rdfs:range rdf:resource="&rdfsns;Literal"/>
83 <rdfs:comment>A relation between mathematical resources</rdfs:comment>
86 <rdf:Property rdf:ID="hasSource">
87 <rdfs:subPropertyOf rdf:resource="&dcns;relation"/>
88 <rdfs:domain rdf:resource="#MathResource"/>
89 <rdfs:range rdf:resource="&rdfsns;Literal"/>
90 <rdfs:comment>A relation between mathematical resources</rdfs:comment>
93 <!-- subProperties of Property hth:dependence -->
95 <rdf:Property rdf:ID="uses">
96 <rdfs:subPropertyOf rdf:resource="#dependence"/>
97 <rdfs:comment>A dependence between theory items (for instance: between a theorem or anything else and a variable)</rdfs:comment>
100 <rdf:Property rdf:ID="isUsedBy">
101 <rdfs:subPropertyOf rdf:resource="#dependence"/>
102 <rdfs:comment>A dependence between theory items (for instance: between a variable and
103 a theorem or anything else)</rdfs:comment>
106 <rdf:Property rdf:ID="hasConsequence">
107 <rdfs:subPropertyOf rdf:resource="#dependence"/>
108 <rdfs:comment>A dependence between theory items (for instance: between a theorem and
109 a corollary)</rdfs:comment>
112 <rdf:Property rdf:ID="isConsequenceOf">
113 <rdfs:subPropertyOf rdf:resource="#dependence"/>
114 <rdfs:comment>A dependence between theory items (for instance: between a corollary
115 and a theorem). Alternatively: IsResultOf</rdfs:comment>
118 <rdf:Property rdf:ID="hasPremise">
119 <rdfs:subPropertyOf rdf:resource="#dependence"/>
120 <rdfs:comment>A dependence between theory items (for instance: between a theorem
121 and a lemma)</rdfs:comment>
124 <rdf:Property rdf:ID="isPremiseOf">
125 <rdfs:subPropertyOf rdf:resource="#dependence"/>
126 <rdfs:comment>A dependence between theory items (for instance: between a lemma
127 and a theorem)</rdfs:comment>
130 <!-- Possible values of rdf:value of the dct:Text instance of dct:DCMIType,
131 can be: Abstract, Paper, Bibliography, HomePage, LectureNotes, Monograph,
132 PatentSpec, Preprints, Proceedings, Review, Separatum, Serial, TechReport,
133 Thesis, Enclosure, General. -->
134 <!-- There are dct:Image and dct:Software. Possible values of rdf:value
135 of the dct:Software can be: Exec, Source. -->
136 <!-- Text.general describes a document not of the following types. -->
137 <!-- A helm theory has no type per se -->
141 <rdf:Property rdf:ID="theoryItem">
142 <rdfs:domain rdf:resource="#Theory"/>
143 <rdfs:range rdf:resource="#TheoryItem"/>
146 <rdf:Property rdf:ID="dependence">
147 <rdfs:domain rdf:resource="#TheoryItem"/>
148 <rdfs:range rdf:resource="#HelmURI"/>
151 <rdf:Property rdf:ID="itemType">
152 <rdfs:comment>Axiom, Fact, Definition, Theorem, Lemma, Corollary,
153 Variable. Redundant info: it is already captured by the corresponding xml data</rdfs:comment>
154 <rdfs:domain rdf:resource="#TheoryItem"/>
155 <rdfs:range rdf:resource="&xschemans;string"/>
158 <rdf:Property rdf:ID="label">
159 <rdfs:comment>Description of the kind of objects: data type,
160 algorithm, specification, theorem containing algorithm, verification (that the
161 implementation satisfies the specification), predicate/relation, proposition</rdfs:comment>
162 <rdfs:domain rdf:resource="#TheoryItem"/>
163 <rdfs:range rdf:resource="&xschemans;string"/>
166 <!-- ex. f:N->Z => N>->Z and n:Nat => n:Z -->
167 <rdf:Property rdf:ID="isCoercion">
168 <rdfs:comment>A Definition item can be a coercion</rdfs:comment>
169 <rdfs:domain rdf:resource="#TheoryItem"/>
170 <rdfs:range rdf:resource="&xschemans;boolean"/>
173 <!-- The id info is no more contained in the theory xml doc, so there isn't
174 redundant info between metadata and data -->
175 <rdf:Property rdf:ID="ident">
176 <rdfs:domain rdf:resource="#TheoryItem"/>
177 <rdfs:range rdf:resource="#HelmID"/>
180 <!-- There are also dcq:created and dcq:modified -->
181 <rdf:Property rdf:ID="institution">
182 <rdfs:subPropertyOf rdf:resource="&dcns;creator"/>
183 <rdfs:domain rdf:resource="#MathResource"/>
184 <rdfs:range rdf:resource="&xschemans;string"/>
187 <rdf:Property rdf:ID="contact">
188 <rdfs:subPropertyOf rdf:resource="&dcns;creator"/>
189 <rdfs:domain rdf:resource="#MathResource"/>
190 <rdfs:range rdf:resource="#Contact"/>
193 <rdf:Property rdf:ID="email">
194 <rdfs:domain rdf:resource="#Contact"/>
195 <rdfs:range rdf:resource="&xschemans;string"/>
198 <rdf:Property rdf:ID="address">
199 <rdfs:domain rdf:resource="#Contact"/>
200 <rdfs:range rdf:resource="&xschemans;string"/>
203 <!-- HELM: Here we want to constraint an external (dc) property to a
204 particular range and domain (hth:MathResource). VRP gives a Warning when
205 (extending or modifying) constraining the range of a property defined
206 in another schema; the correct way is to specialize it with a subProperty. -->
207 <!-- <rdf:Description rdf:about = "&dcns;type">
208 <rdfs:domain rdf:resource="#MathResource"/>
209 </rdf:Description> -->