Property module
The physical Property, its socially-recognised Address(es), the legal rights-bundle (LegalEstate) vested in it, the HMLR record (RegisteredTitle) documenting that estate, and the lifecycle events that mutate them (LeaseExtensionEvent, UPRNSuccessionEvent). This is OPDA’s structural spine — all other modules attach to it.
Entity inventory
| Entity | UFO meta-category | Identity criterion |
|---|---|---|
| Address | Substance Kind | Authority-record persistence across cosmetic re-format and authority succession |
| LeaseExtensionEvent | Event particular | Reified statutory lease extension event |
| LeaseTerm | Information particular | OWL-Time ProperInterval bounding a leasehold tenure |
| LegalEstate | Substance Kind | Rights-bundle persistence through grant / transfer / registration / discharge |
| Property | Substance Kind | Spatial-material continuity (Kendall + Davis legal-record-discontinuity-override hybrid) |
| RegisteredTitle | Substance Kind (informational) | Title-number lineage + reified registry-event history |
| UPRNSuccessionEvent | Event particular | Reified administrative UPRN re-numbering event |
Enumerations bound by this module
| Scheme | Used by attribute | Closed/Open |
|---|---|---|
| AddressVariantScheme | Address.addressVariant | Closed (4 members) |
| BuiltFormScheme | Property.builtForm | Closed (5 members) |
| CentralHeatingFuelTypeScheme | Property.centralHeatingFuelType | Closed (6 members) |
| CouncilTaxBandSchemeEW | Council-tax attributes (E&W) | Closed (8 members) |
| CouncilTaxBandSchemeScotland | Council-tax attributes (Scotland) | Closed (9 members) |
| CurrentEnergyRatingScheme | Property.currentEnergyRating | Closed (7 members) |
| HeatingTypeScheme | Property.heatingType | Closed (4 members) |
| OffMainsDrainageSystemTypeScheme | Property.offMainsDrainageSystemType | Closed (6 members) |
| OwnershipTypeScheme | LegalEstate.ownershipType | Closed (4 members) |
| PropertyTypeScheme | Property.propertyType | Closed (6 members) |
| TenureKindScheme | LegalEstate.tenureKind | Closed (3 members) |
| YesNoScheme | Many Yes/No discriminators | Closed (2 members) |
| YesNoNotApplicableScheme | BASPI5 conditional questions | Closed (3 members) |
| YesNoNotKnownScheme | BASPI5 not-known-admissible questions | Closed (3 members) |
| YesNoNotRequiredScheme | BASPI5 not-required-admissible questions | Closed (3 members) |
ER diagram
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#E1BEE7", "primaryTextColor": "#4A148C", "primaryBorderColor": "#6A1B9A", "lineColor": "#37474F"}}}%%
erDiagram
accTitle: Property Module — Entity-Relationship Diagram
accDescr: Property module entities (Property, Address, LegalEstate, RegisteredTitle, LeaseTerm) and lifecycle events (LeaseExtensionEvent, UPRNSuccessionEvent) with intra-module relationships.
Property ||--o{ Address : "hasAddress"
Property }o--o| LegalEstate : "vests"
Property }o--o{ RegisteredTitle : "identifiedBy"
RegisteredTitle ||--|| LegalEstate : "recordsEstate"
RegisteredTitle }o--|| Property : "identifiesSameProperty"
LegalEstate }o--|| Property : "identifiesSameProperty"
LegalEstate ||--o| LeaseTerm : "leaseTerm"
LeaseExtensionEvent }o--|| LegalEstate : "extends"
LeaseExtensionEvent }o--|| LeaseTerm : "produces successor"
UPRNSuccessionEvent }o--|| Property : "succeeds (PROV-O wasDerivedFrom)"
Source file: ../diagrams/property-er.mmd.
Class hierarchy
OWL/RDFS subclass relationships in the property module. Property, LegalEstate, and Address are Substance Kinds at root level. Address inherits from vcard:Address. Events specialise the foundation Event particular shape via PROV-O Activity.
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#E1BEE7", "primaryTextColor": "#4A148C", "primaryBorderColor": "#6A1B9A", "lineColor": "#37474F"}}}%%
classDiagram
accTitle: Property Module — Class Hierarchy
accDescr: OWL/RDFS subclass relationships in the property module — Property as Substance Kind, Address subclasses vcard:Address, LegalEstate carries tenure, RegisteredTitle records Estate, lifecycle Events as PROV-O Activities.
class vcardAddress["vcard:Address"]
class provActivity["prov:Activity"]
class timeProperInterval["time:ProperInterval"]
class Property {
hasUPRN
propertyType
builtForm
currentEnergyRating
+ many Yes/No discriminators
}
class Address {
addressVariant : AddressVariantScheme
}
class LegalEstate {
tenureKind : TenureKindScheme
ownershipType
isGroundRentPayable
}
class RegisteredTitle {
title-number lineage
}
class LeaseTerm {
OWL-Time bounded interval
}
class LeaseExtensionEvent {
prov:atTime
}
class UPRNSuccessionEvent {
prov:atTime
}
vcardAddress <|-- Address
timeProperInterval <|-- LeaseTerm
provActivity <|-- LeaseExtensionEvent
provActivity <|-- UPRNSuccessionEvent
Identity-key summary
---
config:
layout: elk
elk:
mergeEdges: false
nodePlacementStrategy: BRANDES_KOEPF
---
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#E1BEE7", "primaryTextColor": "#4A148C", "primaryBorderColor": "#6A1B9A", "lineColor": "#37474F"}}}%%
flowchart LR
accTitle: Property Module — Identity-Key Summary
accDescr: Identity Criterion key surfaces for the seven property-module entities — spatial-material continuity for Property, variant + authority-record for Address, rights-bundle for LegalEstate, title-lineage for RegisteredTitle, OWL-Time pair for LeaseTerm, PROV-O tuples for the two Events.
classDef icCell fill:#F8BBD9,stroke:#AD1457,stroke-width:2px,color:#880E4F
classDef entityCell fill:#B3E5FC,stroke:#0277BD,stroke-width:2px,color:#01579B
PropertyE[Property]:::entityCell -->|"IC"| PIC["spatial-material continuity
Kendall + Davis hybrid
(hasUPRN is contingent)"]:::icCell AddressE[Address]:::entityCell -->|"IC"| AIC["addressVariant +
authority-record-id"]:::icCell LegalEstateE[LegalEstate]:::entityCell -->|"IC"| LEIC["rights-bundle persistence
(tenureKind surface)"]:::icCell RegisteredTitleE[RegisteredTitle]:::entityCell -->|"IC"| RTIC["title-number lineage +
registry-event history"]:::icCell LeaseTermE[LeaseTerm]:::entityCell -->|"IC"| LTIC["(LegalEstate,
time:hasBeginning,
time:hasEnd)"]:::icCell LeaseExtensionEventE[LeaseExtensionEvent]:::entityCell -->|"IC"| LEEIC["(LegalEstate,
prov-timestamp)"]:::icCell UPRNSuccessionEventE[UPRNSuccessionEvent]:::entityCell -->|"IC"| USEIC["(Property,
prov-timestamp)"]:::icCell
Kendall + Davis hybrid
(hasUPRN is contingent)"]:::icCell AddressE[Address]:::entityCell -->|"IC"| AIC["addressVariant +
authority-record-id"]:::icCell LegalEstateE[LegalEstate]:::entityCell -->|"IC"| LEIC["rights-bundle persistence
(tenureKind surface)"]:::icCell RegisteredTitleE[RegisteredTitle]:::entityCell -->|"IC"| RTIC["title-number lineage +
registry-event history"]:::icCell LeaseTermE[LeaseTerm]:::entityCell -->|"IC"| LTIC["(LegalEstate,
time:hasBeginning,
time:hasEnd)"]:::icCell LeaseExtensionEventE[LeaseExtensionEvent]:::entityCell -->|"IC"| LEEIC["(LegalEstate,
prov-timestamp)"]:::icCell UPRNSuccessionEventE[UPRNSuccessionEvent]:::entityCell -->|"IC"| USEIC["(Property,
prov-timestamp)"]:::icCell
Comments