Metadata helpers
Outils de métadonnées
Metadata, ThesaurusKeyword et Meta_manipulation sont exportés par geOrchestra.meta_apis.
Exemple
Ajouter à un fichier ISO 19115-3 un mot-clé de thésaurus trouvé dans GeoNetwork, puis modifier son identifiant (extrait du bloc __main__ des sources) :
from geOrchestra.meta_apis import GN_API, Metadata, ThesaurusKeyword
gn = GN_API("http://localhost:8080", "testadmin", "testadmin")
thesaurus = gn.get_thesaurus_dict("local.theme.geographie-ofb")
keyword = gn.searchin_thesaurus_dict(keyword="Mayotte")[0]
meta = Metadata()
meta.load_from_file("./sample_meta2.xml")
t = ThesaurusKeyword()
t.load_from_json_get_thesaurus_dict(thesaurus)
t.load_from_json_search_thesaurus_dict(keyword)
meta.add_thesaurus_to_metadata(t)
meta.update_value_xpath(
xpath="/mdb:MD_Metadata/mdb:identificationInfo/mri:MD_DataIdentification"
"/mri:citation/cit:CI_Citation/cit:identifier/mcc:MD_Identifier/mcc:code"
"/gco:CharacterString",
value="testnewidentifier",
)
meta.save_into_file("./sample_meta3.xml")
Metadata
Metadata(xml_string="") analyse une chaîne XML de métadonnées ISO et détecte ses espaces de noms XML. En cas d’échec de l’analyse, meta est défini sur None.
| Méthode | Description | Remarques sur le résultat |
|---|---|---|
load_from_file(filename_path) |
Charge et analyse un fichier XML, puis détecte ses espaces de noms | Met à jour l’instance ; les erreurs d’analyse et de fichier sont levées. |
save_into_file(filename_path) |
Écrit le document XML courant dans un fichier | Ne renvoie aucune valeur. |
to_string() |
Sérialise le document courant en XML mis en forme | Renvoie une chaîne vide si aucun document n’est chargé. |
get_value_xpath(xpath, custom_namespaces=None) |
Évalue une expression XPath et sérialise le premier résultat | Renvoie du texte XML ; renvoie None si aucun résultat n’est trouvé. |
update_value_xpath(xpath, value="") |
Remplace le premier résultat XPath par un fragment XML ou du texte brut | Met à jour le document sur place ; affiche un message si le chemin n’est pas trouvé. |
add_thesaurus_to_metadata(thesaurus) |
Ajoute un élément ThesaurusKeyword à la section d’identification |
Met à jour le document sur place. |
apply_xslt_tranformation, search_and_replace et append_value_xpath sont des méthodes provisoires qui ne font actuellement rien.
ThesaurusKeyword
| Membre | Description |
|---|---|
ThesaurusKeyword(concept=None, keyword=None, thesaurus_shortlink=None, thesaurus_url=None, thesaurus_title=None, thesaurus_key=None) |
Crée un objet utilitaire de mots-clés avec des champs de concept et de thésaurus facultatifs. |
load_from_json_get_thesaurus_dict(data) |
Renseigne les propriétés du thésaurus à partir d’une réponse de thésaurus GeoNetwork. |
load_from_json_search_thesaurus_dict(data) |
Renseigne le concept, le mot-clé et la clé du thésaurus à partir d’un résultat de recherche dans un vocabulaire. |
to_xml() |
Crée un fragment XML de mots-clés descriptifs ISO 19115-3. |
tostring() |
Renvoie les valeurs de l’objet sous forme de chaîne séparée par des virgules. |
Meta_manipulation
| Méthode | Description | Remarques sur le résultat |
|---|---|---|
add_thesaurus(metadata, title, server, thesaurus_value, local_thesaurus_name) |
Ajoute à une chaîne de métadonnées du XML de thésaurus au format ISO 19139 hérité | Renvoie la chaîne de métadonnées modifiée. |
transform_metadata_from_geonode_to_gn(...) |
Transforme des métadonnées GeoNode dans le cadre d’une migration vers GeoNetwork | Dépend d’attributs d’instance non initialisés par le constructeur ; consultez l’implémentation avant utilisation. |
transform_feature_from_geonode_to_gn(...) |
Transforme les métadonnées d’une entité GeoNode dans le cadre d’une migration vers GeoNetwork | Dépend d’attributs d’instance non initialisés par le constructeur ; consultez l’implémentation avant utilisation. |