@prefix : <https://ontology.inferal.com/mappings/p-plan-data-usage-processing-lineage/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix dpv: <https://w3id.org/dpv#> .
@prefix duplo: <https://ontology.inferal.com/modules/data-usage-processing-lineage/> .
@prefix mod: <https://w3id.org/mod#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix p-plan: <http://purl.org/net/p-plan#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix pubacc: <https://ontology.inferal.com/modules/publication-access/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix vann: <http://purl.org/vocab/vann/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

:
    a owl:Ontology, pubacc:PublicationManagedOntology ;
    dcterms:accessRights pubacc:PublicAccess ;
    owl:imports <https://ontology.inferal.com/modules/data-usage-processing-lineage/> ;
    dcterms:title "P-Plan Projection Configuration Vocabulary" ;
    dcterms:description "Source-profile terms used to configure the separately published P-Plan to processing-lineage SPARQL mapping." ;
    dcterms:issued "2026-07-10"^^xsd:date ;
    dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
    dcterms:source <https://www.opmw.org/model/p-plan/> ;
    vann:preferredNamespacePrefix "map-pplan-duplo" ;
    vann:preferredNamespaceUri "https://ontology.inferal.com/mappings/p-plan-data-usage-processing-lineage/" ;
    mod:status "draft" ;
    rdfs:label "P-Plan projection configuration vocabulary" ;
    rdfs:comment "Defines only the source-profile classes and properties needed to identify eligible P-Plan steps, variables, fixed entities, processing categories, and projection provenance. The SPARQL query is the mapping artifact." ;
    owl:versionInfo "0.1.0" .

:ProjectionConfiguration
    a rdfs:Class ;
    rdfs:label "P-Plan projection configuration" ;
    rdfs:comment "Input configuration naming the P-Plan step to project, its evidenced processing category, and the actual mapping activity responsible for generated assessment assertions." .

:DataVariable
    a rdfs:Class ;
    rdfs:subClassOf p-plan:Variable ;
    rdfs:label "data-bearing P-Plan variable" ;
    rdfs:comment "A P-Plan variable explicitly established to describe data rather than a parameter, model, configuration, or other auxiliary entity." .

:AuxiliaryVariable
    a rdfs:Class ;
    rdfs:subClassOf p-plan:Variable ;
    rdfs:label "auxiliary P-Plan variable" ;
    rdfs:comment "A P-Plan input variable explicitly established to describe a non-data dependency such as configuration, a model, or a parameter." .

:FixedDataEntity
    a rdfs:Class ;
    rdfs:subClassOf p-plan:Entity ;
    rdfs:label "fixed-aspect P-Plan data entity" ;
    rdfs:comment "A P-Plan execution entity explicitly established to be data-bearing and fixed-aspect, making projection to duplo:DataSnapshot appropriate." .

:mapsStep
    a rdf:Property ;
    rdfs:domain :ProjectionConfiguration ;
    rdfs:range p-plan:Step ;
    rdfs:label "maps P-Plan step" ;
    rdfs:comment "Identifies the P-Plan step selected for projection." .

:processingCategory
    a rdf:Property ;
    rdfs:domain :ProjectionConfiguration ;
    rdfs:range dpv:Processing ;
    rdfs:label "processing category" ;
    rdfs:comment "Supplies the evidenced DPV processing category used for both the projected specification and corresponding execution activities." .

:projectionActivity
    a rdf:Property ;
    rdfs:domain :ProjectionConfiguration ;
    rdfs:range prov:Activity ;
    rdfs:label "projection activity" ;
    rdfs:comment "Identifies the actual mapping execution activity that generated projected assessment assertions." .
