ResearchObject / ro-crate

Research Object Crate
https://w3id.org/ro/crate/
Apache License 2.0
79 stars 34 forks source link

Use Case: As a profile designer I want to use WKT for geo data to avoid ambiguity #266

Closed ptsefton closed 1 month ago

ptsefton commented 1 year ago

Assumption: should use schema:geo to point to an entity. But what should the entity look like?

Here's one way:

{ "@type": "Place", "name" : "Place 1", "geo": {"@id": "#point1"} },

{ "@id": "#point1", "@type": "PropertyValue", "propertyID": "http://www.opengis.net/ont/geosparql#wktLiteral", "value": "POINT(-76 -18)", }

ptsefton commented 1 year ago

Doing it like this will likely break our libraries which don't know how to deal with literals like this:


 "geosparql:asWKT": {
  "@type": "http://www.opengis.net/ont/geosparql#wktLiteral",
"@value": "POINT(-76 -18)"
 },
marc-portier commented 1 year ago

Just checked how we ended up using these inside the LOD publications of https://MarineRegions.org/

From there 2 possible tips:

  1. declare the @type of these property once in the @context, so not to repeat it on every instance
     "@context": { 
         "gsp": "http://www.opengis.net/ont/geosparql#"
         "gsp:asWKT": { 
              "@type": "gsp:wktLiteral"
  2. and then on the values you use it also include a <URI> to depict the chosen CSR (projection system) at the start of the WKT literal:
        "gsp:asWKT": "<http://www.opengis.net/def/crs/OGC/1.3/CRS84> POINT(-76 -18)"

you can check this online from the source for e.g.

curl -L --url "http://marineregions.org/mrgid/2196" -H "Accept: application/ld+json"  | python -m json.tool

HTH

ptsefton commented 11 months ago

@stain can you add this to the @context - I will add something to the text about how to use it for ContextualEntities

stain commented 11 months ago

Ping @rapw3k on checking on Earth Sciences approach

stain commented 1 month ago

Implemented by #288 that overrides #287.