RDF Schema (Resource Description Framework Schema, variously abbreviated as RDFS, , RDF-S, or RDF/S) is a set of classes with certain properties using the
RDF extensible
knowledge representation
Knowledge representation and reasoning (KRR, KR&R, KR²) is the field of artificial intelligence (AI) dedicated to representing information about the world in a form that a computer system can use to solve complex tasks such as diagnosing a medic ...
data model, providing basic elements for the description of
ontologies
In computer science and information science, an ontology encompasses a representation, formal naming, and definition of the categories, properties, and relations between the concepts, data, and entities that substantiate one, many, or all domains ...
. It uses various forms of RDF vocabularies, intended to structure RDF
resource
Resource refers to all the materials available in our environment which are technologically accessible, economically feasible and culturally sustainable and help us to satisfy our needs and wants. Resources can broadly be classified upon their av ...
s. RDF and RDFS can be saved in a
triplestore
A triplestore or RDF store is a purpose-built database for the storage and retrieval of triples through semantic queries. A triple is a data entity composed of subject–predicate–object, like "Bob is 35" or "Bob knows Fred".
Much like a relati ...
, then one can extract some knowledge from them using a query language, like
SPARQL
SPARQL (pronounced " sparkle" , a recursive acronym for SPARQL Protocol and RDF Query Language) is an RDF query language—that is, a semantic query language for databases—able to retrieve and manipulate data stored in Resource Description ...
.
The first version
was published by the World-Wide Web Consortium (W3C) in April 1998, and the final
W3C recommendation
The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web. Founded in 1994 and led by Tim Berners-Lee, the consortium is made up of member organizations that maintain full-time staff working ...
was released in February 2014.
Many RDFS components are included in the more expressive
Web Ontology Language
The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies. Ontologies are a formal way to describe taxonomies and classification networks, essentially defining the structure of knowledge for vario ...
(OWL).
Terminology
RDFS constructs are the RDFS classes, associated properties and utility properties built on the
vocabulary of RDF.
Classes
;
: Represents the class of everything. All things described by RDF are resources.
;
: An ''rdfs:Class'' declares a resource as a
class for other resources.
A typical example of an rdfs:Class is in the Friend of a Friend (
FOAF
FOAF (an acronym of friend of a friend) is a machine-readable ontology describing persons, their activities and their relations to other people and objects. Anyone can use FOAF to describe themselves. FOAF allows groups of people to describe so ...
) vocabulary.
An instance of is a resource that is linked to the class using the
property
Property is a system of rights that gives people legal control of valuable things, and also refers to the valuable things themselves. Depending on the nature of the property, an owner of property may have the right to consume, alter, share, r ...
, such as in the following formal expression of the
natural-language
In neuropsychology, linguistics, and philosophy of language, a natural language or ordinary language is any language that has evolved naturally in humans through use and repetition without conscious planning or premeditation. Natural langu ...
sentence: 'John is a Person'.
ex:John rdf:type foaf:Person
The definition of is recursive: is the class of classes, and so it is an instance of itself.
rdfs:Class rdf:type rdfs:Class
The other classes described by the RDF and RDFS specifications are:
;
:
literal values such as strings and integers. Property values such as textual strings are examples of RDF literals. Literals may be plain or typed.
;
: the class of datatypes. is both an instance of and a subclass of . Each instance of is a subclass of .
;
: the class of XML literal values. is an instance of (and thus a subclass of ).
;
: the class of properties.
Properties
Properties are instances of the class and describe a relation between subject resources and object resources. When used as such a property is a
predicate
Predicate or predication may refer to:
* Predicate (grammar), in linguistics
* Predication (philosophy)
* several closely related uses in mathematics and formal logic:
**Predicate (mathematical logic)
**Propositional function
**Finitary relation, ...
(see also
RDF: reification).
;
: the ''rdfs:domain'' of an declares the class of the ''subject'' in a
triple
Triple is used in several contexts to mean "threefold" or a "treble":
Sports
* Triple (baseball), a three-base hit
* A basketball three-point field goal
* A figure skating jump with three rotations
* In bowling terms, three strikes in a row
* In ...
whose predicate is that property.
;
: the ''rdfs:range'' of an declares the class or datatype of the ''object'' in a triple whose predicate is that property.
For example, the following declarations are used to express that the property relates a subject, which is of type , to an object, which is of type :
ex:employer rdfs:domain foaf:Person
ex:employer rdfs:range foaf:Organization
Given the previous two declarations, from the triple:
ex:John ex:employer ex:CompanyX
can be inferred (resp. follows) that is a , and is a .
;
: a property used to state that a resource is an instance of a class. A commonly accepted
QName for this property is "a".
;
: allows declaration of hierarchies of classes.
For example, the following declares that 'Every Person is an Agent':
foaf:Person rdfs:subClassOf foaf:Agent
Hierarchies of classes support inheritance of a property domain and range (see definitions in the next section) from a class to its subclasses.
;
: an instance of that is used to state that all resources related by one property are also related by another.
;
: an instance of that may be used to provide a human-readable version of a resource's name.
;
: an instance of that may be used to provide a human-readable description of a resource.
Utility properties
;
: an instance of that is used to indicate a resource that might provide additional information about the subject resource.
;
: an instance of that is used to indicate a resource defining the subject resource. This property may be used to indicate an RDF vocabulary in which a resource is described.
RDFS entailment
An
entailment
Logical consequence (also entailment) is a fundamental concept in logic, which describes the relationship between statements that hold true when one statement logically ''follows from'' one or more statements. A valid logical argument is one ...
regime defines, by using RDFS (or OWL, etc.), not only which entailment relation is used, but also which queries and graphs are well-formed for the regime. The RDFS entailment is a standard entailment relation in the semantic web.
For example, the following declares that 'Dog1 is an animal', 'Cat1 is a cat', 'zoos host animals' and 'Zoo1 hosts the Cat2':
ex:dog1 rdf:type ex:animal
ex:cat1 rdf:type ex:cat
zoo:host rdfs:range ex:animal
ex:zoo1 zoo:host ex:cat2
The graph is not well-formed because the system can not guess that a cat is an animal. To make a well-formed graph, the statement 'Cats are animals' can be added:
ex:cat rdfs:subClassOf ex:animal
Here is a correct example:
If the
triplestore
A triplestore or RDF store is a purpose-built database for the storage and retrieval of triples through semantic queries. A triple is a data entity composed of subject–predicate–object, like "Bob is 35" or "Bob knows Fred".
Much like a relati ...
(or RDF database) implements the regime
entailment
Logical consequence (also entailment) is a fundamental concept in logic, which describes the relationship between statements that hold true when one statement logically ''follows from'' one or more statements. A valid logical argument is one ...
of RDF and RDFS, the
SPARQL
SPARQL (pronounced " sparkle" , a recursive acronym for SPARQL Protocol and RDF Query Language) is an RDF query language—that is, a semantic query language for databases—able to retrieve and manipulate data stored in Resource Description ...
query as follows (the keyword "a" is equivalent to rdf:type in SPARQL):
PREFIX ex:
SELECT ?animal
WHERE
The following gives the result with ''cat1'' in it, because the Cat's type inherits of Animal's type:
Examples of RDF vocabularies
RDF vocabularies represented in RDFS include:
*
FOAF
FOAF (an acronym of friend of a friend) is a machine-readable ontology describing persons, their activities and their relations to other people and objects. Anyone can use FOAF to describe themselves. FOAF allows groups of people to describe so ...
: the source of the FOAF Vocabulary Specification is RDFS written in the
RDFa syntax.
*
Dublin Core
220px, Logo image of DCMI, which formulates Dublin Core
The Dublin Core, also known as the Dublin Core Metadata Element Set (DCMES), is a set of fifteen "core" elements (properties) for describing resources. This fifteen-element Dublin Core has ...
: RDFS source is available in several syntaxes
*
Schema.org: the source of their schema was originally RDFS written in the
RDFa syntax until July 2020.
*
Simple Knowledge Organization System (SKOS) developed the RDF schema titled as SKOS XL Vocabulary, which is an OWL ontology for the SKOS vocabulary that uses the OWL RDF/XML syntax, and hence makes use of a number of classes and properties from RDFS.
* The
Library of Congress
The Library of Congress (LOC) is the research library that officially serves the United States Congress and is the ''de facto'' national library of the United States. It is the oldest federal cultural institution in the country. The librar ...
defines an RDF schema titled Metadata Authority Description Schema in RDF, or MADS/RDF for short. From the abstract, it is intended to use for within their library and "information science (LIS) community". It allows for annotating special relational data, such as if an individual within a family is well-known via .
* The
UniProt
UniProt is a freely accessible database of protein sequence and functional information, many entries being derived from genome sequencing projects. It contains a large amount of information about the biological function of proteins derived fro ...
database has an RDF schema for describing
biochemical
Biochemistry or biological chemistry is the study of chemical processes within and relating to living organisms. A sub-discipline of both chemistry and biology, biochemistry may be divided into three fields: structural biology, enzymology ...
data, and is specialized towards describing
proteins
Proteins are large biomolecules and macromolecules that comprise one or more long chains of amino acid residues. Proteins perform a vast array of functions within organisms, including catalysing metabolic reactions, DNA replication, respondi ...
.
See also
*
SPARQL
SPARQL (pronounced " sparkle" , a recursive acronym for SPARQL Protocol and RDF Query Language) is an RDF query language—that is, a semantic query language for databases—able to retrieve and manipulate data stored in Resource Description ...
Query Language for RDF
*
Platform for Internet Content Selection The Platform for Internet Content Selection (PICS) was a specification created by W3C that used metadata to label webpages to help parents and teachers control what children and students could access on the Internet. The W3C Protocol for Web Des ...
(PICS)
*
Resource Description Framework The Resource Description Framework (RDF) is a World Wide Web Consortium (W3C) standard originally designed as a data model for metadata. It has come to be used as a general method for description and exchange of graph data. RDF provides a variety of ...
(RDF)
*
Web Ontology Language
The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies. Ontologies are a formal way to describe taxonomies and classification networks, essentially defining the structure of knowledge for vario ...
(OWL)
*
Semantic technology
*
SHACL
Shapes Constraint Language (SHACL) is a World Wide Web Consortium (W3C) standard language for describing Resource Description Framework (RDF) graphs. SHACL has been designed to enhance the semantic and technical interoperability layers of ontolog ...
Shapes and Constraints Language for RDF
References
External links
W3C RDFS SpecificationW3C RDF 1.1 PrimerW3C SPARQL 1.1 Entailment Regimes SpecificationW3C RDFS EntailmentMap OWL-RDF/S ontologies and XML Schemas. Transform XML Schema to OWL.
{{DEFAULTSORT:Rdf Schema
Resource Description Framework
Knowledge representation languages
Semantic Web
World Wide Web Consortium standards