@prefix : <https://ontology.inferal.com/modules/data-classification/> .
@prefix conf: <https://ontology.inferal.com/modules/confidence/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix dpv: <https://w3id.org/dpv#> .
@prefix mod: <https://w3id.org/mod#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@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 skos: <http://www.w3.org/2004/02/skos/core#> .
@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
        conf: ,
        <http://www.w3.org/2004/02/skos/core> ,
        <http://www.w3.org/ns/prov> ,
        <https://w3id.org/dpv> ,
        <https://w3id.org/dpv/pd> ;
    dcterms:title "Data Classification Ontology" ;
    dcterms:description "Terms for classifying data elements with privacy categories, sensitivity levels, detection provenance, confidence, review status, and policy hooks." ;
    dcterms:license <https://creativecommons.org/licenses/by/4.0/> ;
    dcterms:source
        conf: ,
        <http://www.w3.org/2004/02/skos/core> ,
        <http://www.w3.org/ns/prov> ,
        <https://w3id.org/dpv> ,
        <https://w3id.org/dpv/pd> ;
    vann:preferredNamespacePrefix "dcls" ;
    vann:preferredNamespaceUri "https://ontology.inferal.com/modules/data-classification/" ;
    mod:status "draft" ;
    rdfs:comment "This module provides a thin Inferal-authored profile for annotating data-bearing elements such as columns, JSON paths, RDF predicates, log attributes, and file regions. It imports DPV and DPV-PD rather than redefining personal-data taxonomies, and uses SKOS for controlled workflow vocabularies." ;
    rdfs:seeAlso conf:, <http://www.w3.org/2004/02/skos/core>, <https://w3id.org/dpv>, <https://w3id.org/dpv/pd> ;
    owl:versionInfo "0.1.0" .

:DataElement
    a rdfs:Class ;
    rdfs:label "data element" ;
    rdfs:comment "An addressable data-bearing element, such as a field, column, JSON path, RDF predicate, log attribute, dataset attribute, or file region." .

:DataClassification
    a rdfs:Class ;
    rdfs:label "data classification" ;
    rdfs:comment "A classification record for a data element. It can contain asserted categories or candidate categories, optionally qualified by sensitivity, confidence, provenance, status, context, and policy hooks." .

:SensitivityLevel
    a rdfs:Class ;
    rdfs:subClassOf dpv:SensitivityLevel ;
    rdfs:label "sensitivity level" ;
    rdfs:comment "A local operational sensitivity level assigned to a data classification. Sensitivity is contextual and does not replace DPV personal-data category semantics." .

:DetectionActivity
    a rdfs:Class ;
    rdfs:subClassOf prov:Activity ;
    rdfs:label "detection activity" ;
    rdfs:comment "A provenance activity that produced, reviewed, imported, or otherwise established a data classification." .

:DetectionMethod
    a rdfs:Class ;
    rdfs:label "detection method" ;
    rdfs:comment "A method used by a detection activity to classify data, such as regex detection, sampled value detection, schema-name heuristics, NER, lineage inheritance, or manual review." .

:ClassificationStatus
    a rdfs:Class ;
    rdfs:label "classification status" ;
    rdfs:comment "A workflow status for a data classification, such as candidate, confirmed, rejected, or stale." .

:ClassificationStatusScheme
    a skos:ConceptScheme ;
    rdfs:label "classification status scheme" ;
    rdfs:comment "A SKOS concept scheme collecting controlled workflow statuses for data classifications." ;
    skos:prefLabel "classification status scheme" ;
    skos:definition "Controlled workflow statuses for data classifications." .

:ClassificationContext
    a rdfs:Class ;
    rdfs:label "classification context" ;
    rdfs:comment "The local policy, jurisdictional, processing, system, controller, or operational context in which a data classification is evaluated." .

:DataPolicy
    a rdfs:Class ;
    rdfs:label "data policy" ;
    rdfs:comment "A policy, rule, control set, or downstream decision resource triggered by a data classification." .

:MitigationMeasure
    a rdfs:Class ;
    rdfs:subClassOf dpv:TechnicalMeasure ;
    rdfs:label "mitigation measure" ;
    rdfs:comment "A local technical measure category for reducing exposure of a classified data element in downstream representations, exports, or processing contexts." .

:ClassificationRuleSet
    a rdfs:Class ;
    rdfs:subClassOf prov:Plan ;
    rdfs:label "classification rule set" ;
    rdfs:comment "A versioned set of rules, heuristics, or decision logic used to produce or review data classifications." .

:ClassificationRule
    a rdfs:Class ;
    rdfs:subClassOf prov:Plan ;
    rdfs:label "classification rule" ;
    rdfs:comment "A single rule or heuristic that can match data-element evidence and assign classification properties such as category, status, sensitivity, confidence, or review requirement." .

:ClassificationRuleFieldPart
    a rdfs:Class ;
    rdfs:label "classification rule field part" ;
    rdfs:comment "A part of a data-element description inspected by a classification rule, such as a local name, schema label, or source comment." .

:classifiesElement
    a rdf:Property ;
    rdfs:label "classifies element" ;
    rdfs:comment "Connects a data classification to the data element it classifies." ;
    rdfs:domain :DataClassification ;
    rdfs:range :DataElement .

:classifiedByRule
    a rdf:Property ;
    rdfs:label "classified by rule" ;
    rdfs:comment "Connects a data classification to the classification rule whose decision produced or justified the classification record." ;
    rdfs:domain :DataClassification ;
    rdfs:range :ClassificationRule .

:hasClassificationRule
    a rdf:Property ;
    rdfs:label "has classification rule" ;
    rdfs:comment "Connects a classification rule set to a rule that belongs to that set." ;
    rdfs:domain :ClassificationRuleSet ;
    rdfs:range :ClassificationRule .

:matchesFieldPart
    a rdf:Property ;
    rdfs:label "matches field part" ;
    rdfs:comment "Identifies the part of a data-element description that a classification rule inspects." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range :ClassificationRuleFieldPart .

:matchesPattern
    a rdf:Property ;
    rdfs:label "matches pattern" ;
    rdfs:comment "A lexical pattern, regular expression, keyword, or other string form used by a classification rule to match data-element evidence." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range xsd:string .

:excludesPattern
    a rdf:Property ;
    rdfs:label "excludes pattern" ;
    rdfs:comment "A lexical pattern, regular expression, keyword, or other string form used by a classification rule to suppress or narrow a match." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range xsd:string .

:ruleOrder
    a rdf:Property ;
    rdfs:label "rule order" ;
    rdfs:comment "An integer order or priority for evaluating rules in a rule set when order affects the resulting classification." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range xsd:integer .

:ruleRationale
    a rdf:Property ;
    rdfs:label "rule rationale" ;
    rdfs:comment "Human-readable rationale explaining why a classification rule exists or how its result should be interpreted." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range xsd:string .

:assignsDataCategory
    a rdf:Property ;
    rdfs:label "assigns data category" ;
    rdfs:comment "Connects a classification rule to the DPV-compatible data category it assigns when the rule fires. This describes the rule output and does not itself assert data about a data element." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range dpv:Data .

:assignsPersonalDataCategory
    a rdf:Property ;
    rdfs:subPropertyOf :assignsDataCategory ;
    rdfs:label "assigns personal data category" ;
    rdfs:comment "Connects a classification rule to the DPV-PD or DPV-compatible personal-data category it assigns when the rule fires. This describes the rule output and does not itself assert personal data about a data element." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range dpv:PersonalData .

:assignsClassificationStatus
    a rdf:Property ;
    rdfs:label "assigns classification status" ;
    rdfs:comment "Connects a classification rule to the classification status it assigns when the rule fires." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range :ClassificationStatus .

:assignsSensitivityLevel
    a rdf:Property ;
    rdfs:label "assigns sensitivity level" ;
    rdfs:comment "Connects a classification rule to the sensitivity level it assigns when the rule fires." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range :SensitivityLevel .

:assignsConfidence
    a rdf:Property ;
    rdfs:label "assigns confidence" ;
    rdfs:comment "A scalar confidence projection assigned by a classification rule when the rule fires. Use confidence ontology terms when the rule needs to specify the scale, operator, uncertainty, or derivation assumptions behind the value." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range xsd:decimal .

:assignsReviewRequirement
    a rdf:Property ;
    rdfs:label "assigns review requirement" ;
    rdfs:comment "A boolean review requirement assigned by a classification rule when the rule fires." ;
    rdfs:domain :ClassificationRule ;
    rdfs:range xsd:boolean .

:dataCategory
    a rdf:Property ;
    rdfs:subPropertyOf dpv:hasData ;
    rdfs:label "data category" ;
    rdfs:comment "Connects a confirmed or otherwise asserted data classification to a DPV-compatible data category." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:Data .

:personalDataCategory
    a rdf:Property ;
    rdfs:subPropertyOf :dataCategory ;
    rdfs:subPropertyOf dpv:hasPersonalData ;
    rdfs:label "personal data category" ;
    rdfs:comment "Connects a confirmed or otherwise asserted data classification to a DPV-PD or DPV-compatible personal-data category." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:PersonalData .

:candidateDataCategory
    a rdf:Property ;
    rdfs:label "candidate data category" ;
    rdfs:comment "Connects an unconfirmed or rejected data classification record to a proposed DPV-compatible data category without entailing dpv:hasData." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:Data .

:candidatePersonalDataCategory
    a rdf:Property ;
    rdfs:subPropertyOf :candidateDataCategory ;
    rdfs:label "candidate personal data category" ;
    rdfs:comment "Connects an unconfirmed or rejected data classification record to a proposed DPV-PD or DPV-compatible personal-data category without entailing dpv:hasPersonalData." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:PersonalData .

:hasSensitivityLevel
    a rdf:Property ;
    rdfs:subPropertyOf dpv:hasSensitivityLevel ;
    rdfs:label "has sensitivity level" ;
    rdfs:comment "Connects a data classification to its local operational sensitivity level." ;
    rdfs:domain :DataClassification ;
    rdfs:range :SensitivityLevel .

:wasClassifiedBy
    a rdf:Property ;
    rdfs:subPropertyOf prov:wasGeneratedBy ;
    rdfs:label "was classified by" ;
    rdfs:comment "Connects a data classification to the provenance activity that produced, imported, or otherwise established it." ;
    rdfs:domain :DataClassification ;
    rdfs:range prov:Activity .

:detectedBy
    a rdf:Property ;
    rdfs:subPropertyOf :wasClassifiedBy ;
    rdfs:label "detected by" ;
    rdfs:comment "Connects a data classification to the detection activity that proposed or produced it." ;
    rdfs:domain :DataClassification ;
    rdfs:range prov:Activity .

:reviewedBy
    a rdf:Property ;
    rdfs:subPropertyOf prov:wasInfluencedBy ;
    rdfs:label "reviewed by" ;
    rdfs:comment "Connects a data classification to a review activity that influenced, accepted, rejected, or otherwise assessed it without treating the review as the generating activity." ;
    rdfs:domain :DataClassification ;
    rdfs:range prov:Activity .

:hasDetectionMethod
    a rdf:Property ;
    rdfs:label "has detection method" ;
    rdfs:comment "Connects a detection activity to the method used to produce or review classifications." ;
    rdfs:domain :DetectionActivity ;
    rdfs:range :DetectionMethod .

:confidence
    a rdf:Property ;
    rdfs:label "confidence" ;
    rdfs:comment "Deprecated legacy scalar confidence projection for compatibility with older data, where 0 means no confidence and 1 means complete confidence. New data must use dcls:confidenceAssessment for scale-aware confidence semantics." ;
    rdfs:domain :DataClassification ;
    rdfs:range xsd:decimal ;
    owl:deprecated true .

:confidenceAssessment
    a rdf:Property ;
    rdfs:label "confidence assessment" ;
    rdfs:comment "Connects a data classification to a structured confidence assessment that records the confidence scale, value, provenance, operators, or assumptions behind a scalar projection." ;
    rdfs:domain :DataClassification ;
    rdfs:range conf:ConfidenceAssessment .

:hasClassificationStatus
    a rdf:Property ;
    rdfs:label "has classification status" ;
    rdfs:comment "Connects a data classification to its workflow status." ;
    rdfs:domain :DataClassification ;
    rdfs:range :ClassificationStatus .

:hasClassificationContext
    a rdf:Property ;
    rdfs:label "has classification context" ;
    rdfs:comment "Connects a data classification to the local context in which its category, sensitivity, status, and policy hooks are evaluated." ;
    rdfs:domain :DataClassification ;
    rdfs:range :ClassificationContext .

:requiresReview
    a rdf:Property ;
    rdfs:label "requires review" ;
    rdfs:comment "A boolean workflow marker that a data classification is marked for human or policy review." ;
    rdfs:domain :DataClassification ;
    rdfs:range xsd:boolean .

:requiresMeasure
    a rdf:Property ;
    rdfs:label "requires measure" ;
    rdfs:comment "Connects a data classification to a technical or organisational measure category recorded by policy or sensitivity rules, typically a DPV measure class such as encryption or access control. Specific implementations can use a subclass of the broad category." ;
    rdfs:domain :DataClassification ;
    rdfs:range rdfs:Class .

:requiresLegalBasis
    a rdf:Property ;
    rdfs:label "requires legal basis" ;
    rdfs:comment "Connects a data classification to a legal basis associated with processing in an applicable policy or context." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:LegalBasis .

:allowedProcessing
    a rdf:Property ;
    rdfs:label "allowed processing" ;
    rdfs:comment "Connects a data classification to a processing operation that is explicitly allowed by the associated local policy context." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:Processing .

:prohibitedProcessing
    a rdf:Property ;
    rdfs:label "prohibited processing" ;
    rdfs:comment "Connects a data classification to a processing operation that is prohibited by the associated local policy context." ;
    rdfs:domain :DataClassification ;
    rdfs:range dpv:Processing .

:triggersPolicy
    a rdf:Property ;
    rdfs:label "triggers policy" ;
    rdfs:comment "Connects a data classification to a policy resource that should evaluate or govern the classified element." ;
    rdfs:domain :DataClassification ;
    rdfs:range :DataPolicy .

:sourceAsset
    a rdf:Property ;
    rdfs:label "source asset" ;
    rdfs:comment "Connects a data element to the dataset, table, document, file, stream, or other asset in which it occurs." ;
    rdfs:domain :DataElement ;
    rdfs:range rdfs:Resource .

:path
    a rdf:Property ;
    rdfs:label "path" ;
    rdfs:comment "A string path, column name, JSONPath, XPath, dotted attribute path, or other address within a source asset." ;
    rdfs:domain :DataElement ;
    rdfs:range xsd:string .

:dataPredicate
    a rdf:Property ;
    rdfs:label "data predicate" ;
    rdfs:comment "Connects a data element to the RDF predicate whose objects carry the classified data." ;
    rdfs:domain :DataElement ;
    rdfs:range rdf:Property .

:DefaultSensitivityScheme
    a skos:ConceptScheme ;
    rdfs:label "default sensitivity scheme" ;
    rdfs:comment "A SKOS concept scheme collecting Inferal's four built-in operational sensitivity levels. The levels are organization-relative approximations, not portable security semantics; a customer that runs a different sensitivity taxonomy models it as its own concept scheme and maps into this scheme with SKOS mapping relations rather than reusing these individuals directly." ;
    skos:prefLabel "default sensitivity scheme" ;
    skos:definition "Inferal's default, approximate operational sensitivity levels." .

:LowSensitivity
    a :SensitivityLevel, skos:Concept ;
    rdfs:label "low sensitivity" ;
    rdfs:comment "A local sensitivity level for data whose exposure is expected to have low operational or privacy impact in the relevant context." ;
    skos:inScheme :DefaultSensitivityScheme ;
    skos:prefLabel "low sensitivity" ;
    skos:definition "A local sensitivity level for data whose exposure is expected to have low operational or privacy impact in the relevant context." .

:ModerateSensitivity
    a :SensitivityLevel, skos:Concept ;
    rdfs:label "moderate sensitivity" ;
    rdfs:comment "A local sensitivity level for data whose exposure is normally handled with ordinary privacy controls and operational care." ;
    skos:inScheme :DefaultSensitivityScheme ;
    skos:prefLabel "moderate sensitivity" ;
    skos:definition "A local sensitivity level for data whose exposure is normally handled with ordinary privacy controls and operational care." .

:HighSensitivity
    a :SensitivityLevel, skos:Concept ;
    rdfs:label "high sensitivity" ;
    rdfs:comment "A local sensitivity level for data whose exposure can create substantial privacy, compliance, or operational risk." ;
    skos:inScheme :DefaultSensitivityScheme ;
    skos:prefLabel "high sensitivity" ;
    skos:definition "A local sensitivity level for data whose exposure can create substantial privacy, compliance, or operational risk." .

:RestrictedSensitivity
    a :SensitivityLevel, skos:Concept ;
    rdfs:label "restricted sensitivity" ;
    rdfs:comment "A local sensitivity level for data whose exposure is handled with explicit review and strong controls. The colocated SHACL profile enforces review and at least one measure when this level is used." ;
    skos:inScheme :DefaultSensitivityScheme ;
    skos:prefLabel "restricted sensitivity" ;
    skos:definition "A local sensitivity level for data whose exposure is handled with explicit review and strong controls." .

:Candidate
    a :ClassificationStatus, skos:Concept ;
    rdfs:label "candidate" ;
    rdfs:comment "A classification status for an unconfirmed detection candidate." ;
    skos:inScheme :ClassificationStatusScheme ;
    skos:prefLabel "candidate" ;
    skos:definition "A classification status for an unconfirmed detection candidate." .

:Confirmed
    a :ClassificationStatus, skos:Concept ;
    rdfs:label "confirmed" ;
    rdfs:comment "A classification status for a classification that has been accepted by a trusted source, process, or reviewer." ;
    skos:inScheme :ClassificationStatusScheme ;
    skos:prefLabel "confirmed" ;
    skos:definition "A classification status for a classification that has been accepted by a trusted source, process, or reviewer." .

:Rejected
    a :ClassificationStatus, skos:Concept ;
    rdfs:label "rejected" ;
    rdfs:comment "A classification status for a detection that has been rejected as incorrect or no longer applicable." ;
    skos:inScheme :ClassificationStatusScheme ;
    skos:prefLabel "rejected" ;
    skos:definition "A classification status for a detection that has been rejected as incorrect or no longer applicable." .

:Stale
    a :ClassificationStatus, skos:Concept ;
    rdfs:label "stale" ;
    rdfs:comment "A classification status for a previously accepted classification that should be re-evaluated because the source, schema, policy, or evidence changed." ;
    skos:inScheme :ClassificationStatusScheme ;
    skos:prefLabel "stale" ;
    skos:definition "A classification status for a previously accepted classification that should be re-evaluated because the source, schema, policy, or evidence changed." .

:IdentityLinkagePseudonymisation
    a rdfs:Class ;
    rdfs:subClassOf :MitigationMeasure ;
    rdfs:subClassOf dpv:DeterministicPseudonymisation ;
    rdfs:label "identity linkage pseudonymisation" ;
    rdfs:comment "A mitigation measure that replaces a direct identifier with a stable pseudonymous value so records about the same person, account, device, or entity can still be linked without exposing the original identifier." .

:AttributeGroupingObfuscation
    a rdfs:Class ;
    rdfs:subClassOf :MitigationMeasure ;
    rdfs:subClassOf dpv:DataSanitisationTechnique ;
    rdfs:label "attribute grouping obfuscation" ;
    rdfs:comment "A mitigation measure that replaces an attribute value with an opaque grouping value so records sharing the same attribute can be grouped without exposing the original attribute value." .

:ValueElision
    a rdfs:Class ;
    rdfs:subClassOf :MitigationMeasure ;
    rdfs:subClassOf dpv:DataRedaction ;
    rdfs:label "value elision" ;
    rdfs:comment "A mitigation measure that withholds the original value while preserving the data element in the downstream representation, typically by using a non-informative placeholder." .

:ElementElision
    a rdfs:Class ;
    rdfs:subClassOf :MitigationMeasure ;
    rdfs:subClassOf dpv:DataRedaction ;
    rdfs:label "element elision" ;
    rdfs:comment "A mitigation measure that omits the data element itself from the downstream representation without implying deletion or erasure of the underlying source data." .

:LocalNamePart
    a :ClassificationRuleFieldPart ;
    rdfs:label "local name part" ;
    rdfs:comment "The local name or compact field-name portion of a data element, RDF predicate IRI, column, or attribute inspected by a classification rule." .

:LabelPart
    a :ClassificationRuleFieldPart ;
    rdfs:label "label part" ;
    rdfs:comment "A human-readable label associated with a data element or source schema term inspected by a classification rule." .

:CommentPart
    a :ClassificationRuleFieldPart ;
    rdfs:label "comment part" ;
    rdfs:comment "A source comment, description, or documentation string associated with a data element or schema term inspected by a classification rule." .

:DetectionMethodScheme
    a skos:ConceptScheme ;
    rdfs:label "detection method scheme" ;
    rdfs:comment "A SKOS concept scheme collecting the coarse detection techniques a detection activity can use. A detection method names the general technique only; the concrete recipe that ran is a ClassificationRuleSet plan reached through the activity's qualified PROV association, and the execution is the DetectionActivity itself." ;
    skos:prefLabel "detection method scheme" ;
    skos:definition "Controlled coarse detection techniques for detection activities." .

:RegexDetection
    a :DetectionMethod, skos:Concept ;
    rdfs:label "regex detection" ;
    rdfs:comment "A detection method based on regular-expression matching." ;
    skos:inScheme :DetectionMethodScheme ;
    skos:prefLabel "regex detection" ;
    skos:definition "A detection method based on regular-expression matching." .

:NERDetection
    a :DetectionMethod, skos:Concept ;
    rdfs:label "NER detection" ;
    rdfs:comment "A detection method based on named-entity recognition." ;
    skos:inScheme :DetectionMethodScheme ;
    skos:prefLabel "NER detection" ;
    skos:definition "A detection method based on named-entity recognition." .

:SchemaNameDetection
    a :DetectionMethod, skos:Concept ;
    rdfs:label "schema name detection" ;
    rdfs:comment "A detection method based on schema names, column names, field names, predicate IRIs, or similar structural labels." ;
    skos:inScheme :DetectionMethodScheme ;
    skos:prefLabel "schema name detection" ;
    skos:definition "A detection method based on schema names, column names, field names, predicate IRIs, or similar structural labels." .

:SampleValueDetection
    a :DetectionMethod, skos:Concept ;
    rdfs:label "sample value detection" ;
    rdfs:comment "A detection method based on inspecting sampled values from a data element." ;
    skos:inScheme :DetectionMethodScheme ;
    skos:prefLabel "sample value detection" ;
    skos:definition "A detection method based on inspecting sampled values from a data element." .

:ManualReview
    a :DetectionMethod, skos:Concept ;
    rdfs:label "manual review" ;
    rdfs:comment "A detection method based on human review." ;
    skos:inScheme :DetectionMethodScheme ;
    skos:prefLabel "manual review" ;
    skos:definition "A detection method based on human review." .

:LineageInheritedDetection
    a :DetectionMethod, skos:Concept ;
    rdfs:label "lineage inherited detection" ;
    rdfs:comment "A detection method based on inheriting classification from an upstream element through lineage or mapping." ;
    skos:inScheme :DetectionMethodScheme ;
    skos:prefLabel "lineage inherited detection" ;
    skos:definition "A detection method based on inheriting classification from an upstream element through lineage or mapping." .
