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

<http://purl.org/dc/terms/abstract>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/bibliographicCitation>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/contributor>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/creator>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/description>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/license>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/modified>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/source>
    a owl:AnnotationProperty .

<http://purl.org/dc/terms/title>
    a owl:AnnotationProperty .

<http://purl.org/poso/>
    <http://purl.org/dc/terms/abstract> "The positioning system ontology is a vocabulary for describing positioning systems and the techniques these systems use to determine a position. With POSO we aim to provide semantic meaning on how a positioning system is deployed and how results are calculated."@en ;
    <http://purl.org/dc/terms/bibliographicCitation> "Maxim Van de Wynckel and Beat Signer, POSO: A Generic Positioning System Ontology" ;
    <http://purl.org/dc/terms/contributor> "Beat Signer"@en ;
    <http://purl.org/dc/terms/creator> "Maxim Van de Wynckel"@en ;
    <http://purl.org/dc/terms/description> "This ontology provides the terminologies used for positioning systems." ;
    <http://purl.org/dc/terms/license> <http://purl.org/NET/rdflicense/MIT1.0> ;
    <http://purl.org/dc/terms/modified> "2023-01-26T00:00:00"^^xsd:dateTime ;
    <http://purl.org/dc/terms/title> "Positioning System Ontology"@en ;
    <http://purl.org/vocab/vann/preferredNamespacePrefix> "poso" ;
    <http://purl.org/vocab/vann/preferredNamespaceUri> "http://purl.org/poso/"^^xsd:anyURI ;
    <http://schema.org/image> "https://raw.githubusercontent.com/OpenHPS/POSO/main/docs/images/systems_and_procedures.svg" ;
    a owl:Ontology ;
    owl:imports <http://www.w3.org/ns/ssn/>, <http://www.w3.org/ns/ssn/systems/> ;
    owl:versionIRI <http://purl.org/poso/1.0/> .

:AbsolutePosition
    a owl:Class ;
    rdfs:comment "An absolute position describes the position of an entity based on a fixed point in space. Usually this space is the Earth and the position is expressed in latitude and longitude."@en ;
    rdfs:label "Absolute position"@en ;
    rdfs:subClassOf :Position ;
    owl:equivalentClass <http://www.opengis.net/ont/geosparql#Geometry> .

:Acceleration
    <http://qudt.org/schema/qudt/hasQuantityKind> <http://qudt.org/vocab/quantitykind/Acceleration> ;
    a owl:Class ;
    rdfs:comment "Acceleration is the (instantaneous) rate of change of velocity."@en ;
    rdfs:label "Acceleration"@en, "Versnelling"@nl ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/ObservableProperty>, <http://www.w3.org/ns/sosa/Result> .

:AngularAcceleration
    <http://qudt.org/schema/qudt/hasQuantityKind> <http://qudt.org/vocab/quantitykind/AngularAcceleration> ;
    a owl:Class ;
    rdfs:label "Angular acceleration"@en, "Draaiversnelling"@nl ;
    rdfs:subClassOf :Acceleration .

:AngularMovement
    a owl:Class ;
    rdfs:comment "Angular movement around a certain origin point."@en ;
    rdfs:label "Angular movement"@en, "Draaibeweging"@nl ;
    rdfs:subClassOf :Movement .

:AngularVelocity
    <http://qudt.org/schema/qudt/hasQuantityKind> <http://qudt.org/vocab/quantitykind/AngularVelocity> ;
    a owl:Class ;
    rdfs:comment "Angular velocity is the momentum around a point of origin."@en ;
    rdfs:label "Angular velocity"@en, "Draaisnelheid"@nl ;
    rdfs:subClassOf :Velocity .

:Angulation
    a owl:Class ;
    rdfs:comment "Angulation is a triangulation method to determine a position based on the relative angles to other objects."@en ;
    rdfs:label "Angulation"@en ;
    rdfs:subClassOf :Triangulation .

:AuditoryLandmark
    a owl:Class ;
    rdfs:comment "A spatial landmark that can be observed by sound."@en ;
    rdfs:label "Auditory landmark"@en ;
    rdfs:subClassOf :Landmark .

:AxisAngleOrientation
    a owl:Class ;
    rdfs:comment "The axis-angle orientation is an orientation representation where the x, y and z values are rotated with a certain angle."@en ;
    rdfs:label "Axis-angle orientation"@en ;
    rdfs:subClassOf :Orientation, [
        a owl:Restriction ;
        owl:minCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :angle
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :angle
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :xAxisValue
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :yAxisValue
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :zAxisValue
    ] .

:BluetoothBeacon
    a owl:Class ;
    rdfs:comment "A Bluetooth beacon is an RF landmark that advertises its transmission power and other optional information. Based on the signal strength receivers of this advertisement can determine the approximate distance."@en ;
    rdfs:label "Bluetooth beacon"@en ;
    rdfs:subClassOf :RFLandmark .

:CellIdentification
    a owl:Class ;
    rdfs:comment "Cell identification is a positioning procedure using the position of one landmark that is within the cell."@en ;
    rdfs:label "Cell identification"@en ;
    rdfs:subClassOf :PositioningTechnique ;
    <http://www.w3.org/2004/02/skos/core#altLabel> "Cell Of Origin (COO)"@en ;
    <http://www.w3.org/2004/02/skos/core#example> "An example of cell identification is using the position of a Bluetooth beacon whenever this beacon has a high signal strength."@en, "An example of cell identification is using the position of a QR-code when this code is scanned (and the user is presumably within a short distance)."@en .

:DeadReckoning
    a owl:Class ;
    rdfs:comment "Dead reckoning is the Procedure of calculating the current position of a moving FeatureOfInterest by using its previous position and Sensor Observation's indicating its heading and velocity."@en ;
    rdfs:label "Dead reckoning"@en ;
    rdfs:subClassOf :PositioningTechnique ;
    <http://www.w3.org/2004/02/skos/core#altLabel> "Deduced reckoning"@en .

:EulerOrientation
    a owl:Class ;
    rdfs:label "Euler orientation"@en ;
    rdfs:subClassOf :Orientation, [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :pitch
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :roll
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :yaw
    ] .

:Fingerprint
    a owl:Class ;
    rdfs:comment "A fingerprint is a scene analysis at a particular absolute position."@en ;
    rdfs:label "Fingerprint"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/FeatureOfInterest>, <http://www.w3.org/ns/sosa/Result> ;
    owl:equivalentClass [
        a owl:Restriction ;
        owl:onClass :AbsolutePosition ;
        owl:onProperty :hasPosition ;
        owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger
    ] .

:Fingerprinting
    a owl:Class ;
    rdfs:comment "Fingerprinting is a positioning Procedure where sensor data is collected at a specific position and orientation. During the offline-stage of a positioning system, the significant data features are extracted and stored for that position. In the online-stage, the closest match(es) of the features are determined to predict the position."@en ;
    rdfs:label "Fingerprinting"@en ;
    rdfs:subClassOf :PositioningTechnique .

:HighLevelFusion
    a owl:Class ;
    rdfs:comment "High level sensor fusion is about fusing both objects and their trajectories. We're not only relying on detections, but also on predictions and tracking."@en ;
    rdfs:isDefinedBy "https://www.thinkautonomous.ai/blog/?p=9-types-of-sensor-fusion-algorithms"^^xsd:anyURI ;
    rdfs:label "High level sensor fusion"@en ;
    rdfs:subClassOf :SensorFusion ;
    <http://www.w3.org/2004/02/skos/core#altLabel> "Decision level sensor fusion"@en .

:IndoorDeployment
    a owl:Class ;
    rdfs:comment "Describes the spatial deployment of a System in an indoor environment."@en ;
    rdfs:label "Indoor deployment"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Deployment> .

:IndoorPositioningSystem
    a owl:Class ;
    rdfs:comment "A positioning system that is meant to perform indoor positioning of a feature of interest."@en ;
    rdfs:label "Indoor positioning system"@en ;
    rdfs:subClassOf :PositioningSystem .

:InertialPositioningSystem
    a owl:Class ;
    rdfs:comment "An inertial positioning system is a positioning system employing accelerometers, gyroscopes, and computer as integral components to determine coordinates of points or objects relative to an initial known reference point"@en ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/240/"^^xsd:anyURI ;
    rdfs:label "Inertial positioning system"@en ;
    rdfs:subClassOf :PositioningSystem .

:IntegratedPositioningSystem
    a owl:Class ;
    rdfs:comment "An integrated positioning system is a positioning system that incorporates multiple positioning technologies."@en ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/250/"^^xsd:anyURI ;
    rdfs:label "Integrated positioning system"@en ;
    rdfs:subClassOf :PositioningSystem, [
        a owl:Restriction ;
        owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onClass :SensorFusion ;
        owl:onProperty <http://www.w3.org/ns/ssn/implements>
    ] ;
    <http://www.w3.org/2004/02/skos/core#altLabel> "Hybrid positioning system"@en .

:Landmark
    a owl:Class ;
    rdfs:comment "A landmark is a feature with a known position, that can be used to identify the position of an object that has a relative position with this feature."@en ;
    rdfs:label "Landmark"@en ;
    rdfs:subClassOf <http://www.opengis.net/ont/geosparql#SpatialObject>, <http://www.w3.org/ns/sosa/FeatureOfInterest>, <http://www.w3.org/ns/sosa/Result> .

:Lateration
    a owl:Class ;
    rdfs:isDefinedBy "https://www.sciencedirect.com/topics/engineering/lateration"^^xsd:anyURI ;
    rdfs:label "Lateration"@en ;
    rdfs:subClassOf :Triangulation .

:LinearAcceleration
    <http://qudt.org/schema/qudt/hasQuantityKind> <http://qudt.org/vocab/quantitykind/LinearAcceleration> ;
    a owl:Class ;
    rdfs:label "Linear acceleration"@en ;
    rdfs:subClassOf :Acceleration .

:LinearMovement
    a owl:Class ;
    rdfs:comment "Linear movement along a certain axis."@en ;
    rdfs:label "Lineaire beweging"@nl, "Linear movement"@en ;
    rdfs:subClassOf :Movement .

:LinearVelocity
    <http://qudt.org/schema/qudt/hasQuantityKind> <http://qudt.org/vocab/quantitykind/LinearVelocity> ;
    a owl:Class ;
    rdfs:comment "Linear velocity is the momentum along one ore more axis."@en ;
    rdfs:label "Lineaire snelheid"@nl, "Linear velocity"@en ;
    rdfs:subClassOf :Velocity .

:LocationBasedService
    a owl:Class ;
    rdfs:comment "A location based service (LBS) is a service that provides the location of a person or object. It provides this information without the required knowledge of the underlying technologies and algorithms."@en ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/278/"^^xsd:anyURI ;
    rdfs:label "Location based service"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/System> .

:LowLevelFusion
    a owl:Class ;
    rdfs:comment "Low Level Sensor Fusion is about fusing the raw data coming from multiple sensors. For example, we fuse point clouds coming from LiDARs and pixels coming from cameras."@en ;
    rdfs:isDefinedBy "https://www.thinkautonomous.ai/blog/?p=9-types-of-sensor-fusion-algorithms"^^xsd:anyURI ;
    rdfs:label "Low level sensor fusion"@en ;
    rdfs:subClassOf :SensorFusion .

:MagneticOdometry
    a owl:Class ;
    rdfs:comment "Magnetic field odometry is the procedure of detecting movement by analyizing how the magnetic field is changing from one Observation to another."@en ;
    rdfs:label "Magnetic odometry"@en ;
    rdfs:subClassOf :Odometry .

:MapOutput
    a owl:Class ;
    rdfs:label "Map output"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Output> .

:MidLevelFusion
    a owl:Class ;
    rdfs:comment "Mid-Level sensor fusion is about fusing the objects detected independently on sensor data."@en ;
    rdfs:isDefinedBy "https://www.thinkautonomous.ai/blog/?p=9-types-of-sensor-fusion-algorithms"^^xsd:anyURI ;
    rdfs:label "Mid level sensor fusion"@en ;
    rdfs:subClassOf :SensorFusion .

:Movement
    a owl:Class ;
    rdfs:comment "Movement stimulus triggering an update of a position."@en ;
    rdfs:label "Beweging"@nl, "Movement"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Stimulus> .

:Multilateration
    a owl:Class ;
    rdfs:comment "Multilateration is the procedure of determining a position using relative distances to other known positions."@en ;
    rdfs:label "Multilateration"@en ;
    rdfs:subClassOf :Lateration ;
    <http://www.w3.org/2004/02/skos/core#altLabel> "Hyperbolic positioning"@en, "Trilateration"@en .

:Odometry
    a owl:Class ;
    rdfs:comment "Odometry is the Procedure of calculating the current position of a moving FeatureOfInterest by using its previous position and Sensor Observation's indicating its heading and velocity."@en ;
    rdfs:label "Odometry"@en ;
    rdfs:subClassOf :PositioningTechnique .

:OpticalPositioningSystem
    a owl:Class ;
    rdfs:comment "An optical positioning system is a positioning system that determines the position of an object by means of the properties of light."@en ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/320/"^^xsd:anyURI ;
    rdfs:label "Optical positioning system"@en ;
    rdfs:subClassOf :PositioningSystem .

:Orientation
    a owl:Class ;
    rdfs:comment "De orientatie van een object in 2D of 3D."@nl, "The orientation of a feature of interest in 2D or 3D space."@en ;
    rdfs:label "Orientatie"@nl, "Orientation"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/ObservableProperty>, <http://www.w3.org/ns/sosa/Result> .

:OutdoorDeployment
    a owl:Class ;
    rdfs:comment "Describes the deployment of a System in an outdoor environment."@en ;
    rdfs:label "Outdoor deployment"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Deployment> .

:PDR
    a owl:Class ;
    rdfs:comment "Pedestrian dead reckoning (PDR) is a positioning technique where the object is assumed to be a pedestrian that is walking or running. Using this knowledge, the dead reckoning involves the detection of steps and the step length to more accurately predict the movement."@en ;
    rdfs:label "Pedestrian dead reckoning"@en ;
    rdfs:subClassOf :DeadReckoning .

:PolygonalAccuracy
    a owl:Class ;
    rdfs:label "Polygonal accuracy"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/systems/Accuracy> .

:Position
    a owl:Class ;
    rdfs:comment "A position indicates where an entity is located."@en ;
    rdfs:label "Positie"@nl, "Position"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/ObservableProperty>, <http://www.w3.org/ns/sosa/Result> .

:PositionOutput
    a owl:Class ;
    rdfs:label "Position output"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Output> .

:PositioningPlatform
    a owl:Class ;
    rdfs:comment "A positioning platform is a framework, architecture or platform used to develop and host a positioning system."@en ;
    rdfs:label "Positioning platform"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/Platform> .

:PositioningSystem
    a owl:Class ;
    rdfs:comment "A positioning system is a system of instrumental and computational components for determining position."@en ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/349/"^^xsd:anyURI ;
    rdfs:label "Positioning system"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/System>, [
        a owl:Restriction ;
        owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onClass <http://www.w3.org/ns/ssn/Deployment> ;
        owl:onProperty <http://www.w3.org/ns/ssn/hasDeployment>
    ] .

:PositioningTechnique
    a owl:Class ;
    rdfs:comment "A positioning technique is a procedure to sample sensor data to an output position."@en ;
    rdfs:label "Positioning technique"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/Procedure> .

:Proximity
    a owl:Class ;
    rdfs:comment "Stimulus whenever two Feature of Interests are within close proximity."@en ;
    rdfs:label "Proximity" ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Stimulus> ;
    <http://www.w3.org/2004/02/skos/core#example> "A Feature Of Interest can be within close proximity of another Feature Of Interest without movement whenever the other Feature moved wihin the proximity of the first Feature."@en .

:QuaternionOrientation
    a owl:Class ;
    rdfs:label "Quaternion orientation"@en ;
    rdfs:subClassOf :Orientation, [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :scalar
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :xAxisValue
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :yAxisValue
    ], [
        a owl:Restriction ;
        owl:maxCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onProperty :zAxisValue
    ] .

:RFLandmark
    a owl:Class ;
    rdfs:comment "A radio frequency landmark is a transmitting landmark that can be observed by its transmitting signals."@en ;
    rdfs:label "RF landmark"@en ;
    rdfs:subClassOf :Landmark ;
    <http://www.w3.org/2004/02/skos/core#example> "An RF landmark example is a Bluetooth beacon that sends out a signal. Receivers of this signal can use the known position of this landmark to determine their relative position."@en .

:RadioPropagation
    a owl:Class ;
    rdfs:comment "The radio propagation formulas cover the computation of the radio waves through a medium (e.g. air)."@en ;
    rdfs:isDefinedBy "https://en.wikipedia.org/wiki/Radio_propagation"^^xsd:anyURI ;
    rdfs:label "Radio propagation"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/Procedure> .

:RelativeAngle
    a owl:Class ;
    rdfs:comment "A relative angle is a quantitative angle relative to another feature of interest."@en ;
    rdfs:label "Relatieve hoek"@nl, "Relative angle"@en ;
    rdfs:subClassOf :RelativePosition ;
    <http://www.w3.org/2004/02/skos/core#example> "An example of relative angle is the Angle of Arrival."@en .

:RelativeDistance
    a owl:Class ;
    rdfs:comment "A relative distance is a quantitative distance relative to another feature of interest."@en ;
    rdfs:label "Relatieve afstand"@nl, "Relative distance"@en ;
    rdfs:subClassOf :RelativePosition .

:RelativePosition
    a owl:Class ;
    rdfs:comment "A relative position is a position of a feature of interest with respect to the positions of other objects that this position is relative to."@en, "Een relatieve positie is een positie van een punt, met respect tot de posities van andere objecten die relatief zijn."@nl ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/377/"^^xsd:anyURI ;
    rdfs:label "Relatieve positie"@nl, "Relative position"@en ;
    rdfs:subClassOf :Position, [
        a owl:Restriction ;
        owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onClass <http://www.w3.org/ns/sosa/FeatureOfInterest> ;
        owl:onProperty :isRelativeTo
    ] .

:RelativeSignalStrength
    a owl:Class ;
    rdfs:comment "A relative signal strength is a received signal strength transmitted by another (RF) feature of interest."@en ;
    rdfs:label "Relatieve signaalsterkte"@nl, "Relative signal strength"@en ;
    rdfs:subClassOf :RelativePosition .

:RelativeVelocity
    a owl:Class ;
    rdfs:comment "A relative velocity is a quantitative velocity relative to another feature of interest."@en ;
    rdfs:label "Relatieve snelheid"@nl, "Relative velocity"@en ;
    rdfs:subClassOf :RelativePosition .

:SLAM
    a owl:Class ;
    rdfs:comment "Simultaneous localization and mapping (SLAM) is the computational problem of constructing or updating a map of an unknown environment while simultaneously keeping track of an agent's location within it."@en ;
    rdfs:isDefinedBy "https://dbpedia.org/page/Simultaneous_localization_and_mapping"^^xsd:anyURI ;
    rdfs:label "Simultaneous localisation and mapping"@en ;
    rdfs:subClassOf :PositioningTechnique .

:SRS
    a owl:Class ;
    rdfs:comment "An identifiable and observable spatial reference system that represents the System's ability to operate its primary purpose in a specified reference system."@en ;
    rdfs:label "Spatial Reference System"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/systems/SystemProperty> .

:SatellitePositioningSystem
    a owl:Class ;
    rdfs:comment "In this context, satellite positioning implies the use of radio signals transmitted from \"active\" artificial objects orbiting the Earth and received by \"passive\" instruments on or near the Earth's surface to determine position, velocity, and/or attitude of an object."@en ;
    rdfs:isDefinedBy "https://isotc211.geolexica.org/concepts/392/"^^xsd:anyURI ;
    rdfs:label "Satellite positioning system"@en ;
    rdfs:subClassOf :PositioningSystem .

:SensorFusion
    a owl:Class ;
    rdfs:comment "Sensor fusion is a procedure where multiple sensor data is combined to obtain a more reliable or accurate result."@en ;
    rdfs:isDefinedBy "https://en.wikipedia.org/wiki/Sensor_fusion"^^xsd:anyURI ;
    rdfs:label "Sensor fusion"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/Procedure> .

:TrackedFeature
    a owl:Class ;
    rdfs:comment "A feature of interest that is being tracked by a positioning system. This is the feature for which a position is observed."@en ;
    rdfs:label "Tracked feature"@en ;
    rdfs:subClassOf <http://www.opengis.net/ont/geosparql#SpatialObject>, <http://www.w3.org/ns/sosa/FeatureOfInterest>, [
        a owl:Restriction ;
        owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
        owl:onClass :Position ;
        owl:onProperty :hasPosition
    ] ;
    <http://www.w3.org/2004/02/skos/core#example> "The phone of a person that is being tracked in an indoor positioning system is the tracked feature."@en .

:Triangulation
    a owl:Class ;
    rdfs:comment "Triangulation is the procedure of determining a position using relative angles to a feature of interest with a known position."@en ;
    rdfs:label "Triangulation"@en ;
    rdfs:subClassOf :PositioningTechnique .

:VSLAM
    a owl:Class ;
    rdfs:comment "Visual simultaneous localisation and mapping (VSLAM) is a positioning techniques that uses visual imagery to map an environment. Positioning works by detecting features of interest in image frames and comparing how these features move from one frame to another."@en ;
    rdfs:label "Visual simultaneous localisation and mapping"@en ;
    rdfs:subClassOf :SLAM .

:Velocity
    <http://qudt.org/schema/qudt/hasQuantityKind> <http://qudt.org/vocab/quantitykind/Velocity> ;
    a owl:Class ;
    rdfs:comment "Linear or angular velocity of a feature."@en ;
    rdfs:label "Velocity"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/sosa/ObservableProperty>, <http://www.w3.org/ns/sosa/Result> .

:VisualInput
    a owl:Class ;
    rdfs:label "Visual input"@en ;
    rdfs:subClassOf <http://www.w3.org/ns/ssn/Input> .

:VisualLandmark
    a owl:Class ;
    rdfs:comment "A visual landmark is a feature of interest that visually present in the space."@en ;
    rdfs:label "Visual landmark"@en ;
    rdfs:subClassOf :Landmark .

:VisualOdometry
    a owl:Class ;
    rdfs:comment "Visual odometry is the procedure of detecting movement by analyzing how visual features are moving from one Observation image frame to another."@en ;
    rdfs:label "Visual odometry"@en ;
    rdfs:subClassOf :Odometry .

:angle
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Quantitative anglue result value for axis-angle representation."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/Result> ;
    rdfs:label "angle"@en, "hoek"@nl ;
    rdfs:range rdfs:Class .

:hasAcceleration
    a owl:ObjectProperty ;
    rdfs:comment "Property that links a feature of interest to a unique acceleration property related to this feature."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/FeatureOfInterest> ;
    rdfs:label "has acceleration"@en, "heeft versnelling"@nl ;
    rdfs:range :Acceleration ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/hasProperty> ;
    owl:inverseOf :isAccelerationOf .

:hasAccuracy
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "The accuracy of an entity."@en ;
    rdfs:label "has accuracy"@en, "heeft accuraatheid"@nl ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/hasProperty> .

:hasCRS
    a owl:ObjectProperty ;
    rdfs:label "has coordinate reference system"@en, "heeft een coördinaten referentiesysteem"@nl ;
    rdfs:subPropertyOf :hasSRS .

:hasOrientation
    a owl:ObjectProperty ;
    rdfs:comment "Duid de orientatie aan van een object aan."@nl, "Indicates the orientation of a feature of interest."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/FeatureOfInterest> ;
    rdfs:label "has orientation"@en, "heeft orientatie"@nl ;
    rdfs:range :Orientation ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/hasProperty> ;
    owl:inverseOf :isOrientationOf .

:hasPosition
    a owl:ObjectProperty ;
    rdfs:comment "Duid de absolute of relatieve positie van een object aan."@nl, "Indicates the absolute or relative position of a feature of interest."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/FeatureOfInterest> ;
    rdfs:label "has position"@en, "heeft positie"@nl ;
    rdfs:range :Position ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/hasProperty> ;
    owl:inverseOf :isPositionOf .

:hasRelativePosition
    a owl:ObjectProperty ;
    rdfs:label "has relative position"@en, "heeft relatieve positie"@nl ;
    rdfs:range :RelativePosition ;
    rdfs:subPropertyOf :hasPosition ;
    owl:inverseOf :isRelativeTo .

:hasSRS
    <http://qudt.org/schema/qudt/example> <http://www.opengis.net/def/crs/OGC/1.3/CRS84> ;
    a owl:ObjectProperty ;
    rdfs:comment "Identifies an entity that has a spatial reference system in order to interpret the result."@en ;
    rdfs:domain owl:Thing ;
    rdfs:label "has spatial reference system"@en, "heeft een ruimtelijk referentiepunt"@nl .

:hasVelocity
    a owl:ObjectProperty ;
    rdfs:comment "Duid de snelheid van een object aan."@nl, "Indicates the velocity of a feature of interest."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/FeatureOfInterest> ;
    rdfs:label "has velocity"@en, "heeft snelheid"@nl ;
    rdfs:range :Velocity ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/hasProperty> ;
    owl:inverseOf :isVelocityOf .

:inDeployment
    <http://purl.org/vocab/vann/preferredNamespaceUri> "Identifies an absolute position within a deployment"@en ;
    a owl:ObjectProperty ;
    rdfs:domain :AbsolutePosition ;
    rdfs:label "in deployment"@en ;
    rdfs:range <http://www.w3.org/ns/ssn/Deployment> .

:isAccelerationOf
    a owl:ObjectProperty ;
    rdfs:label "is acceleration of"@en, "is versnelling van"@nl ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/isPropertyOf> .

:isOrientationOf
    a owl:ObjectProperty ;
    rdfs:label "is orientatie van"@nl, "is orientation of"@en ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/isPropertyOf> .

:isPositionOf
    a owl:ObjectProperty ;
    rdfs:label "is positie van"@nl, "is position of"@en ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/isPropertyOf> .

:isRelativeTo
    a owl:ObjectProperty ;
    rdfs:comment "Indicates a relative position to be relative to another feature of interest."@en ;
    rdfs:domain :RelativePosition ;
    rdfs:label "is relatief met"@nl, "is relative to"@en ;
    rdfs:range <http://www.w3.org/ns/sosa/FeatureOfInterest> ;
    <http://www.w3.org/2004/02/skos/core#example> "A person can have a relative distance to another feature of interest. When a feature is moving (i.e. when the geometry changes based on time) the distance remains relative to the feature and not the geometry at a specific point in time."@en .

:isVelocityOf
    a owl:ObjectProperty ;
    rdfs:label "is de snelheid van"@nl, "is velocity of"@en ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/isPropertyOf> .

:madeBySystem
    a owl:ObjectProperty ;
    rdfs:comment "A relation to a re-usable system that computed the observation."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/Observation> ;
    rdfs:label "gemaakt door systeem"@nl, "made by system"@en ;
    rdfs:range <http://www.w3.org/ns/ssn/System> .

:observesType
    a owl:ObjectProperty ;
    rdfs:comment "The relation between a system and an observable property class to identify that a system observes a specific type of property."@en ;
    rdfs:domain <http://www.w3.org/ns/ssn/System> ;
    rdfs:label "observeert type"@nl, "observes type"@en ;
    rdfs:range rdfs:Class ;
    rdfs:subPropertyOf <http://www.w3.org/ns/ssn/forProperty> .

:pitch
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Pitch is the rotation around the x-axis with respect to the object the yaw applies to."@en ;
    rdfs:domain :EulerOrientation ;
    rdfs:label "pitch"@en ;
    rdfs:range rdfs:Class .

:roll
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Roll is the rotation around the y-axis with respect to the object the roll applies to."@en ;
    rdfs:domain :EulerOrientation ;
    rdfs:label "roll"@en ;
    rdfs:range rdfs:Class .

:scalar
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:domain <http://www.w3.org/ns/sosa/Result> ;
    rdfs:label "scalar"@en ;
    rdfs:range rdfs:Class ;
    <http://www.w3.org/2004/02/skos/core#altLabel> "w" .

:xAxisValue
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Quantitative result value along the X-axis of a spatial sensor or result."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/Result> ;
    rdfs:label "x-axis value"@en ;
    rdfs:range rdfs:Class .

:yAxisValue
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Quantitative result value along the Y-axis of a spatial sensor or result."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/Result> ;
    rdfs:label "y-axis value"@en ;
    rdfs:range rdfs:Class .

:yaw
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Yaw is the rotation around the z-axis with respect to the object the yaw applies to."@en ;
    rdfs:domain :EulerOrientation ;
    rdfs:label "yaw"@en ;
    rdfs:range rdfs:Class .

:zAxisValue
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "Quantitative result value along the Z-axis of a spatial sensor."@en ;
    rdfs:domain <http://www.w3.org/ns/sosa/Result> ;
    rdfs:label "z-axis value"@en ;
    rdfs:range rdfs:Class .

<http://purl.org/vocab/vann/preferredNamespacePrefix>
    a owl:AnnotationProperty .

<http://purl.org/vocab/vann/preferredNamespaceUri>
    a owl:AnnotationProperty .

<http://qudt.org/schema/qudt/example>
    a owl:AnnotationProperty .

<http://qudt.org/schema/qudt/hasQuantityKind>
    a owl:AnnotationProperty .

<http://schema.org/image>
    a owl:AnnotationProperty .

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

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

rdfs:Class
    a owl:Class .

<http://www.w3.org/2004/02/skos/core#altLabel>
    a owl:AnnotationProperty .

<http://www.w3.org/ns/sosa/FeatureOfInterest>
    a owl:Class .

<http://www.w3.org/ns/ssn/System>
    a owl:Class .

