@prefix hdip: <https://specs.kivanura.org/hdip/gedra-profile/0.1#> .
@prefix gedra: <https://specs.kivanura.org/gedra#> .
@prefix gedrm: <https://specs.kivanura.org/gedrm#> .
@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 xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

<https://specs.kivanura.org/gedra/0.1/profiles/hdip/0.1> a owl:Ontology ;
  dcterms:title "HDIP GEDRA Reference Profile 0.1" ;
  dcterms:identifier "HDIP-GEDRA-PROFILE 0.1" ;
  dcterms:hasVersion "0.1" ;
  rdfs:comment "Data-side HDIP specialization of GEDRA 0.1. Intelligence / AI Product integration is intentionally deferred from this profile baseline." ;
  gedra:profileOf <https://specs.kivanura.org/gedra/0.1> .

hdip:AuthorizedDataSource a owl:Class ;
  rdfs:label "Authorized Data Source (ADS)" ;
  rdfs:subClassOf gedrm:AuthoritativeSource .

hdip:AuthorizedDataDistributor a owl:Class ;
  rdfs:label "Authorized Data Distributor (ADD)" ;
  rdfs:subClassOf gedrm:DataDistributor .

hdip:AuthorizedDataOriginator a owl:Class ;
  rdfs:label "Authorized Data Originator (ADO)" ;
  rdfs:subClassOf gedrm:DataOriginator .

hdip:HDIPDataProduct a owl:Class ;
  rdfs:label "HDIP Data Product" ;
  rdfs:subClassOf gedrm:DataProduct .

hdip:ProductDataEngineeringPlatform a owl:NamedIndividual ;
  rdfs:label "Product Data Engineering Platform (PDEP)" ;
  gedra:mapsTo gedra:DataPlatformProductPlane ;
  gedra:mapsTo gedra:GovernanceAndControl .

hdip:MarketplaceConsumptionLayer a owl:NamedIndividual ;
  rdfs:label "Marketplace & Consumption Layer" ;
  gedra:mapsTo gedra:ConsumptionAccessPlane ;
  gedra:mapsTo gedra:ProcessingProvisionMovementPlane .

hdip:ConsumerExperiencePlatform a owl:NamedIndividual ;
  rdfs:label "Consumer Experience Platform (CEP)" ;
  gedra:mapsTo gedra:ConsumptionAccessPlane .

hdip:CostObservabilityValuePlatform a owl:NamedIndividual ;
  rdfs:label "Cost, Observability & Value Platform (COVP)" ;
  gedra:mapsTo gedra:ValueObservabilityFeedbackPlane .

hdip:HDIPGovernancePlane a owl:NamedIndividual ;
  rdfs:label "HDIP Governance Plane" ;
  gedra:mapsTo gedra:GovernanceAndControl .

hdip:HDIPInfrastructureUtilityPlane a owl:NamedIndividual ;
  rdfs:label "HDIP Infrastructure / Utility Plane" ;
  gedra:mapsTo gedra:TechnologyUtilityFoundation .

hdip:ADSRegistry a owl:NamedIndividual ;
  rdfs:label "ADS Registry" ;
  hdip:requiredInReferenceProfile true .

hdip:DataProductRegistry a owl:NamedIndividual ;
  rdfs:label "Data Product Registry" ;
  hdip:requiredInReferenceProfile true .

hdip:SchemaRegistry a owl:NamedIndividual ;
  rdfs:label "Schema Registry" ;
  hdip:requiredInReferenceProfile true .

hdip:PolicyRegistry a owl:NamedIndividual ;
  rdfs:label "Policy Registry" ;
  hdip:requiredInReferenceProfile true .

hdip:CapabilityRegistry a owl:NamedIndividual ;
  rdfs:label "Capability Registry" ;
  hdip:requiredInReferenceProfile true .

hdip:BlueprintRegistry a owl:NamedIndividual ;
  rdfs:label "Blueprint Registry" ;
  hdip:requiredInReferenceProfile true .

hdip:requiredInReferenceProfile a owl:DatatypeProperty ;
  rdfs:range xsd:boolean .

hdip:ProfileRequirement a owl:Class .
hdip:ProfileConstraint a owl:Class .

hdip:HDIP_REQ_001 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-001" ;
  rdfs:label "Exact GEDRA Parent Binding" ;
  skos:definition "The HDIP reference profile binds to GEDRA 0.1 exactly." .

hdip:HDIP_REQ_002 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-002" ;
  rdfs:label "ADS Specializes Authoritative Source" ;
  skos:definition "ADS must specialize GEDRM Authoritative Source and must not be treated as universally equivalent to System of Record." .

hdip:HDIP_REQ_003 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-003" ;
  rdfs:label "ADD Specializes Data Distributor" ;
  skos:definition "ADD must specialize GEDRM Data Distributor and must not be treated as an Authoritative Source merely because it is authorized to distribute." .

hdip:HDIP_REQ_004 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-004" ;
  rdfs:label "ADO Optional Specialization" ;
  skos:definition "If ADO is adopted, it must specialize GEDRM Data Originator." .

hdip:HDIP_REQ_005 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-005" ;
  rdfs:label "HDIP Data Product Preserves GEDRA Product Semantics" ;
  skos:definition "An HDIP Data Product must preserve the GEDRM/GEDRA distinction between Data Asset and intentionally productized Data Product." .

hdip:HDIP_REQ_006 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-006" ;
  rdfs:label "Logical Architecture Mapping" ;
  skos:definition "PDEP, Marketplace & Consumption, CEP, COVP, Governance, and Utility constructs must map to their GEDRA responsibilities without becoming new GEDRA core planes." .

hdip:HDIP_REQ_007 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-007" ;
  rdfs:label "HDIP Registry Set" ;
  skos:definition "The reference profile includes ADS, Data Product, Schema, Policy, Capability, and Blueprint registries; registry presence alone does not establish authority, product status, control effectiveness, or conformance." .

hdip:HDIP_REQ_008 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-008" ;
  rdfs:label "Product-Local Governance" ;
  skos:definition "HDIP may bind resolved policy, contract, quality rule, control, provenance, lineage, evidence, schema, and semantic commitments to an exact Data Product version while preserving upstream policy authority." .

hdip:HDIP_REQ_009 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-009" ;
  rdfs:label "Data Mesh Optionality" ;
  skos:definition "Data Mesh is optional. GEDRA and HDIP do not require Data Mesh as the only operating model." .

hdip:HDIP_REQ_010 a hdip:ProfileRequirement ;
  dcterms:identifier "HDIP-REQ-010" ;
  rdfs:label "Intelligence Deferred From Current Reference Profile" ;
  skos:definition "AI Product / Intelligence is not modeled as a core GEDRA construct or as a formalized HDIP profile construct in this data-side reference profile baseline." .

hdip:HDIP_C_001 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-001" ;
  rdfs:label "Profile Parent Must Be GEDRA 0.1" ;
  hdip:requirement hdip:HDIP_REQ_001 .

hdip:HDIP_C_002 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-002" ;
  rdfs:label "ADS Must Specialize Authoritative Source" ;
  hdip:requirement hdip:HDIP_REQ_002 .

hdip:HDIP_C_003 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-003" ;
  rdfs:label "ADS Must Not Equal System of Record" ;
  hdip:requirement hdip:HDIP_REQ_002 .

hdip:HDIP_C_004 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-004" ;
  rdfs:label "ADD Must Specialize Data Distributor" ;
  hdip:requirement hdip:HDIP_REQ_003 .

hdip:HDIP_C_005 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-005" ;
  rdfs:label "ADD Must Not Equal Authoritative Source" ;
  hdip:requirement hdip:HDIP_REQ_003 .

hdip:HDIP_C_006 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-006" ;
  rdfs:label "ADO If Present Must Specialize Data Originator" ;
  hdip:requirement hdip:HDIP_REQ_004 .

hdip:HDIP_C_007 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-007" ;
  rdfs:label "Profile Construct GEDRA Mapping Must Resolve" ;
  hdip:requirement hdip:HDIP_REQ_006 .

hdip:HDIP_C_008 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-008" ;
  rdfs:label "C3 Binding Must Use Exact HDIP Profile Version" ;
  hdip:requirement hdip:HDIP_REQ_001 .

hdip:HDIP_C_009 a hdip:ProfileConstraint ;
  dcterms:identifier "HDIP-C-009" ;
  rdfs:label "AI Product Must Not Leak Into Current Profile Core" ;
  hdip:requirement hdip:HDIP_REQ_010 .

hdip:requirement a owl:ObjectProperty ; rdfs:range hdip:ProfileRequirement .
