A Solid-based Architecture for
Decentralised Interoperable Location Data

Maxim Van de Wynckel and Beat Signer
Web & Information Systems Engineering Lab
Vrije Universiteit Brussel

Current Indoor Positioning Systems (IPS)

Problems With Current IPSs

  1. Users not in control of their data
  2. No interoperability between positioning systems and applications

Decentralised Interoperable Architecture

Decentralised Interoperable Architecture

Decentralised Interoperable Architecture

Vocabularies

Core vocabularies:

  • SOSA
  • SSN

Allignment vocabularies:

  • GeoSPARQL
  • QUDT
  • SSN-Systems

See paper for more details ...

Properties and Observations

Properties and Observations

http://ipin2022.solidweb.org/properties/orientation.ttl

turtle
<>
a sosa:ObservableProperty;
rdfs:comment "Orientation of John Doe"@en;
rdfs:label "Orientation"@en;
ssn:isPropertyOf profile:me.
:1651065740981
a sosa:Observation;
sosa:hasFeatureOfInterest profile:me;
sosa:hasResult [
a qudt:QuantityValue;
qudt:numericValue 108.11512756347656;
qudt:unit unit:DEG;
];
ssns:qualityOfObservation [
a qudt:QuantityValue;
qudt:numericValue 12;
qudt:unit unit:DEG;
];
sosa:observedProperty <>;
sosa:resultTime "2022-04-27T13:22:20.981Z"^^xsd:dateTime;
sosa:usedProcedure ipin:geolocationapi.

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

PoC Demonstrator

http://.../properties/position.ttl

turtle
:1660049553011
a sosa:Observation;
sosa:hasFeatureOfInterest profile:me;
sosa:hasResult
[
a geosparql:Geometry;
geosparql:asWKT
"POINT Z(4.3922073 50.8206522 143.29)"^^geosparql:wktLiteral;
geosparql:coordinateDimension 3;
geosparql:dimension 3;
geosparql:hasSpatialAccuracy
[
a qudt:QuantityValue;
qudt:numericValue 29.363000869750977;
qudt:unit unit:M
];
geosparql:spatialDimension 3
];
sosa:observedProperty <>;
sosa:resultTime "2022-08-09T12:52:33.011Z"^^xsd:dateTime;
sosa:usedProcedure ipin:geolocationapi.

PoC Demonstrator

http://.../properties/position.ttl

turtle
:1660049449839
a sosa:Observation;
sosa:hasFeatureOfInterest profile:me;
sosa:hasResult
[
a geosparql:Geometry;
ipin:inDeployment ipin:deployment_pl9_3_58;
geosparql:asWKT
"POINT Z(4.3922260 50.8204372 84.49)"^^geosparql:wktLiteral;
geosparql:coordinateDimension 3;
geosparql:dimension 3;
geosparql:hasSpatialAccuracy
[
a qudt:QuantityValue;
qudt:numericValue 3.716614723104883;
qudt:unit unit:M
];
geosparql:spatialDimension 3
];
sosa:observedProperty <>;
sosa:resultTime "2022-08-09T12:50:49.839Z"^^xsd:dateTime;
sosa:usedProcedure ipin:qrscanner_checkin.

PoC Demonstrator

http://.../properties/position.ttl

turtle
:1660049553011
a sosa:Observation;
sosa:hasFeatureOfInterest profile:me;
sosa:hasResult
[
a geosparql:Geometry;
geosparql:asWKT
"POINT Z(4.3922073 50.8206522 143.29)"^^geosparql:wktLiteral;
geosparql:coordinateDimension 3;
geosparql:dimension 3;
geosparql:hasSpatialAccuracy
[
a qudt:QuantityValue;
qudt:numericValue 29.363000869750977;
qudt:unit unit:M
];
geosparql:spatialDimension 3
];
sosa:observedProperty <>;
sosa:resultTime "2022-08-09T12:52:33.011Z"^^xsd:dateTime;
sosa:usedProcedure ipin:geolocationapi.

PoC Demonstrator

sparql
SELECT ?posGeoJSON ?datetime ?accuracy {
?profile a sosa:FeatureOfInterest ;
ssn:hasProperty ?property .
?observation sosa:hasResult ?result ;
sosa:observedProperty ?property ;
sosa:resultTime ?datetime .
?result geosparql:hasSpatialAccuracy ?spatialAccuracy ;
geosparql:asWKT ?posWKT .
BIND(geof:asGeoJSON(?posWKT) AS ?posGeoJSON)
?spatialAccuracy qudt:numericValue ?value ;
qudt:unit ?unit .
OPTIONAL { ?unit qudt:conversionMultiplier ?multiplier }
OPTIONAL { ?unit qudt:conversionOffset ?offset }
BIND(COALESCE(?multiplier, 1) as ?multiplier) # Default 1
BIND(COALESCE(?offset, 0) as ?offset) # Default 0
BIND(((?value * ?multiplier) + ?offset) AS ?accuracy)
} ORDER BY DESC(?datetime) LIMIT 20

Conclusion and Future Work

  • Novel architecture for decentralising location data
    • User remains in control of their data
  • Interoperability between systems and applications
    • Handover of tracking between systems
    • Single navigation application
    • High-level decision fusion
  • Vocabulary extensible with additional semantics

A Solid-based Architecture for Decentralised Interoperable Location Data

Maxim Van de Wynckel and Beat Signer