NEW
RDFS property that declares the class or datatype of permissible objects for a given predicate.
DESCRIPTION
rdfs:range constrains a property’s objects to be instances of a specified class or datatype and supports inference in semantic graphs. When a triple uses a property with a declared range, reasoners infer the object’s type. Ranges may reference OWL classes or XML Schema datatypes. Multiple ranges imply the object must belong to the intersection of all declared ranges. Use SHACL for data validation and detailed constraint reporting. rdfs:range is essential to communicate schema intent in RDF/OWL ontologies.
ALTERNATIVE DEFINITIONS
W3C RDF Schema 1.1
rdfs:range is used to state that the objects of triples in which a given property is used are instances of a specified class.
Clarifies that objects are typed via inference to the range class.
Apache Jena
In RDFS, the range of a property constrains the set of resources that can occur as the object of triples with that property, enabling type inference for objects.
Practical emphasis on reasoning effect for object typing.
Eclipse RDF4J
The range of a property states that objects of statements using that property are instances of the indicated class or datatype.
Highlights support for both classes and datatypes in range.
RELATED TERMS
RDF Schema OWL rdf:type SHACL OWL ObjectProperty OWL DataProperty XSD datatypes Simple Knowledge Organization System
COMPETING TERMS
Domain Constraint SHACL datatype
KNOWLEDGE AREAS
Semantic & Knowledge Modeling Data Modeling Data Integration & Interoperability Data Architecture
TARGET AUDIENCE
Data Modeler Data Architect AI Engineer Data Scientist Data Steward Software Developer Information Analyst
EXTERNAL SOURCES
- Wikipedia - RDF Schema
- W3C - Canonical RDF Schema spec
- W3C - OWL 2 primer covers ranges
- W3C - XML Schema datatypes reference
- Apache Jena - RDFS range in tooling
TOP QUESTIONS
What does rdfs:range imply for property values?
It implies that objects of the property are instances of the declared class or datatype, allowing reasoners to type objects automatically.
Category: Concept
How does rdfs:range relate to OWL datatypes?
rdfs:range can reference XML Schema datatypes or OWL classes, providing semantic typing for literals and resources used as property objects.
Category: Interaction
What happens with multiple rdfs:range statements?
Multiple ranges entail that an object must satisfy all declared ranges, effectively modeling an intersection of classes or datatypes.
Category: Usage
Is rdfs:range a validation tool?
No. It’s a semantic inference mechanism. Use SHACL for validating and reporting datatype or class violations in actual data.
Category: Misunderstanding
When should rdfs:range be omitted?
Omit it when property objects are intentionally heterogeneous across classes or datatypes, and strict typing would constrain flexibility.
Category: Guidance
What is a practical example of rdfs:range?
Declaring ex:hasBirthDate with rdfs:range xsd:date ensures objects of that property are typed as dates for reasoning and tooling.
Category: Example
How does rdfs:range support interoperability?
Explicit ranges communicate expected value types, easing integration, query formulation, and consistent typing across systems.
Category: Benefit
Does rdfs:range affect literals differently?
Yes. For literals, ranges typically point to XML Schema datatypes, ensuring consistent value typing and reasoning.
Category: Detail
Why is rdfs:range still relevant?
It remains core to semantic modeling, enabling portable, tool-supported inferences and ensuring clarity of property value expectations.
Category: Relevancy