SPW-DIG / metawal-core-geonetwork

Metawal - Catalogue pour l'information géographique de Wallonie
http://metawal.wallonie.be
GNU General Public License v2.0
3 stars 1 forks source link

Indexation des types de conditions d'accès et d'usage #598

Open vbombaerts opened 3 years ago

vbombaerts commented 3 years ago

Is your feature request related to a problem? Please describe. Les données dans Metawal sont disponibles sous des conditions d'accès et d'usage variées. De base, des conditions d'accès et des conditions d'usage "standards" ont été définies, mais chaque gestionnaire de données a la possibilité de les restreindre ou les ouvrir à travers des conditions particulières. Chaque condition particulière fait l'objet d'une licence CPA-1, CPA-2, ...CPU-A, CPU-B qui est renseignée dans la fiche de métadonnées à travers un texte libre qui contient le lien vers le texte de la licence. Je voudrais analyser les occurrences des différentes conditions d'accès et d'usage s'appliquant aux données et de la combinaison des deux.

Describe the solution you'd like Je souhaiterais que soient indexés les appellations des fichiers à partir du texte libre décrit dans les contraintes. Par exemple, dans un condition rédigée comme suit ACCÈS : Les conditions générales d'accès s’appliquent (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CGA.pdf) mais sont restreintes ou étendues par les conditions particulières de type D1 (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CPA-TypeD1.pdf) UTILISATION : Les conditions générales d'utilisation s'appliquent (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CGU.pdf) je voudrais récupérer les valeurs DataSPW-CGA, DataSPW-CPA-TypeD1 et DataSPW-CGU et pouvoir faire des visualisations, des statistiques et éventuellement des filtres sur chacune de ces valeurs et sur la combinaisons des valeurs, comme par exemple

fxprunayre commented 3 years ago

Dans KB, tu peux utiliser MD_LegalConstraintsOtherConstraintsObject.link: car on encode les valeurs sous forme d'Anchor

eg. image

On pourrait aussi ajouter des "scripted fields" dans Management > Index patterns > gn-records* > Create field pour avoir des champs plus rapide à utiliser.

Dans metawal, on peut aussi créer une facette de type filter eg.

"availableInServices": {
  "filters": {
    //"other_bucket_key": "others",
    // But does not support to click on it
    "filters": {
      "availableInViewService": {
        "query_string": {
          "query": "+linkProtocol:/OGC:WMS.*/"
        }
      },
      "availableInDownloadService": {
        "query_string": {
          "query": "+linkProtocol:/OGC:WFS.*/"
        }
      }
    }
  }
}

qui correspondrait aux différents cas ?

A voir si ça suffit ?

vbombaerts commented 3 years ago

J'avais regardé MD_LegalConstraintsOtherConstraints mais je n'avais pas trouvé l'objet qui contenait juste les liens. Je pense que ça devrait suffire. Je vais tester.

fxprunayre commented 3 years ago

Dans KB, tu peux aller dans l'outil dévelopement et tu peux faire une requête GET /gn-records/_doc/UUID Ca te permet de voir un document complet avec tous les champs.

vbombaerts commented 3 years ago

La commande est utile, mais je ne vois toujours pas le lien (.link)

"MD_LegalConstraintsOtherConstraintsObject" : [ { "default" : "ACCÈS : Les conditions générales d'accès s’appliquent (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CGA.pdf) mais sont restreintes ou étendues par les conditions particulières de type D1 (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CPA-TypeD1.pdf) UTILISATION : Les conditions générales d'utilisation s'appliquent https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CGU.pdf)", "langfre" : "ACCÈS : Les conditions générales d'accès s’appliquent (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CGA.pdf) mais sont restreintes ou étendues par les conditions particulières de type D1 (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CPA-TypeD1.pdf) UTILISATION : Les conditions générales d'utilisation s'appliquent (https://geoportail.wallonie.be/files/documents/ConditionsSPW/DataSPW-CGU.pdf)" }, { "default" : "Source à mentionner : Association temporaire Alexandre Maugnard - Champs Libres Coopérative - SPW", "langfre" : "Source à mentionner : Association temporaire Alexandre Maugnard - Champs Libres Coopérative - SPW" } ],

Les objets de type link existent automatiquement dès qu'un lien est détecté ??

vbombaerts commented 3 years ago

Les objets de type link existent automatiquement dès qu'un lien est détecté ??

En fait on dirait que ce qui sort dans le champ link est l'ancre associée aux conditions. Et on constate énormément d'ancres manquantes. Donc ça ne fait pas encore ce que je veux. Il faudra peut-être envisager un scripted field pour parser le contenu du champ de texte libre

fxprunayre commented 3 years ago

Et on constate énormément d'ancres manquantes.

Devrait pas, on avait fait une mise à jour avec https://github.com/SPW-DIG/metawal-core-geonetwork/blob/metawal-4.0.x/schemas/iso19115-3.2018/src/main/plugin/iso19115-3.2018/process/mw-constraints-split.xsl je pense - peut être pas sur tout le catalogue ?...

vbombaerts commented 3 years ago

http://metawal.wallonie.be/geonetwork/dashboards/goto/abb177d28a1927e74b94788321dda10d

image

fxprunayre commented 3 years ago

En fait on dirait que ce qui sort dans le champ link est l'ancre associée aux conditions. Et on constate énormément d'ancres manquantes. Donc ça ne fait pas encore ce que je veux. Il faudra peut-être envisager un scripted field pour parser le contenu du champ de texte libre

On ferait mieux de rejouer le process pour avoir systématiquement des ancres non ? et vérifier que via l'éditeur y'a pas de scénario qui permettrait de ne pas en utiliser.

fxprunayre commented 3 years ago

A tester:

fxprunayre commented 3 years ago

Process: Mettre à jour pour ne pas s'appliquer qu'aux fiches INSPIRE dans le cas où on veut l'utiliser sur les autres.

davinciagf commented 3 years ago

Requète


WITH ns AS (
select ARRAY[ARRAY['xlink', 'http://www.w3.org/1999/xlink'],
       ARRAY['mdb', 'http://standards.iso.org/iso/19115/-3/mdb/2.0'],
       ARRAY['cit', 'http://standards.iso.org/iso/19115/-3/cit/2.0'],
       ARRAY['mri', 'http://standards.iso.org/iso/19115/-3/mri/1.0'],
       ARRAY['mco', 'http://standards.iso.org/iso/19115/-3/mco/1.0'],
       ARRAY['xsi', 'http://www.w3.org/2001/XMLSchema-instance'],
       ARRAY['gco', 'http://standards.iso.org/iso/19115/-3/gco/1.0']] AS n
)

SELECT distinct(unnest(xpath('//mdb:identificationInfo/*/mri:citation/*/cit:title/*/text()',
 XMLPARSE(DOCUMENT data), n)))::text  AS title,
 unnest(xpath('count(//mri:keyword[gco:CharacterString = ''Reporting INSPIRE'']) > 0',
 XMLPARSE(DOCUMENT data), n))::text  AS isInspire, isTemplate,
 unnest(xpath('//mco:uselimitation/*/text()',
 XMLPARSE(DOCUMENT data), n))::text  AS uselimitation,
 unnest(xpath('//mco:otherConstraints/*/text()',
 XMLPARSE(DOCUMENT data), n))::text  AS otherConstraints,
 unnest(xpath('count(//mco:otherConstraints/*[contains(text(), ''DataSPW-CPA-TypeA1'')]) > 0',
 XMLPARSE(DOCUMENT data), n))::text  AS CPATypeA1,
 unnest(xpath('count(//mco:otherConstraints/*[contains(text(), ''DataSPW-CPA-TypeD1'')]) > 0',
 XMLPARSE(DOCUMENT data), n))::text  AS CPATypeD1,
 unnest(xpath('count(//mco:otherConstraints/*[contains(text(), ''DataSPW-CPU-TypeC'')]) > 0',
 XMLPARSE(DOCUMENT data), n))::text  AS CPUTypeC,
 unnest(xpath('count(//mco:otherConstraints/*[contains(text(), ''DataSPW-CPU-TypeA'')]) > 0',
 XMLPARSE(DOCUMENT data), n))::text  AS CPUTypeA,
 unnest(xpath('count(//mri:resourceConstraints)',
 XMLPARSE(DOCUMENT data), n))::text  AS nbRC
FROM metadata, ns
WHERE data LIKE '%%' AND isHarvested = 'n'
ORDER BY isInspire, title;
fxprunayre commented 3 years ago

Pour rappel, le processus fait les actions suivantes:

A voir si " No limitations to public access" s'applique aussi aux fiches non INSPIRE ? @vbombaerts

vbombaerts commented 3 years ago

Mazette ! On n'est pas sortis de l'auberge avec toute cette variété de conditions d'accès et d'utilisation)

Je propose de se laisser un peu de temps d'analyse et de réflexion avant de tout changer...

vbombaerts commented 3 years ago

A voir si " No limitations to public access" s'applique aussi aux fiches non INSPIRE ? @vbombaerts

Apparemment c'est utilisé. Mais je devrais voir au cas par cas si l'utilisation est pertinente ou pas.

vbombaerts commented 3 years ago

Pour historique voir #503

vbombaerts commented 2 years ago

En attente du décret open data, parce que ça va probablement changer radicalement la donne...