1#
2# Copyright (c) 2007 NEPOMUK Consortium
3# Copyright (c) 2011 Sebastian Trueg <trueg@kde.org>
4# All rights reserved, licensed under either CC-BY or BSD.
5#
6# You are free:
7#  * to Share - to copy, distribute and transmit the work
8#  * to Remix - to adapt the work
9# Under the following conditions:
10#  * Attribution - You must attribute the work in the manner specified by the author
11#    or licensor (but not in any way that suggests that they endorse you or your use
12#    of the work).
13#
14# Redistribution and use in source and binary forms, with or without modification,
15# are permitted provided that the following conditions are met:
16#  * Redistributions of source code must retain the above copyright notice, this
17#    list of conditions and the following disclaimer.
18#  * Redistributions in binary form must reproduce the above copyright notice, this
19#    list of conditions and the following disclaimer in the documentation and/or
20#    other materials provided with the distribution.
21#  * Neither the names of the authors nor the names of contributors may
22#    be used to endorse or promote products derived from this ontology without
23#    specific prior written permission.
24#
25# THIS ONTOLOGY IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
26# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
27# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
28# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
29# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
30# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
32# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
34# THIS ONTOLOGY, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
35#
36
37@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
38@prefix nao:     <http://www.semanticdesktop.org/ontologies/2007/08/15/nao#> .
39@prefix nrl:     <http://www.semanticdesktop.org/ontologies/2007/08/15/nrl#> .
40@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
41@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
42
43<http://www.semanticdesktop.org/ontologies/2007/08/15/nrl#> {
44    nrl:imports
45          a       rdf:Property ;
46          rdfs:comment "Models a subsumption relationship between two graphs, stating that the object graph is imported and included in the subject graph" ;
47          rdfs:domain nrl:Data ;
48          rdfs:label "imports" ;
49          rdfs:range nrl:Data ;
50          rdfs:subPropertyOf nrl:superGraphOf .
51
52    nrl:ruleLanguage
53          a       rdf:Property ;
54          rdfs:comment "Specifies the rule language for a view specification that is driven by rules" ;
55          rdfs:domain nrl:RuleViewSpecification ;
56          rdfs:label "ruleLanguage" ;
57          rdfs:range rdfs:Literal .
58
59    nrl:cardinality
60          a       rdf:Property ;
61          rdfs:comment "Specifies the precise value cardinality for a specific property" ;
62          rdfs:domain rdf:Property ;
63          rdfs:label "cardinality" ;
64          rdfs:range rdfs:Literal .
65
66    nrl:InverseFunctionalProperty
67          a       rdfs:Class ;
68          rdfs:comment "A marker class to identify inverse functional properties" ;
69          rdfs:label "InverseFunctionalProperty" ;
70          rdfs:subClassOf rdfs:Resource .
71
72    nrl:Graph
73          a       rdfs:Class ;
74          rdfs:comment "Represents a named graph" ;
75          rdfs:label "Graph" ;
76          rdfs:subClassOf rdfs:Resource .
77
78    nrl:hasSpecification
79          a       rdf:Property ;
80          rdfs:comment "Points to the representation of the view specification required to generate the graph view in question" ;
81          rdfs:domain nrl:GraphView ;
82          rdfs:label "hasSpecification" ;
83          rdfs:range nrl:ViewSpecification .
84
85    nrl:DocumentGraph
86          a       rdfs:Class ;
87          rdfs:comment "A marker class to identify named graphs that exist within a physical document" ;
88          rdfs:label "DocumentGraph" ;
89          rdfs:subClassOf nrl:Graph .
90
91    nrl:coreGraphMetadataFor
92          a       rdf:Property , nrl:InverseFunctionalProperty ;
93          rdfs:subPropertyOf nrl:graphMetadataFor ;
94          rdfs:comment "Links a metadata graph to the graph for which it specifies the core graph properties including the semantics and the graph namespace. A graph can have only one unique core metadata graph" ;
95          rdfs:domain nrl:GraphMetadata ;
96          rdfs:label "coreGraphMetadataFor" ;
97          rdfs:range nrl:Graph .
98
99    nrl:TransitiveProperty
100          a       rdfs:Class ;
101          rdfs:comment "A marker class to identify transitive properties" ;
102          rdfs:label "TransitiveProperty" ;
103          rdfs:subClassOf rdfs:Resource .
104
105    nrl:FunctionalProperty
106          a       rdfs:Class ;
107          rdfs:comment "A marker class to identify functional properties" ;
108          rdfs:label "FunctionalProperty" ;
109          rdfs:subClassOf rdfs:Resource .
110
111    nrl:KnowledgeBase
112          a       rdfs:Class ;
113          rdfs:comment "Represents a named graph containing both schematic and instance data" ;
114          rdfs:label "KnowledgeBase" ;
115          rdfs:subClassOf nrl:Ontology , nrl:InstanceBase .
116
117    nrl:externalRealizer
118          a       rdf:Property ;
119          rdfs:comment "Points to the location of the realizer for the external view specification" ;
120          rdfs:domain nrl:ExternalViewSpecification ;
121          rdfs:label "externalRealizer" ;
122          rdfs:range rdfs:Literal .
123
124    nrl:subGraphOf
125          a       rdf:Property ;
126          rdfs:comment "Specifies a containment relationship between two graphs, meaning that the subject graph is included in the object graph" ;
127          rdfs:domain nrl:Graph ;
128          rdfs:label "subGraphOf" ;
129          rdfs:range nrl:Graph ;
130          nrl:inverseProperty nrl:superGraphOf .
131
132    nrl:Configuration
133          a       rdfs:Class ;
134          rdfs:comment "Represents a named graph containing configuration data" ;
135          rdfs:label "Configuration" ;
136          rdfs:subClassOf nrl:Data .
137
138    nrl:ViewSpecification
139          a       rdfs:Class ;
140          rdfs:comment "Represents a specification of the means to achieve a transformation of an input graph into the required graph view" ;
141          rdfs:label "ViewSpecification" ;
142          rdfs:subClassOf rdfs:Resource .
143
144    nrl:hasSemantics
145          a       rdf:Property ;
146          rdfs:comment "Points to a representation of the declarative semantics for a graph role" ;
147          rdfs:domain nrl:Data ;
148          rdfs:label "hasSemantics" ;
149          rdfs:range nrl:Semantics .
150
151    nrl:ExternalViewSpecification
152          a       rdfs:Class ;
153          rdfs:comment "Represents an external view specification, this usually being a program which automatically generates the required view for an input graph" ;
154          rdfs:label "ExternalViewSpecification" ;
155          rdfs:subClassOf nrl:ViewSpecification .
156
157    nrl:DefaultGraph
158          a       nrl:Graph ;
159          rdfs:comment "Represents the default graph, the graph which contains any triple that does not belong to any other named graph" ;
160          rdfs:label "DefaultGraph" .
161
162    nrl:updatable
163          a       rdf:Property ;
164          rdfs:comment "A core graph metadata property, this defines whether a graph can be freely updated '1' or otherwise '0'" ;
165          rdfs:domain nrl:Graph ;
166          rdfs:label "updatable" ;
167          rdfs:range xsd:boolean ;
168          nrl:maxCardinality "1"^^xsd:nonNegativeInteger .
169
170    nrl:Semantics
171          a       rdfs:Class ;
172          rdfs:comment "Represents some declarative semantics" ;
173          rdfs:label "Semantics" ;
174          rdfs:subClassOf rdfs:Resource .
175
176    nrl:equivalentGraph
177          a       rdf:Property , nrl:SymmetricProperty ;
178          rdfs:comment "Links two equivalent named graphs. A symmetric property" ;
179          rdfs:domain nrl:Graph ;
180          rdfs:label "equivalentGraph" ;
181          rdfs:range nrl:Graph .
182
183    nrl:ReflexiveProperty
184          a       rdfs:Class ;
185          rdfs:comment "A marker class to identify reflexive properties" ;
186          rdfs:label "ReflexiveProperty" ;
187          rdfs:subClassOf rdfs:Resource .
188
189    nrl:AsymmetricProperty
190          a       rdfs:Class ;
191          rdfs:comment "A marker class to identify asymmetric properties" ;
192          rdfs:label "AsymmetricProperty" ;
193          rdfs:subClassOf rdfs:Resource .
194
195    nrl:maxCardinality
196          a       rdf:Property ;
197          rdfs:comment "Specifies a maximum value cardinality for a specific property" ;
198          rdfs:domain rdf:Property ;
199          rdfs:label "maxCardinality" ;
200          rdfs:range rdfs:Literal .
201
202    nrl:viewOn
203          a       rdf:Property ;
204          rdfs:comment "Points to a graph view over the subject named graph" ;
205          rdfs:domain nrl:GraphView ;
206          rdfs:label "viewOn" ;
207          rdfs:range nrl:Graph .
208
209    nrl:SymmetricProperty
210          a       rdfs:Class ;
211          rdfs:comment "A marker class to identify symmetric properties" ;
212          rdfs:label "SymmetricProperty" ;
213          rdfs:subClassOf rdfs:Resource .
214
215    nrl:superGraphOf
216          a       rdf:Property ;
217          rdfs:comment "Specifies a subsumption relationship between two graphs, meaning that the object graph is included in the subject graph" ;
218          rdfs:domain nrl:Graph ;
219          rdfs:label "superGraphOf" ;
220          rdfs:range nrl:Graph ;
221          nrl:inverseProperty nrl:subGraphOf .
222
223    nrl:Ontology
224          a       rdfs:Class ;
225          rdfs:comment "Represents a named graph having the role of an Ontology" ;
226          rdfs:label "Ontology" ;
227          rdfs:subClassOf nrl:Schema .
228
229    nrl:realizes
230          a       rdf:Property ;
231          rdfs:comment "Points to a representation of the declarative semantics that the view specification realizes" ;
232          rdfs:domain nrl:ViewSpecification ;
233          rdfs:label "realizes" ;
234          rdfs:range nrl:Semantics .
235
236    nrl:minCardinality
237          a       rdf:Property ;
238          rdfs:comment "Specifies a minimum value cardinality for a specific property" ;
239          rdfs:domain rdf:Property ;
240          rdfs:label "minCardinality" ;
241          rdfs:range rdfs:Literal .
242
243    nrl:rule
244          a       rdf:Property ;
245          rdfs:comment "Specifies rules for a view specification that is driven by rules" ;
246          rdfs:domain nrl:RuleViewSpecification ;
247          rdfs:label "rule" ;
248          rdfs:range rdfs:Literal .
249
250    nrl:InstanceBase
251          a       rdfs:Class ;
252          rdfs:comment "Represents a named graph containing instance data" ;
253          rdfs:label "InstanceBase" ;
254          rdfs:subClassOf nrl:Data .
255
256    nrl:DiscardableInstanceBase
257          a       rdfs:Class ;
258          rdfs:comment "A named graph containing instance data that can be recreated by analyzing the original resources. Intended to be used by metadata extractors." ;
259          rdfs:label "DiscardableInstanceBase" ;
260          rdfs:subClassOf nrl:InstanceBase .
261
262    nrl:RuleViewSpecification
263          a       rdfs:Class ;
264          rdfs:comment "Represents a view specification that is composed of a set of rules which generate the required view from the input graph upon firing" ;
265          rdfs:label "RuleViewSpecification" ;
266          rdfs:subClassOf nrl:ViewSpecification .
267
268    nrl:semanticsDefinedBy
269          a       rdf:Property ;
270          rdfs:comment "Points to the human readable specifications for a representation of some declarative semantics" ;
271          rdfs:domain nrl:Semantics ;
272          rdfs:label "semanticsDefinedBy" ;
273          rdfs:range rdfs:Resource .
274
275    nrl:GraphMetadata
276          a       rdfs:Class ;
277          rdfs:comment "Represents a special named graph that contains metadata for another graph" ;
278          rdfs:label "GraphMetadata" ;
279          rdfs:subClassOf nrl:Data .
280
281    nrl:graphMetadataFor
282          a       rdf:Property ;
283          rdfs:comment "Links a metadata graph to the graph that is being described. A unique value is compulsory" ;
284          rdfs:domain nrl:GraphMetadata ;
285          rdfs:label "graphMetadataFor" ;
286          rdfs:range nrl:Graph ;
287          nrl:minCardinality "1"^^xsd:nonNegativeInteger .
288
289    nrl:GraphView
290          a       rdfs:Class ;
291          rdfs:comment "Identifies a graph which is itself a view of another named graph" ;
292          rdfs:label "GraphView" ;
293          rdfs:subClassOf nrl:Graph .
294
295    nrl:Data
296          a       rdfs:Class ;
297          rdfs:comment "An abstract class representing all named graph roles" ;
298          rdfs:label "Data" ;
299          rdfs:subClassOf nrl:Graph .
300
301    nrl:inverseProperty
302          a       rdf:Property ;
303          rdfs:comment "Links two properties and specifies their inverse behaviour" ;
304          rdfs:domain rdf:Property ;
305          rdfs:label "inverseProperty" ;
306          rdfs:range rdf:Property .
307
308    nrl:Schema
309          a       rdfs:Class ;
310          rdfs:comment "Represents a named graph containing schematic data" ;
311          rdfs:label "Schema" ;
312          rdfs:subClassOf nrl:Data .
313
314    nrl:DefiningProperty
315          a rdfs:Class ;
316          rdfs:subClassOf rdf:Property ;
317          rdfs:label "defining property" ;
318          rdfs:comment """A defining property's value is part of what defines a resource, changing it means
319                          means chaning the identity of the resource. The set of values of all defining
320                          properties of a resource make up its identify.
321                          Whenever comparing resources or sharing them the value of this property should
322                          be taken into account. By default all properties with a literal range are to be
323                          treated as defining properties unless they are marked as nrl:NonDefiningProperty.""" .
324
325    nrl:NonDefiningProperty
326          a rdfs:Class ;
327          rdfs:subClassOf rdf:Property ;
328          rdfs:label "non-defining property" ;
329          rdfs:comment """A non-defining property's value is not part of what defines a resource, it rather
330                          is part of the resource's state or expresses an opinion about the resource. Whenever
331                          comparing resources or sharing them the value of this property should not be taken into
332                          account. By default all properties with a resource range are to be treated as
333                          non-defining properties unless they are marked as nrl:DefiningProperty.""" .
334}
335
336<http://www.semanticdesktop.org/ontologies/2007/08/15/nrl/metadata>
337{
338    <http://www.semanticdesktop.org/ontologies/2007/08/15/nrl#>
339          a       nrl:DocumentGraph , nrl:KnowledgeBase ;
340          nao:hasDefaultNamespace "http://www.semanticdesktop.org/ontologies/2007/08/15/nrl#" ;
341          nao:hasDefaultNamespaceAbbreviation "nrl" ;
342          nao:lastModified "2011-12-13T12:02:32.866Z" ;
343          nao:serializationLanguage "TriG" ;
344          nao:status "Testing" ;
345          nrl:updatable "0" ;
346          nao:version "${SHAREDDESKTOPONTOLOGIES_VERSION}" ;
347          nao:prefLabel "Nepomuk Representation Language" ;
348          nao:description "NRL was designed for knowledge representation in Nepomuk Social Semantic Desktop applications. While being built on top of the Resource Description Framework (RDF) and the associated RDF Schema (RDFS), it addresses several limitations of current Semantic Web languages, especially with respect to modularization and costumization. These questions seem to be important not only in Semantic Desktop scenarios but also on the general Semantic Web. NRL tackles these questions by including support for two main additional concepts: Named Graphs and Graph Views. Named graphs help coping with the heterogeneity of knowledge models and ontologies, esp. multiple knowledge modules with potentially different interpretations. The view concept allows for the tailoring of ontologies towards different needs in various exploiting applications. This view concept provides also the basic mechanism to impose different semantics on thesame syntactical structure." .
349
350    <http://www.semanticdesktop.org/ontologies/2007/08/15/nrl/metadata>
351          a       nrl:GraphMetadata , nrl:DocumentGraph ;
352          nao:serializationLanguage "TriG" ;
353          nrl:coreGraphMetadataFor <http://www.semanticdesktop.org/ontologies/2007/08/15/nrl#> .
354
355}
356
357