Skip to main content
Back to Standards
RDF Schema logo

RDF Schema

RDFS

A W3C Recommendation that provides a basic vocabulary for structuring RDF resources into classes and properties with domain and range constraints. RDFS extends the core RDF data model with constructs such as rdfs:Class, rdfs:subClassOf, rdfs:domain, and rdfs:range, enabling simple ontological modeling and type inference. It serves as the foundation layer between raw RDF triples and more expressive ontology languages like OWL.

Overview

RDF Schema (RDFS) is a W3C Recommendation that provides the basic vocabulary for describing the structure of RDF data. It sits between the raw triple model of RDF and the full expressiveness of OWL, offering a lightweight mechanism for defining classes, properties, and their relationships in a way that enables simple type inference.

Background

The first public draft of RDF Schema was published by the W3C in April 1998, shortly after the initial RDF specification. It was developed to address the need for a basic structuring mechanism within RDF — while RDF itself provides a graph data model, it lacks constructs for declaring types, hierarchies, or constraints on how properties relate to classes. RDFS filled this gap by introducing a small, carefully chosen set of modeling primitives.

The specification went through several revisions, with the first W3C Recommendation published in 2004 as part of the RDF 2004 suite. The current version, RDF Schema 1.1, was published as a W3C Recommendation on February 25, 2014, alongside the other RDF 1.1 specifications.

Purpose & Scope

RDFS provides constructs for organizing RDF resources into typed hierarchies. Its core purpose is to allow vocabulary authors to declare what classes exist in their domain, what properties describe those classes, and how classes and properties relate to one another through subclass and subproperty relationships. RDFS also defines domain and range constraints that enable basic type inference: if a property has rdfs:domain foaf:Person, then any resource used as the subject of that property can be inferred to be a foaf:Person.

The scope is deliberately limited. RDFS does not support cardinality constraints, property characteristics (transitivity, symmetry), or disjointness — those features require OWL. This simplicity is a strength: RDFS is easy to implement, widely supported, and sufficient for many practical vocabularies.

Key Constructs

Construct Definition
rdfs:Class Declares a resource as a class
rdfs:subClassOf Establishes a class hierarchy
rdfs:subPropertyOf Establishes a property hierarchy
rdfs:domain Declares the class of a property's subject
rdfs:range Declares the class or datatype of a property's object
rdfs:label Human-readable name for a resource
rdfs:comment Human-readable description
rdfs:seeAlso Link to related information
rdfs:isDefinedBy Link to the defining vocabulary
rdfs:Literal The class of literal values
rdfs:Datatype The class of datatypes

RDFS Entailment

RDFS defines a set of entailment rules that allow reasoners to infer additional triples from a graph. For example, given that bar:livesInZoo rdfs:domain bar:Animal and a triple stating foo:SomeElephant bar:livesInZoo foo:SomeZoo, a reasoner can infer that foo:SomeElephant rdf:type bar:Animal. These inference capabilities are modest compared to OWL but are computationally inexpensive and broadly useful.

Governance & Maintenance

RDFS is maintained by the World Wide Web Consortium as part of the RDF specification suite. The RDF Schema 1.1 document was produced by the W3C RDF Working Group. Future revisions are expected as part of the ongoing RDF 1.2 effort.

Notable Implementations

RDFS is the schema language used by many of the most widely adopted RDF vocabularies. FOAF (Friend of a Friend) is defined in RDFS using RDFa syntax. Dublin Core publishes its terms with RDFS declarations. Schema.org was originally defined in RDFS (via RDFa) until 2020. SKOS uses RDFS alongside OWL. The Library of Congress MADS/RDF schema is defined in RDFS for authority data. UniProt uses an RDFS-based schema for protein data. Virtually every triplestore and RDF toolkit — Apache Jena, RDF4J, rdflib, Redland — supports RDFS entailment.

Related Standards

  • RDF — the underlying data model that RDFS extends
  • OWL — a more expressive ontology language that builds on RDFS
  • SKOS — knowledge organization vocabulary that uses RDFS constructs

Further Reading