teamdigitale / dati-semantic-guida-ndc-docs

Guida al catalogo nazionale per la semantica dei dati https://schema.gov.it/
https://teamdigitale.github.io/dati-semantic-guida-ndc-docs/
Creative Commons Attribution 4.0 International
1 stars 4 forks source link

Definire un profilo per i CSV #1

Open ioggstream opened 2 years ago

ioggstream commented 2 years ago

Mi aspetto

Note

ioggstream commented 2 years ago

Possiamo stabilire che chi processa i CSV DEVE supportare questo profilo:

In termini di https://www.w3.org/TR/tabular-data-primer/#well-known-location il descrittore potrebbe essere

@context: "http://www.w3.org/ns/csvw"
dialect:
  delimiter: ","
  quoteChar: '"'
  commentPrefix: "#"
  header: true

@ronytw @giorgialodi @mfortini

ronytw commented 2 years ago

Mi sembra che la logica del descrittore sia quella di rendere flessibili i parametri di cui parli, poiché sono dichiarati nel descrittore e quindi chi consuma il file sa cosa trova nel file. Mi viene da dire che se dici che chi sottomette CSV DEVE seguire quelle linee guida, non hai bisogno del descrittore. Intendo bene?

ronytw commented 2 years ago

Secondo me un approccio potrebbe essere:

ioggstream commented 2 years ago
  • Queste sono le assunzioni che facciamo sul file (tutti i campi tra doppi apici, etc. etc.), tra cui l'idea che la prima colonna contenga l'identificatore in mancanza di altre informazioni

Ok. L'idea era anche quella di descriverli usando il formalismo w3c. Il goal è che anche chi "legge" i csv dovrà processarli di conseguenza.

  • Supportiamo i descrittori (che restano non obbligatori), per cui si possono ridefinire i parametri di cui sopra, entro certi limiti (e si specificano i limiti). Tra le altre cose, si può indicare qual è la chiave.

Per MVP d'accordo descrittori non obbligatori. In futuro ci servirà un modo per mappare i campi su jsonld. Per le codelist è facile. Per tassonomie, pur avendo l'identificativo, non saprei come fare... va letto bene il doc del w3c.

ioggstream commented 2 years ago

Dopo una chiacchierata con uno degli editor del profilo CSVW l'idea più semplice è quella di usare frictionless data per la validazione sintattica, ed usare REST API Linked Data keywords per aggiungere informazioni semantiche.

cc: @mfortini @giorgialodi