Projects/Nepomuk/OntologyBasics: Difference between revisions
Added basic structure |
Added some information |
||
Line 1: | Line 1: | ||
Nepomuk unlike other conventional projects, does not use a relational database to store its data. Instead it uses a RDF store. RDF stands for Resource Description Framework. It's the big framework that was written for describing abstract data on the web, and is the basis of the semantic web. While RDF, has many concepts, Nepomuk mainly utilizes a couple of them. | |||
= Resources = | |||
=Statements= | =Statements= | ||
The simplest concept is that of a sentence. All the data in Nepomuk is stored in the form | |||
<syntaxhighlight lang="text"><subject> <predicate> <object> <graph></syntaxhighlight> | |||
These 4 values combined are called a statement. | |||
If we look at this in terms of an object oriented programming language, the `<subject>` is an OOP Object, and the (predicate, object) pair can be looked as (key, value) pairs which define properties on that OOP Object. | |||
Here are some examples of common statements - | |||
<syntaxhighlight lang="text"> | |||
<nepomuk:/res/some-uuid> rdf:type nao:Tag | |||
<nepomuk:/res/some-uuid> nao:lastModified 2012-03-16T18:41:09.006Z | |||
<nepomuk:/res/some-uuid> nao:prefLabel "Sample" | |||
<nepomuk:/res/some-other-uuid> rdf:type nfo:FileDataObject | |||
<nepomuk:/res/some-other-uuid> nao:hasTag <nepomuk:/res/some-uuid> | |||
</syntaxhighlight> | |||
== Subject == | |||
The subject, like in conventional english, is the main part of the sentence. It highlights what we are talking about. In the above example there are different subjects <code>nepomuk:/res/some-uuid</code> and <code>nepomuk:/res/some-other-uuid</code>. In each of these statements the subjects have certain properties and objects bound to them. | |||
== Predicate == | |||
Predicates are often also called properties, and they used to connect the <code><subject></code> with the <code><object></code>. | |||
Each predicate is generally assigned a domain and range which governs the kind of <subject>s and <object>s it can be connected to. | |||
Some examples of commonly used predicates are <code>rdf:type</code> <code>nao:lastModified</code> and <code>nao:hasTag</code> | |||
== Object == | |||
== Graph == | |||
The graph contains some information about the triple - (<subject> <predicate> <object>) such as when it was created, and last modified. Unless you're working on the absolute core parts of Nepomuk, you won't ever have to interact with graphs, and they'll just work seamlessly in the background. | |||
=Resources= | =Resources= |
Revision as of 12:54, 8 August 2012
Nepomuk unlike other conventional projects, does not use a relational database to store its data. Instead it uses a RDF store. RDF stands for Resource Description Framework. It's the big framework that was written for describing abstract data on the web, and is the basis of the semantic web. While RDF, has many concepts, Nepomuk mainly utilizes a couple of them.
Resources
Statements
The simplest concept is that of a sentence. All the data in Nepomuk is stored in the form
<subject> <predicate> <object> <graph>
These 4 values combined are called a statement.
If we look at this in terms of an object oriented programming language, the `<subject>` is an OOP Object, and the (predicate, object) pair can be looked as (key, value) pairs which define properties on that OOP Object.
Here are some examples of common statements -
<nepomuk:/res/some-uuid> rdf:type nao:Tag
<nepomuk:/res/some-uuid> nao:lastModified 2012-03-16T18:41:09.006Z
<nepomuk:/res/some-uuid> nao:prefLabel "Sample"
<nepomuk:/res/some-other-uuid> rdf:type nfo:FileDataObject
<nepomuk:/res/some-other-uuid> nao:hasTag <nepomuk:/res/some-uuid>
Subject
The subject, like in conventional english, is the main part of the sentence. It highlights what we are talking about. In the above example there are different subjects nepomuk:/res/some-uuid
and nepomuk:/res/some-other-uuid
. In each of these statements the subjects have certain properties and objects bound to them.
Predicate
Predicates are often also called properties, and they used to connect the <subject>
with the <object>
.
Each predicate is generally assigned a domain and range which governs the kind of <subject>s and <object>s it can be connected to.
Some examples of commonly used predicates are rdf:type
nao:lastModified
and nao:hasTag
Object
Graph
The graph contains some information about the triple - (<subject> <predicate> <object>) such as when it was created, and last modified. Unless you're working on the absolute core parts of Nepomuk, you won't ever have to interact with graphs, and they'll just work seamlessly in the background.
Resources
What they are - all about