OWL 2 RL (Rule Language) is one of four OWL 2 profiles designed for production use with rule-based reasoning engines. It's defined by the W3C in the OWL 2 Profiles specification as a set of rules (Tables 4–9) that can be implemented via forward-chaining materialization.
Unlike OWL 2 DL (which requires expensive tableau algorithms), OWL 2 RL rules operate in polynomial time and can handle millions of triples.
The W3C OWL 2 RL specification groups its rules into tables; the same grouping is used here:
Rules for owl:sameAs — symmetry, transitivity, and replacement in triples.
owl:sameAs
eq-sym
a sameAs b
b sameAs a
eq-trans
b sameAs c
a sameAs c
eq-rep-s/p/o
Rules for class membership, intersections, unions, and restrictions.
cls-int1
x type A
x type B
x type (A ∩ B)
cls-int2
cls-uni
A ∪ B
x type (A ∪ B)
cls-svf1
someValuesFrom
subClassOf
cls-svf2
owl:Thing
cls-avf
reportsTo only Employee
cls-hv1/2
cls-com
Rules for subClassOf, equivalentClass, and disjointWith.
cax-sco
cax-eqc1/2
cls-oo
cax-dw
cax-adc
Rules for inverseOf, property chains, and property characteristics.
prp-inv1/2
manages inverseOf reportsTo
prp-spo2
boughtProduct
prp-symp
p(a,b)
p(b,a)
prp-trp
p(b,c)
p(a,c)
prp-fp
p(x,y1)
p(x,y2)
y1 sameAs y2
prp-ifp
p(x1,y)
p(x2,y)
x1 sameAs x2
Datatype-specific rules (XSD facets, data ranges). RDF Studio's engine does not implement these rules; for datatype checks on your data, use SHACL (sh:datatype, sh:pattern, value ranges).
sh:datatype
sh:pattern
The "meta-level" rules that operate on the ontology structure itself.
scm-sco
scm-eqc1/2
scm-spo
scm-eqp1/2
scm-dom1/2
scm-rng1/2
scm-int/uni
scm-svf/avf
Some OWL 2 RL rules derive no new fact — they detect a contradiction. At the end of a full reasoning run RDF Studio runs 12 consistency checks, counts every violation and lists the first 100:
disjointWith
AllDisjointClasses
prp-pdw
prp-adp
propertyDisjointWith
AllDisjointProperties
prp-asyp
owl:AsymmetricProperty
prp-irp
p(a,a)
owl:IrreflexiveProperty
prp-npa
NegativePropertyAssertion
eq-diff1
sameAs
differentFrom
complementOf
cls-nothing2
owl:Nothing
cls-maxc1
cls-maxqc1
These constructs are outside the profile, so an OWL 2 RL reasoner does not reason with them:
owl:oneOf
hasKey, by contrast, is covered — the prp-key rule — and so are AsymmetricProperty and IrreflexiveProperty, as consistency checks.
hasKey
prp-key
AsymmetricProperty
IrreflexiveProperty
RDF Studio's OWL 2 RL reasoner is a native Rust engine built directly into its Oxigraph-based store. It:
DELETE
INSERT
owl:hasSelf
The full test suite — run on every push, before every tester round and at every release — re-checks the engine against the W3C OWL 2 RL test suite, the W3C SHACL Core test suite, the European Commission's DCAT-AP tests and the Semantic Publishing Benchmark's conformance set. Closures over FIBO, the Gene Ontology and LUBM-1000 are not part of that run: they are re-checked in a deliberate run when an engine change calls for it.
Next on the roadmap — LUBM-8000, the same benchmark at 8,000 universities: over a billion triples.
Reasoning at scale runs in the built-in engine: the full OWL 2 RL closure of the 133.6-million-triple LUBM benchmark takes about thirty minutes on a 10-core Apple M1 Max laptop with 64 GB of memory and derives 76.4 million facts, written into the store once. Connecting to another store — GraphDB or any SPARQL 1.1 endpoint today, with more connectors on the way — is about working with the databases you already run, not about escaping a ceiling here.