Skip to content

Improve sosa/ssn compliant measurements #3

Description

@ajuvercr

A lot of effort went into emitting sosa/ssn compliant measurements, but due to time crunch a few shortcuts were taken.

The biggest issues reside in the cidoc:P55_has_current_location triple, this should point to a term that describes the location, with an identifier and a prefLabel. Currently cidoc:P55_has_current_location points to a literal on which the fragmentation is built.

I think the terms used to describe locations should be dependent on a hostname where the LDES will be hosted, so there are no collisions possible from identifiers between deploys.

pipeline/src/mapper2.ts

Lines 194 to 201 in 9c0a679

if (sensor.group_ID) {
builder.triple(cidoc.P55_has_current_location, literal("group-" + sensor.group_ID));
if(this.groupNames[sensor.group_ID]) {
builder.triple(cidoc.groupName, literal(this.groupNames[sensor.group_ID]!));
} else {
console.error("Expected to find a name for group " + sensor.group_ID + " but found none")
}
}

Note that other things depend on this data as well, like the fragmentation strategy

<sensorLocationFragmentation> a tree:SubjectFragmentation;
tree:fragmentationPath ( cidoc:P55_has_current_location );
tree:fragmentationDefaultName "unlocated";
tree:fragmentationPathName ( ).

The same incorrect predicates are used when consuming the LDES, so these locations should be changed as well

https://github.com/MuseumMonitoring/graphs/blob/3e31a7759fb3b83d87314fb33ac1b09aada6a5bd/src/lib/configs/platform_shape.ttl#L36-L46

https://github.com/MuseumMonitoring/graphs/blob/3e31a7759fb3b83d87314fb33ac1b09aada6a5bd/src/lib/configs/platform_shape.ttl#L39-L39C

I think this stays the same as, now it points to a IRI instead of a term, but it is still the identifier

https://github.com/MuseumMonitoring/graphs/blob/3e31a7759fb3b83d87314fb33ac1b09aada6a5bd/src/lib/configs/paths.ttl#L9-L13

In the end, the produced entities should have three parts: a location term, a location id (like group-1) to fragment on and a prefLabel to show in the consuming graphs interface.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions