@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<https://www.theworldavatar.com/kg/ontoexposure/> a owl:Ontology;
  <http://purl.org/dc/elements/1.1/date> "22 October 2026";
  rdfs:comment "Ontology used to calculate exposures to the environment";
  owl:versionInfo "1.3";
  <https://www.theworldavatar.com/kg/ontoexposure/gitCommitHash> "c0599beca8df55873a1ab061dee64e52c510c6a0" .

<http://purl.org/dc/elements/1.1/date> a owl:AnnotationProperty .

<https://www.theworldavatar.com/kg/ontoexposure/gitCommitHash> a owl:AnnotationProperty .

<https://www.theworldavatar.com/kg/ontoexposure/hasCalculationMethod> a owl:ObjectProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ExposureResult>;
  rdfs:range <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Calculation method used to derive exposure result";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasDatasetFilter> a owl:ObjectProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:range <https://www.theworldavatar.com/kg/ontoexposure/DatasetFilter>;
  rdfs:comment "Dataset filter to filter a table";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasExposureDataset> a owl:ObjectProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoderivation/Derivation>;
  rdfs:range <https://www.theworldavatar.com/kg/ontoexposure/ExposureDataset>;
  rdfs:comment "Links a derivation to a exposure dataset";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasSubject> a owl:ObjectProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoderivation/Derivation>;
  rdfs:range <https://www.theworldavatar.com/kg/ontoexposure/Subject>;
  rdfs:comment "Links a derivation to a exposure subject";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasAreaColumn> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/AreaWeightedDataset>;
  rdfs:range xsd:string;
  rdfs:comment "Name of the column holding area values";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasColumnName> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ColumnBasedCalculation>;
  rdfs:range xsd:string;
  rdfs:comment "Column to extract value from";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasDistance> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:range xsd:decimal;
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasFilterColumn> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/DatasetFilter>;
  rdfs:range xsd:string;
  rdfs:comment "Name of the column to filter";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasFilterValue> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/DatasetFilter>;
  rdfs:range rdfs:Literal;
  rdfs:comment "Value to filter";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasGeometryColumn> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ExposureDataset>;
  rdfs:range xsd:string;
  rdfs:comment "Name of the geometry column of the dataset";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasIriColumn> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ExposureDataset>;
  rdfs:range xsd:string;
  rdfs:comment "Name of the column containing the IRI of the feature";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasLowerbound> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/TrajectoryCount>;
  rdfs:range xsd:long;
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasPercentile> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ExposureResult>;
  rdfs:range xsd:decimal;
  rdfs:comment "Percentile of the value";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasUnit> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ExposureResult>;
  rdfs:range xsd:string;
  rdfs:comment "Unit of exposure result";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasUpperbound> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/TrajectoryCount>;
  rdfs:range xsd:long;
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/hasValue> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/ExposureResult>;
  rdfs:range xsd:decimal;
  rdfs:comment "Numerical value of exposure result";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/tzid> a owl:DatatypeProperty;
  rdfs:domain <https://www.theworldavatar.com/kg/ontoexposure/TimeZone>;
  rdfs:range xsd:string;
  rdfs:comment "Time zone ID as string";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<http://www.opengis.net/ont/geosparql#Geometry> a owl:Class .

<http://www.w3.org/ns/dcat#Dataset> a owl:Class .

<https://www.theworldavatar.com/kg/ontoderivation/Derivation> a owl:Class .

<https://www.theworldavatar.com/kg/ontoexposure/Area> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Total intersected area between the buffer of a fixed vector element and the exposure elements (polygons)";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Area" .

<https://www.theworldavatar.com/kg/ontoexposure/AreaWeightedDataset> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/ExposureDataset>;
  rdfs:comment "A raster dataset with an area column specifying the area of a pixel";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/AreaWeightedSum> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "The sum of the product between the value and area associated with the intersected vector elements";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Area weighted sum" .

<https://www.theworldavatar.com/kg/ontoexposure/Areal> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/ColumnBasedCalculation>;
  rdfs:comment "Direct assignment of features with values attached";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Areal" .

<https://www.theworldavatar.com/kg/ontoexposure/Average> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/ColumnBasedCalculation>;
  rdfs:comment "Average of intersected features";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Average" .

<https://www.theworldavatar.com/kg/ontoexposure/Calculation> a owl:Class;
  rdfs:comment "Defines the calculation method used to derive an ExposureResult";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/ClosestDistance> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Calculates the closest distance between the subject and features in the exposure dataset";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Closest distance" .

<https://www.theworldavatar.com/kg/ontoexposure/ColumnBasedCalculation> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "A calculation that extracts values from a specified dataset column";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/Count> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Number of features within the buffer of a fixed vector element";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Count" .

<https://www.theworldavatar.com/kg/ontoexposure/DatasetFilter> a owl:Class;
  rdfs:comment "Instructs agent how to filter a dataset";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/ExposureDataset> a owl:Class;
  rdfs:subClassOf <http://www.w3.org/ns/dcat#Dataset>;
  rdfs:comment "Super class of exposure datasets";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/ExposureResult> a owl:Class;
  rdfs:comment "Result of a calculation";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/RasterArea> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Sum of pixel area enclosed by buffer";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Raster area" .

<https://www.theworldavatar.com/kg/ontoexposure/RasterAverage> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Average of pixel values enclosed by buffer";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Raster average" .

<https://www.theworldavatar.com/kg/ontoexposure/RasterSum> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Sum of pixel values enclosed by buffer";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Raster sum" .

<https://www.theworldavatar.com/kg/ontoexposure/Subject> a owl:Class;
  rdfs:subClassOf <http://www.opengis.net/ont/geosparql#Geometry>;
  rdfs:comment "Defines the subject of exposure for calculations";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/TimeZone> a owl:Class;
  rdfs:subClassOf <http://www.opengis.net/ont/geosparql#Geometry>;
  rdfs:comment "An instance with a representative WKT literal (polygon) and an associated time zone ID";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/TotalLength> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Sum of length of lines enclosed by buffer";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Total length" .

<https://www.theworldavatar.com/kg/ontoexposure/TrajectoryArea> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Total intersected area between the trajectory buffer and exposure elements (polygons)";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Area" .

<https://www.theworldavatar.com/kg/ontoexposure/TrajectoryCount> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/Calculation>;
  rdfs:comment "Number of features within the buffer of the trajectory";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Count" .

<https://www.theworldavatar.com/kg/ontoexposure/Trip> a owl:Class;
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/> .

<https://www.theworldavatar.com/kg/ontoexposure/WeightedAverage> a owl:Class;
  rdfs:subClassOf <https://www.theworldavatar.com/kg/ontoexposure/ColumnBasedCalculation>;
  rdfs:comment "Weighted average of intersected features";
  rdfs:isDefinedBy <https://www.theworldavatar.com/kg/ontoexposure/>;
  rdfs:label "Weighted average" .
