@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://opda.org.uk/pdtf/hasAddress> a owl:ObjectProperty ;
    rdfs:label "has address" ;
    skos:definition "Relates an address-bearing entity (a Property, Person, or Organisation) to an Address that locates it, uniformly across address variants so that one bearer may hold several Addresses differing on their variant." ;
    rdfs:comment "Canonical bearer → Address join predicate. Per ODR-0005 §6b pre-commitment and ODR-0015 §3a, opda:hasAddress is uniform across variants — one bearer may hasAddress multiple Address instances differing on opda:addressVariant (title / marketing / inspire). Per Council session-047 Q6 the predicate is bearer-extended to Person/Organisation. Documentary \"any-of\" domain (ODR-0032 §R2 session-050 amendment): rdfs:domain opda:Property , opda:Person , opda:Organisation — three triples read DISJUNCTIVELY per the module-header convention, NOT the RDFS §3.2 conjunction; authored as AI-signal, NEVER entailed (zero domain/range triples materialise, ADR-0035 — so the domain does NOT entail every addressed Person is a Property). The authoritative bearer disjunction lives in SHACL sh:or (opda:HasAddressBearerShape), NOT owl:unionOf. rdfs:range opda:Address kept (single co-domain); the Address class/IC stays ODR-0015-pending (Mode-vs-Resource open)." ;
    rdfs:domain <https://opda.org.uk/pdtf/Organisation> ;
    rdfs:domain <https://opda.org.uk/pdtf/Person> ;
    rdfs:domain <https://opda.org.uk/pdtf/Property> ;
    rdfs:range <https://opda.org.uk/pdtf/Address> ;
    dct:source <https://opda.org.uk/pdtf/harness/odr/ODR-0015/section-3a> .

# one hop — immediate neighbours
<https://opda.org.uk/pdtf/Organisation> a owl:Class .
<https://opda.org.uk/pdtf/Person> a owl:Class .
<https://opda.org.uk/pdtf/Property> a owl:Class .
