-
Notifications
You must be signed in to change notification settings - Fork 103
Core vocabularies for Linked Data
This is an Archived Page: The following content has been ported from solidproject.org
The following vocabularies are essential, because they describe... vocabularies. Let's get meta for a moment.
RDF and RDFS are the foundation on which all other vocabularies are built. They enable the description of a graph of rdfs:Resources, each identified by an IRI.
RDF graphs are based on the notion of rdf:statement: a statement can be compared to a very simple sentence <subject, verb, complement>, e.g. Charlie is a Person
. In the RDF terminology, we say that an rdf:statement has an rdf:subject (the resource the statement is about), an rdf:property (the verb of the sentence, defining a characteristic of the subject) and an rdf:object (the value for the property for the subject). Therefore, the sentence Charlie is a Person
could be expressed in RDF as [ex](http://example.org/ns#):Charlie rdf:type [ex](http://example.org/ns#):Person
, where <http://example.org/ns#Charlie>
is the subject, rdf:type
the property, and <http://example.org/ns#Person>
the object. Subject and predicate are necessarily individuals identified with an IRI, while the object is either an individual with an IRI, or a literal with a value (e.g. string or int).
- Typing a Resource:
<resource IRI> rdf:type <type IRI>
, where the type is an rdfs:class
RDFS enables to build hierarchies of concepts by introducing the notion of rdfs:class, and the rdfs:subClassOf property. Similarly, rdf:properties can be organized hierarchically by using the rdfs:subPropertyOf property. RDFS also enables describing the types that can be attached to rdfs:resources when they are associated with an rdf:property by specifying the property's rdfs:domain (the type of its subject) and rdfs:range (the type of the object). For instance, let's imagine ex:hasAuthor
, a property expressing the fact that someone is the author of a book. If we state that ex:hasAuthor rdfs:domain ex:Book
and that ex:hasAuthor rdfs:range ex:Person
, effectively what we say is that anytime we find a statement such as ex:aBook ex:hasAuthor ex:someone
, we know that ex:aBook
is of type ex:Book
, and that ex:someone
is a ex:Person
- Subclassing:
<subclass IRI> rdfs:subClassOf <class IRI>
- Specifying a property's domain:
<property IRI> rdfs:domain <type IRI>
- Specifying a property's range:
<property IRI> rdfs:range <type IRI>
- Adding a human-readable name to a concept identified by an IRI:
<IRI> rdfs:label "Some name"
- Adding a longer comment describing a concept:
<IRI> rdfs:comment "Some comment"
- Redirecting to another information source:
<IRI> rdfs:seeAlso <IRI>
Vocabularies (Archived Pages)
-
Quickstart
-
Discover
-
Create
- Create your own vocabulary (Archived Page)
- Vocabulary building best practices (Archived Page)
- Improve your vocabulary(Archived Page)
- NeOn, a vocabulary creation methodology (Archived Page)
- Describe data for Solid (Archived Page)
- Publish your vocabulary (Archived Page)
- Publish your vocabulary as RDF (Archived Page)
- Publish your vocabulary as code artifacts (Archived Page)
Reverse Proxy Tutorials (Archived Pages)
Miscellaneous (Archived Pages)