Message posté par : Brindavoine
----------------------------------------
Aloha
Je suis en train de migrer notre outil de création/export des zip pour le GPU,
initialement en batch + sql, vers un QgsProcessingAlgorithm.
Rien de très compliqué, on prend des données, on les exporte en fonction de l'idurba.
Grandement utile quand on a 143 communes sur son territoire et 200 DU à gérer.
J'ai bien lu le post ici
https://georezo.net/forum/viewtopic.php?id=93448 qui parle
des métadonnées.
J'ai commencé à rédiger la fonction de création du fichier de métadonnées, mais je
bute sur la question des espaces de nommage en XML.
-----------------
Code :
def oldmetadataInspire(idurba,chemin):
nom = f"fr-0000{idurba[0:5]}-{idurba[6:9]}{idurba[10:]}"
QgsMessageLog.logMessage(f"nom fichier metadonnées : {nom}",
'ExportGPU', level=Qgis.MessageLevel.Info)
#root = ET.Element("gmd:MD_Metadata")
# récupérer le modèle et renseigner les "champs" à renseigner
tree =
ET.parse("C:/Users/<user>/nvelle_arbo/projets/exp_gpu_qgis/modele_fr-0000xxxxx-pluDATAPPRO.xml")
root = tree.getroot()
ElementInclude.include(root)
#print(root.tag)
#for child in root:
# print(child.tag, child.attrib)
#print('t')
#for id in
root.findall('{http://www.isotc211.org/2005/gmd}fileIdentifier/{http://…ng'):
# pourquoi {http://www.isotc211.org/2005/gmd} ? pourquoi lors de l'écriture, on se
retrouve avec <ns0:fileIdentifier> et plus <gmd:fileIdentifier>
for id in
root.findall('{http://www.isotc211.org/2005/gmd}fileIdentifier')er'):
for child in id:
#print(child.tag, child.attrib, child.text)
child.text = f"{nom}"
for ds in
root.findall("{http://www.isotc211.org/2005/gmd}dateStamp/*")p/*"):
print(ds.tag, ds.attrib)
ds.text = date.today().isoformat()
#ET.SubElement(dateStamp,"gco:DateTime").text=date.today().isoformat()
for tit in
root.findall("/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title"):
print(tit.tag, tit.attrib)
for orga in root.findall('./contact/CI_ResponsibleParty/organisationName'):
print(orga.tag, orga.attrib)
tree.write(os.path.join(chemin,f"{nom}.xml"))
-----------------
Le fichier "modele_fr-0000xxxxx-pluDATAPPRO.xml", téléchargé sur le site du CNIG
sert de modèle. Je souhaite juste à l'aide de requête aller modifier les items qui
doivent l'être au moment de la géénration du zip.
Pourquoi lors de l'écriture, on se retrouve avec <ns0:fileIdentifier> et plus
<gmd:fileIdentifier> ?
Quelqu'un a-t-il une idée sur comment faire ? Une piste ?
D'avance, merci
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=364333#p364333
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net