Denotational Semantics for ODRL: Knowledge-Based Constraint Conflict Detection
Organizations: RWTH Aachen University, Germany · Fraunhofer FIT, Sankt Augustin, Germany · University of Galway, Ireland
Abstract
ODRL's six set-based operators -- isA, isPartOf, hasPart, isAnyOf, isAllOf, isNoneOf -- depend on external domain knowledge that the W3C specification leaves unspecified. Without it, every cross-dataspace policy comparison defaults to Unknown. We present a denotational semantics that maps each ODRL constraint to the set of knowledge-base concepts satisfying it. Conflict detection reduces to denotation intersection under a three-valued verdict -- Conflict, Compatible, or Unknown -- that is sound under incomplete knowledge. The framework covers all three ODRL composition modes (and, or, xone) and all three semantic domains arising in practice: taxonomic (class subsumption), mereological (part-whole containment), and nominal (identity). For cross-dataspace interoperability, we define order-preserving alignments between knowledge bases and prove two guarantees: conflicts are preserved across different KB standards, and unmapped concepts degrade gracefully to Unknown -- never to false conflicts. A runtime soundness theorem ensures that design-time verdicts hold for all execution contexts. The encoding stays within the decidable EPR fragment of first-order logic. We validate it with 154 benchmarks across six knowledge base families (GeoNames, ISO 3166, W3C DPV, a GDPR-derived taxonomy, BCP 47, and ISO 639-3) and four structural KBs targeting adversarial edge cases. Both the Vampire theorem prover and the Z3 SMT solver agree on all 154 verdicts. A key finding is that exclusive composition (xone) requires strictly stronger KB axioms than conjunction or disjunction: open-world semantics blocks exclusivity even when positive evidence appears to satisfy exactly one branch.
Figures & tables
| Challenge | Scenario | Without framework | With framework |
|---|---|---|---|
| Single-KB grounding Can we compute ODRL’s set operators? | Policy uses isPartOf , isA ; request uses eq . Three dimensions: spatial : France vs. Europe purpose : ScientificRes. vs. NonCommercial language : fr vs. de | All three return Unknown —engine sees incomparable strings | Per-dimension verdicts: Compatible (France Europe) Unknown (R&D ? NonComm.) Conflict (fr de) |
| Cross-dataspace composition Do multi-dimensional policies compose? | BSB policy: 3 constraints. French request: 3 constraints. Compatibility requires all pairs to overlap. | No mechanism to conjoin verdicts across operands | Language Conflict blocks entire request. Diagnostic isolates blocking dimension. |
| Cross-standard alignment What if each side uses a different KB? | BSB uses GeoNames, DPV, BCP 47. French archive uses ISO 3166, GDPR taxonomy, ISO 639-3. Same scenario, different standards. | Policies from different standards are mutually opaque—no interoperability | Conflicts preserved across KB pairs. Unmapped concepts degrade to Unknown , never to false Conflict . |
| Left Operand | ODRL Specification | Domain | Relation | Source |
|---|---|---|---|---|
| language | “A natural language” | Taxonomic | Ontology | |
| purpose | “A defined purpose” | Taxonomic | Ontology | |
| industry | “A defined industry sector” | Taxonomic | Ontology | |
| fileFormat | “A transformed file format” | Taxonomic | Ontology | |
| media | “Category of a media asset” | Taxonomic | Ontology | |
| recipient | “The party receiving the result” | Taxonomic | Ontology |
| Verdict | Conjecture | SZS [ 16 ] | SMT | |
|---|---|---|---|---|
| Conflict | Theorem | unsat | ||
| Compatible | Theorem | unsat | ||
| Unknown | either | CounterSat | sat |
| Paper Result | Isabelle Name | Locale |
|---|---|---|
| Lemma 1 | disj_order_consistency | knowledge_base |
| Theorem 2.1 | soundness | knowledge_base |
| Theorem 2.3 | runtime_soundness | knowledge_base |
| Theorem 2.2 | composition_soundness_* | knowledge_base |
| Lemma 2 | conflict_propagation | knowledge_base |
| Proposition 3 | kb_monotonicity_verdict | kb_extension |
| Operand | KB | Role | |
| spatial | GEO000 | 4 | GeoNames (primary) |
| GEO001 | 3 | ISO 3166 (alignment) | |
| GEO002 | — | UNA + negative partOf | |
| purpose | DPV000 | 10 | W3C DPV (primary) |
| DPV001 | 6 | GDPR-derived (alignment) | |
| DPV002 | — | Same-level UNA |
| Problem | Request | branch? | other? | Verdict |
|---|---|---|---|---|
| ODRL085 | nonCommRes | ✓ | explicit | Compatible |
| ODRL086 | commRes | ✓ | absent | Unknown |
Policy Evaluation
Policy evaluation estimates the outcomes, value, risks, and fairness of decision rules before or after deployment.
See all 55 papers