Comments (8)
@giorgialodi hai suggerimenti?
from ckan-it.
ciao @aborruso ti stavo scrivendo questo messaggio e poi ho visto che hai risolto. Bene :) L'endpoint dove trovare il vocabolario controllato delle licenze è questo: https://ontopia-virtuoso.pdnd.italia.it/sparql Da qui con una query sparql ti tiri fuori tutte gli URI delle licenze (che stanno a livello 3 - il primo livello ti dice se la licenza è open o meno o è sconosciuta, e il secondo ti dice il tipo di licenza). Chiaramente, la stessa query la puoi invocare machine-to-machine
from ckan-it.
Caro @jenkin, corretto.
Lo puoi fare anche in fase di creazione usando resource_create
. Con ad esempio
curl -H'Authorization: xxxxxx' \
'http://mysite.com/api/3/action/resource_create' \
--form package_id=test \
--form description="lorem ipsum" \
--form format=csv \
--form name="temperatura-aria" \
--form created="2019-06-27T09:27:03.840700" \
--form last_modified="2019-10-29T14:48:02.422579" \
--form upload=@01_sias_01-12.csv \
--form distribution_format="CSV" \
--form license_type="https://w3id.org/italia/controlled-vocabulary/licences/A21_CCBY40"
from ckan-it.
Ci sono tre elementi di attenzione sul tema licenze:
-
la licenza non è associata alla risorsa in CKAN perché il modello alla base di CKAN assegna la licenza al dataset non alla risorsa
-
per ovviare al punto 1 abbiamo affrontato il tema in questo modo. Nel nostro modello intermedio la licenza dovrebbe essere assegnata alla risorsa anche perché nella serializzazione RDF la licenza è attribuita correttamente alle risorse, a meno di un piccolo errore nella serializzazione documentato in un issue che ho aperto. C'è anche una licenza che viene associata al dataset e che sarebbe quella delle risorse se tutte le risorse hanno uguale licenza. Se le risorse hanno licenza diversa (e dovrebbe essere caso remoto) non potevamo concludere quale licenza fosse complessivamente assegnata al dataset e se non ricordo male dovrebbe essere stata messa unknown, seguendo il vocabolario controllato delle licenze.
-
nel campo extras di CKAN sono inserite tutte le indicazioni del profilo DCAT-AP_IT che non sono parte del modello base di CKAN. Detta in altri termini, è nel campo extras che ci sono coppie chiave-valore di tutti gli elementi di estensione di CKAN. Il campo extras è quindi diventato qualcosa di complesso :) Quindi per il discorso API forse conviene vedere come agire in questo elemento. Potrebbe essere utile prendere un dataset di esempio e da lì vedere il tutto e capire a valle come agire poi con le API di base di CKAN che noi non abbiamo toccato.
from ckan-it.
Grazie @giorgialodi e @jenkin .
Quindi mi confermate che con le API attuali, non è possibile creare una risorsa con i parametri obbligatori per il modello DCAT-AP_IT (come la licenza). Corretto??
Vi chiedo una risposta "booleana", per capire la strada da prendere. Perché devo gestire dei cataloghi non in modo visuale, ma via API.
Un caro saluto a entrambi
from ckan-it.
Solved!
Questo uno dei modi possibile:
curl -H 'Authorization: xxxx' 'http://mysite.com/api/3/action/resource_update' \
--form id=9c18efad-d854-40a4-9f3d-7eac6a0b3115 \
--form license_type="https://w3id.org/italia/controlled-vocabulary/licences/A21_CCBY40"
@giorgialodi qual è l'endpoint da cui posso estrarre l'elenco degli URI delle licenze? Non vorrei puntare a roba non aggiornata.
Te lo chiedo perché mi sto occupando di una migrazione, ho licenze associate a dataset, e voglio crearmi i corrispettivi da passare via API alle risorse.
Grazie
from ckan-it.
@giorgialodi ottimo, è sempre un piacere.
@jenkin forse una nota su questa cosa si potrebbe mettere nella documentazione, visto che questo CKAN non è "standard", e che su aspetti come questo (giustamente) non si trovano tracce nella documentazione ufficiale.
Grazie ancora a entrambi
from ckan-it.
@aborruso quindi se ho capito bene, prima crei la risorsa usando l'endpoint resource_create
, ricavi l'id e poi l'aggiorni aggiungendo la licenza usando resource_update
. Corretto?
from ckan-it.
Related Issues (20)
- Ricerca nei dataset non restituisce nulla HOT 8
- Inserimento file publiccode.yml HOT 2
- AUTHORS file
- LICENSE file
- Errori interni nella creazione di un DataSet HOT 5
- harvesting nuova versione alert HOT 2
- versione 2.6.7 ckan docker HOT 3
- Attivazione datastore HOT 3
- pull access denied for teamdigitale/daf-ckan-solr, repository does not exist or may require 'docker login' HOT 1
- Sync with pdnd-ckan
- valori nel Localized Tag Name HOT 1
- Add info for resource creation by API
- Errore su ckanext.multilang.model.package_multilang durante harvesting HOT 1
- root_path is not effective
- Problems with Datapusher and Datastore HOT 2
- formato distribuzione risorse errato HOT 3
- Problema con build ckan HOT 3
- Aggiornamento CKAN e passaggio a Python 3.x
- Progetto abbandonato: deprecarne l'uso e archiviare i repository
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ckan-it.