]> matita.cs.unibo.it Git - helm.git/blob - helm/schemas/schema-h.rdf
ce2d8ed2e9fab9454ce6e385a2a17cbd1815c076
[helm.git] / helm / schemas / schema-h.rdf
1 <?xml version="1.0"?>
2
3 <!-- Rdf Schema definition for CIC XML files:
4 xmlns:h="http://www.cs.unibo.it/~schena/schema-h.rdf#" -->
5
6 <!DOCTYPE rdf: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 hthns 'http://www.cs.unibo.it/~schena/schema-hth.rdf#'>
10         <!ENTITY xschemans 'http://www.w3.org/1999/XMLSchema-datatypes#'>
11    ]>
12
13 <rdf:RDF xml:lang="en"
14        xmlns:rdf="&rdfns;"
15        xmlns:rdfs="&rdfsns;"
16        xmlns:hth="&hthns;"
17        xmlns:xs="&xschemans;">
18
19
20 <!-- RICORDA: aggiungi commento anche a proprieta' e istanze -->
21 <!-- RICORDA: studiare tipi di dato (invece di Literal) -->
22 <!-- RICORDA: specificare i contenuti dei dc elements -->
23 <!-- RICORDA: aggiungi euler properties -->
24 <!-- RICORDA: metadati solo su oggetto (come teoria ma piu' specifici) (non 
25 distinzione tipi di body) e non ridondanze se non riducono il numero di doc 
26 da parsare  -->
27 <!-- RICORDA: definire soprattutto i metadati da inserire a mano -->
28
29 <!-- Classes -->
30
31 <rdfs:Class rdf:ID="Object">
32      <rdfs:comment>Mathematical object represented by a CIC XML 
33 file</rdfs:comment>
34      <rdfs:subClassOf rdf:resource="&hthns;MathResource"/>
35 </rdfs:Class>
36
37 <!-- Objects can inherit its dc properties -->
38 <rdfs:Class rdf:ID="DirectoryOfObjects">
39      <rdfs:comment>Mathematical resource (directory) represented by a set of 
40 CIC XML files, contained in the tree that has the dir as root </rdfs:comment>
41      <rdfs:subClassOf rdf:resource="&hthns;MathResource"/>
42 </rdfs:Class>
43
44 <rdfs:Class rdf:ID="Statement">
45      <rdfs:comment>Type of the object</rdfs:comment>
46 </rdfs:Class>
47
48 <rdfs:Class rdf:ID="Body">
49      <rdfs:comment>Term of the object</rdfs:comment>
50 </rdfs:Class>
51
52 <rdfs:Class rdf:ID="Occurrence">
53      <rdfs:comment>Occurrence of an object inside an object</rdfs:comment>
54 </rdfs:Class>
55
56 <rdfs:Class rdf:ID="Position">
57      <rdfs:comment>Position of an occurrence of an object inside an object</rdfs:comment>
58 </rdfs:Class>
59
60 <rdfs:Class rdf:ID="Postit">
61      <rdfs:comment>Additional information associated to fragments of the objects</rdfs:comment>
62 </rdfs:Class>
63
64 <rdfs:Class rdf:ID="Const">
65      <rdfs:comment>Constant in the body of an object</rdfs:comment>
66 </rdfs:Class>
67
68 <rdfs:Class rdf:ID="StatementId">
69      <rdfs:comment>Ids in the statement</rdfs:comment>
70 </rdfs:Class>
71
72 <rdfs:Class rdf:ID="BodyId">
73      <rdfs:comment>Ids in the body</rdfs:comment>
74 </rdfs:Class>
75
76 <rdfs:Class rdf:ID="ImplArg">
77      <rdfs:comment>Implicit arguments</rdfs:comment>
78 </rdfs:Class>
79
80 <!-- Instances of the class h:Position -->
81
82 <rdfs:Class rdf:ID="MainHypothesis">
83     <rdfs:comment>Occurrence of an object in head position of some hypothesis 
84      of an object statement</rdfs:comment>
85     <rdf:type rdf:resource="#Position"/>
86 </rdfs:Class>
87
88 <rdfs:Class rdf:ID="InHypothesis">
89     <rdfs:comment>Occurrence of an object in the hypotheses of an object 
90      statement</rdfs:comment>
91     <rdf:type rdf:resource="#Position"/>
92 </rdfs:Class>
93
94 <rdfs:Class rdf:ID="MainConclusion">
95     <rdfs:comment>Occurrence of an object in head position of the 
96      conclusion of an object statement</rdfs:comment>
97     <rdf:type rdf:resource="#Position"/>
98 </rdfs:Class>
99
100 <rdfs:Class rdf:ID="InConclusion">
101     <rdfs:comment>Occurrence of an object in the conclusion of an object
102      statement</rdfs:comment>  
103     <rdf:type rdf:resource="#Position"/>
104 </rdfs:Class>
105
106 <rdfs:Class rdf:ID="InBody">
107     <rdfs:comment>Occurrence of an object only in an object body (not in the 
108      statement)</rdfs:comment>
109     <rdf:type rdf:resource="#Position"/>
110 </rdfs:Class>
111
112 <!-- Properties -->
113
114 <rdf:Property rdf:ID="statement">
115     <rdfs:domain rdf:resource="#Object"/>
116     <rdfs:range rdf:resource="#Statement"/>
117 </rdf:Property>
118
119 <rdf:Property rdf:ID="body">
120     <rdfs:domain rdf:resource="#Object"/>
121     <rdfs:range rdf:resource="#Body"/>
122 </rdf:Property>
123
124 <rdf:Property rdf:ID="statementId">
125     <rdfs:domain rdf:resource="#Statement"/>
126     <rdfs:range rdf:resource="#StatementId"/>
127 </rdf:Property>
128
129 <rdf:Property rdf:ID="constrId">
130     <rdfs:domain rdf:resource="#StatementId"/>
131     <rdfs:range rdf:resource="&hthns;HelmID"/>
132 </rdf:Property>
133
134 <rdf:Property rdf:ID="listId">
135     <rdfs:comment>List of all ids in the domain</rdfs:comment>
136     <rdfs:domain rdf:resource="#StatementId"/>
137     <rdfs:domain rdf:resource="#BodyId"/>
138     <rdfs:range rdf:resource="&rdfns;Seq"/>
139 </rdf:Property>
140
141 <rdf:Property rdf:ID="bodyId">
142     <rdfs:domain rdf:resource="#Body"/>
143     <rdfs:range rdf:resource="#BodyId"/>
144 </rdf:Property>
145
146 <rdf:Property rdf:ID="refObj">
147     <rdfs:comment>Reference to an object</rdfs:comment>
148     <rdfs:domain rdf:resource="#Object"/>
149     <rdfs:range rdf:resource="#Occurrence"/>
150 </rdf:Property>
151
152 <rdf:Property rdf:ID="constrImplArg">
153     <rdfs:comment>Implicit arguments of constructors</rdfs:comment>
154     <rdfs:domain rdf:resource="#Statement"/>
155     <rdfs:range rdf:resource="#ImplArg"/>
156 </rdf:Property>
157
158 <rdf:Property rdf:ID="objImplArg">
159     <rdfs:comment>Implicit arguments of objects</rdfs:comment>
160     <rdfs:domain rdf:resource="#Object"/>
161     <rdfs:range rdf:resource="#ImplArg"/>
162 </rdf:Property>
163
164 <rdf:Property rdf:ID="listImplArg">
165     <rdfs:comment>List of implicit arguments</rdfs:comment>
166     <rdfs:domain rdf:resource="#ImplArg"/>
167     <rdfs:range rdf:resource="&rdfns;Seq"/>
168 </rdf:Property>
169
170 <rdf:Property rdf:ID="backPointer">
171     <rdfs:comment>Backwards pointer: who points the object</rdfs:comment>
172     <rdfs:domain rdf:resource="#Object"/>
173     <rdfs:range rdf:resource="#Occurrence"/>
174 </rdf:Property>
175
176 <rdf:Property rdf:ID="occurrence">
177     <rdfs:comment>URI of an object</rdfs:comment>
178     <rdfs:domain rdf:resource="#Occurrence"/>
179     <rdfs:range rdf:resource="&hthns;HelmURI"/>
180 </rdf:Property>
181
182 <rdf:Property rdf:ID="position">
183     <rdfs:comment>Position of an occurrence</rdfs:comment>
184     <rdfs:domain rdf:resource="#Occurrence"/>
185     <rdfs:range rdf:resource="#Position"/>
186 </rdf:Property>
187
188
189 <rdf:Property rdf:ID="postit">
190     <rdfs:comment>Postit</rdfs:comment>
191     <rdfs:domain rdf:resource="#Object"/>
192     <rdfs:range rdf:resource="#Postit"/>
193 </rdf:Property>
194
195 <rdf:Property rdf:ID="content">
196     <rdfs:comment>Content of a Postit</rdfs:comment>
197     <rdfs:domain rdf:resource="#Postit"/>
198     <rdfs:range rdf:resource="&xschemans;string"/>
199 </rdf:Property>
200
201 <rdf:Property rdf:ID="refersTo">
202     <rdfs:comment>Identifies the object fragment (Xpointer) which Postit
203 refers to</rdfs:comment>
204     <rdfs:domain rdf:resource="&hthns;HelmURI"/>
205     <rdfs:range rdf:resource="&rdfsns;Literal"/>
206 </rdf:Property>
207
208 </rdf:RDF>
209
210
211
212
213
214
215
216