opengeospatial / ogcapi-records

An open standard for the discovery of geospatial resources on the Web.
https://ogcapi.ogc.org/records
Other
59 stars 28 forks source link

ISO19115-3 mappings to OARec #152

Closed ByronCinNZ closed 1 year ago

ByronCinNZ commented 3 years ago

Candidate crosswalk attached. Needs discussion. iso19115OARec-Crosswalk.xlsx Note - This is a crosswalk for the latest version of ISO19115-3 based on ISO19115-1:2018. There will be some differences to 19139 metadata based on ISO19115:2004

ghobona commented 3 years ago

@ByronCinNZ Thanks for this! Very much appreciated.

ByronCinNZ commented 3 years ago

I did not complete the "links" mappings due to my lack of understanding. However I have a few mappings I think work. For link to self //mdb:MD_Metadata/mdb:metadataLinkage For link to alternate source (md standard may vary) - //mdb:MD_Metadata/mdb:alternativeMetadataReference For link to parent - //mdb:MD_Metadata/mdb:parentMetadata

ByronCinNZ commented 3 years ago

What else would belong in "links:"? mdb:metadataStandard? mdb:metadataProfile?

ByronCinNZ commented 3 years ago

Candidate new mapping from ISO19115-3 Spatial Resolution //mdb:MD_Metadata
 /mdb:identificationInfo
 /mri:MD_DataIdentification /mri:spatialResolution /mri:MD_Resolution (May be represented in a number of ways? Restricting it to numerical representation would aid search) Candidate geoJSON mapping - properties.resolution

pvretano commented 3 years ago

@ByronCinNZ I can't seem to read the .xlsx file. I'm using libreoffice. Can you save it as an .xls file instead?

ByronCinNZ commented 3 years ago

@pvretano Try this iso19115OARec-Crosswalk.xls

pvgenuchten commented 3 years ago

Great work Byron!

Some comments/questions:

pvgenuchten commented 3 years ago

Notice that https://github.com/geopython/pygeoapi/blob/master/tests/load_tinydb_records.py contains a mapping of iso19139:2007 to ogc-api-records

ByronCinNZ commented 3 years ago

@pvgenuchten Thanks for the feedback Paul. I will change type to metadataScope and replace my current mapping of theme with type For links I have included references for a link to the original location of the record (point of truth, canonical url) and link to alternative representations of this record (profile, language, format) //mdb:MD_Metadata/mdb:metadataLinkage and //mdb:MD_Metadata/mdb:alternativeMetadataReference I also include parentMetadata mapping in links. //mdb:MD_Metadata/mdb:parentMetadata Not sure how to best map "collection where this record is a part of" or "links to related records". What goes into links and what goes into associations?

ByronCinNZ commented 3 years ago

Updated mappings are attached here iso19115OARec-Crosswalk.xls

pvgenuchten commented 3 years ago

Suggestion could be to extend this a bit, add columns for iso19139 and DCAT, e.g.

OGC-API Records iso19139:2007 iso19115-3:2012 DCAT 2
recordId gmd:fileIdentifier mcc:MD_Identifier //dct:identifier
recordCreated - mdb:dateInfo[@dateType='creation']
recordUpdated gmd:dateStamp mdb:dateInfo[@dateType='LastUpdate'] dct:modified
type gmd:hierarchyLevel mdb:resourceScope dct:type
title gmd:title cit:title dct:title
description gmd:abstract cit:abstract dct:description
keywords gmd:keyword mri:keyword dcat:keyword
keywordsCodespace gmd:thesaurusName mri:thesaurusName skos:inScheme
language gmd:language mdb:defaultLocale dct:language
externalId gmd:identifier cit:identifier
created gmd:date[@dateType='creation'] cit:date[@dateType='creation'] dct:created
updated gmd:date[@dateType='modified'] cit:date[@dateType='lastUpdate'] dct:modified
publisher gmd:pointOfContact[@role='publisher'] mri:pointOfContact[@role=“publisher”] dct:publisher
themes gmd:topicCategory mri:topicCategory dcat:theme
formats gmd:format mrd:MD_Format dct:format
contactPoint gmd:pointOfContact[@role='pointOfContact'] mri:pointOfContact[@role=“pointOfContact”] dcat:contactPoint
license gmd:MD_LegalConstraints/gmd:otherConstraints mco:MD_LegalConstraints/gmd:otherConstraints dct:license
rights gmd:accessConstraints mco:accessConstraints dct:accessRights
extent gmd:extent mri:extent dct:spatial / dct:temporal
associations gmd:transferOptions mri:asssociatedResource dcat:accessURL

Sources: https://github.com/SEMICeu/iso-19139-to-dcat-ap/blob/master/documentation/Mappings.md

cholmes commented 3 years ago

Awesome work. One thing that would be really great to add is what fields are required. That'll help me a lot in figuring out what to make required in the 'dataset record' proposal, see https://github.com/opengeospatial/ogcapi-records/pull/130

Also do any of these have default values? Like for language or keywordsCodespace?

ByronCinNZ commented 3 years ago

Working on that and will include indication of manditory ISO fields in my pull request

ByronCinNZ commented 3 years ago

Another candidate new mapping from ISO19115-3 Metadata Contact //mdb:MD_Metadata
 /mdb:contact
 Candidate geoJSON mapping - recordContact Metadata contact is mandatory in ISO19115-3

pvretano commented 3 years ago

@ByronCinNZ what is the description ISO1911503 //mdb:MD_Metadata
 /mdb:contact
? Is it a contact responsible for the record itself ... as opposed to the resource that the record describes?

+1 @cholmes https://github.com/opengeospatial/ogcapi-code-sprint-2021-07/pull/23#issuecomment-885609782

ByronCinNZ commented 3 years ago

@pvretano Yes that is a contact for the record not the resource (which is captured separately)

pvretano commented 1 year ago

07-APR-2023: Looks like a duplicate of #174. Work can continue in the more recent issue.