Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Améliorer export RDF #81

Open
camillemonchicourt opened this issue Aug 13, 2020 · 1 comment
Open

Améliorer export RDF #81

camillemonchicourt opened this issue Aug 13, 2020 · 1 comment
Labels
enhancement New feature or request

Comments

@camillemonchicourt
Copy link
Member

Voir les propositions sur PnX-SI/GeoNature#996

@jmvanel
Copy link

jmvanel commented Aug 17, 2020

Modifications pour l'export Turtle (RDF)

cf PnX-SI/GeoNature#996 pour la discussion préliminaire.
cf https://github.com/jmvanel/rdf-convert/tree/master/geonature pour des propostion RDF / JSON-LD pour l'API .

On trouve ici toutes les modifications à apporter en un seul endroit.
Voici l'ensemble des blocs Turtle correspondant à une observation (concept qui n'existe pas vraiment en dsw). Les identifiants de noeuds anonymes sont gardés tels quels pour pouvoir comparer avec l'existant ( https://geonature.ecrins-parcnational.fr/api/exports/semantic_dsw ). Mais ces noeuds anonymes sont à remplacer par des URL (voir + bas).

_:N11e657add455454e982027abcc0de59b a dwc:Identification ;
    dsw:identifies _:N3d330897edec4e61a01f5a995d2ff892 ;
    dwciri:toTaxon  <http://taxref.mnhn.fr/lod/taxon/81563/12.0> ;
    dwc:identifiedBy _:SALOMEZ_Pierre .

_:SALOMEZ_Pierre a foaf:Person;
    foaf:name "SALOMEZ Pierre" .

_:N3d330897edec4e61a01f5a995d2ff892 a dwc:Organism ;
    dsw:hasIdentification _:N11e657add455454e982027abcc0de59b ;
    dsw:hasOccurrence _:N965e9ec8e8c6425c86a16e5ce2ef54d9 .
     
<http://taxref.mnhn.fr/lod/taxon/81563/12.0> a dwc:Taxon ;
    dwc:nameAccordingTo "Taxref V12" ;
    dwc:scientificName "Alnus alnobetula (Ehrh.) K.Koch, 1872" ;
    dwc:taxonID 81563 ;
    dwc:vernacularName "Aulne vert"@fr.

_:N965e9ec8e8c6425c86a16e5ce2ef54d9 a dwc:Occurrence ;
    dsw:atEvent _:N779ce21b199b4b1493192e80d40c1690 ;
    dsw:occurrenceOf _:N3d330897edec4e61a01f5a995d2ff892 ;
    dwc:occurrenceID "3725873e-2f86-4919-aeaf-1665ad090c4d" ;
    dwc:recordedBy _:Nc03ec3afad44495181fa2fd41abcbeb6 .

_:N779ce21b199b4b1493192e80d40c1690 a dwc:Event ;
    dsw:eventOf _:N965e9ec8e8c6425c86a16e5ce2ef54d9 ;
    dsw:locatedAt _:N01004db208b244e3bba79a69c9ea60cb ;
    dwc:eventDate "1982-07-12T00:00:00/1982-07-12T00:00:00" ;
    dwc:eventID "fb605374-87eb-438c-858b-75b04f108db2" ;
    dwc:eventRemarks "old_id_synthese : 1691626" .

_:N01004db208b244e3bba79a69c9ea60cb a dcterms:Location ;
    dwc:decimalLatitude "5.99181557061859"^^xsd:float ;
    dwc:decimalLongitude "44.9156156314102"^^xsd:float ;
    dwc:footprintWKT "POLYGON((5.99069054413463 44.9149406379495,5.99069053755526 44.9153906219924,5.99069053914897 44.9158406166888,5.99069053256944 44.9162906008548,5.99069052598984 44.9167405850824,5.99114054205617 44.9167405881944,5.99159055052502 44.9167405896887,5.99204056687943 44.9167405945543,5.99249058323389 44.9167405975977,5.99294059199087 44.9167405990235,5.99294059571909 44.9162906143865,5.99294059944726 44.9158406298111,5.99294060317538 44.9153906452973,5.99294060632724 44.9149406500486,5.99294061765243 44.9144906654533,5.99249060414947 44.9144906646417,5.99204059064652 44.9144906620077,5.99159057714362 44.9144906575515,5.99114055604359 44.9144906514774,5.99069054311667 44.9144906541729,5.99069054413463 44.9149406379495))" ;
    dwc:geodeticDatum "EPSG:4326" ;
    dwc:maximumElevationInMeters 1660 ;
    dwc:minimumElevationInMeters 1660 .

Supprimer des blocs [] pour les remplacer par un unique URI sujet

  • dwc:Taxon
  • foaf:Person

Pour foaf:Person, j'ai fait ce travail dans le contexte de la conversion d'une Archive Darwin Core en Darwin Core RDF.
La problématique est la même; le code est en Scala, mais la syntaxe ressemble à Python.
https://github.com/jmvanel/dwca-rdf/blob/master/src/main/scala/jmvanel/DWCA2RDF.scala#L89

Paires propriété - valeur à supprimer

  • dwc:samplingProtocol "Inconnu"
  • dwc:vernacularName "aucun"@fr
  • dwc:identificationRemarks "None"
  • dwc:identificationVerificationStatus "Inconnu"
  • dwc:organismQuantityType "Ne Sait Pas" ;
  • dwc:occurrenceRemarks "None" ;
  • dwc:occurrenceQuantity -1 ;
  • dwc:occurrenceStatus "Présent" ; valeur naturellement par défaut
  • dwc:lifeStage "Inconnu" ;
  • dwc:establishmentMeans "Sauvage" ; valeur naturellement par défaut
  • dwc:coordinateUncertaintyInMeters "None" ;

### Divers
L'URI ns1:termsLocation ne correspond à aucun URL connu; ce doit être dcterms:Location .

Ces blocs ne semblent pas servir à grand'chose:

[] a ns1:termsEvent ;
    ns1:termslanguage "fr" ;
    dsw:basisOfRecord _:N185dfd2e34a94767bceca188b23bd658 ;
    dwc:datasetID "7dadc4d2-a234-4b19-be06-e31f95c2d697" ;
    dwc:datasetName "Fiche FL" ;
    dwc:ownerInstitutionCode "Parc National des Ecrins" .
 dwc:decimalLatitude "5.99181557061859"^^xsd:float ;

garder 6 chiffres seulement ; idem pour dwc:footprintWKT

dwc:eventDate "1982-07-12T00:00:00/1982-07-12T00:00:00" ;

n'est pas conforme à ISO 8601 ; mettre
dwc:eventDate "1982-07-12T00:00:00"^^xsd:dateTime

URL (URI) préconisés

cf https://github.com/jmvanel/rdf-convert/blob/master/geonature/occtax.cmw.ttl pour un travail en cours sur la RDF-isation de l'API .

Classe exemple d'URL
foaf:Person /api/person/1
dwc:Identification /api/occtax/releve/164
dwc:Organism
dwc:Event
cdterms:Location

A compléter

Pour valider le Turtle après modifications: installer rapper via package Linux, ou Apache Jena (distribution zip, Java).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants