Transformation XSLT (Conversion)
Récapitulatif
Utilise le logiciel XML .NET, version 3.5 pour transformer les métadonnées d'un élément ArcGIS ou tout fichier XML à l'aide d'une feuille de style XSLT 1.0 et enregistrer le résultat dans un fichier XML.
Les feuilles de style XSLT permettent d'apporter des modifications différentes aux métadonnées ArcGIS ou à un fichier XML. Plusieurs feuilles de style XSLT sont fournies avec ArcGIS for Desktop. Ces feuilles de style se trouvent dans le dossier <Emplacement d'installation d'ArcGIS>\Metadata\Stylesheets. Vous trouverez une description détaillée de ces feuilles de style dans les tables suivantes.
Les feuilles de style suivantes produisent des documents HTML qui permettent d'afficher des informations sur un élément dans l'onglet Description. Elles extraient le contenu des métadonnées d'un élément et y ajoutent des instructions de formatage HTML. Ces feuilles de style permettent d'importer de nombreux modèles XSLT d'autres fichiers du dossier ArcGIS_Imports qui effectuent une grande partie du travail. Si vous souhaitez créer des feuilles de style personnalisées à afficher, lisez la documentation qui accompagne le ArcGIS Metadata Toolkit pour en savoir plus sur ces feuilles de style.
ArcGIS.xsl | Affiche le contenu intégral des métadonnées d'un élément. Il est référencé par tous les styles de métadonnées, à l'exception du style Description de l'élément par défaut. |
ArcGIS_ItemDescription.xsl | N'affiche qu'une brève description de l'élément. Il est référencé par le style de métadonnées Description de l'élément par défaut. |
Les feuilles de style suivantes, disponibles dans le dossier <dossier d'installation d'ArcGIS>\Metadata\Stylesheets\gpTools, utilisent les métadonnées de l'élément, les traitent, puis enregistrent le document XML résultant dans un nouveau fichier XML. L'objectif de cette opération peut être de filtrer les métadonnées d'un élément avant de les utiliser en dehors d'ArcGIS. Vous pouvez également modifier les métadonnées de l'élément. Dans ce cas, vous pouvez réenregistrer le fichier XML en tant que métadonnées dans l'élément d'origine à l'aide de l'outil Importateur de métadonnées. Vous pouvez créer un modèle ou un script qui exécute d'abord cet outil avec une feuille de style permettant de mettre à jour le contenu de métadonnées, puis enregistre immédiatement les modifications dans l'élément. Les feuilles de style suivantes sont fournies avec ArcGIS for Desktop et permettent l'exécution de tâches bien définies sur des métadonnées.
add unique identifier.xslt | Ajoute ou modifie l'identifiant unique stocké dans les métadonnées de l'élément. L'identifiant modifié par cette feuille de style est stocké dans l'élément de métadonnées Esri PublishedDocID et permet d'identifier le document dans un catalogue de métadonnées, tel qu'un service de métadonnées ArcIMS ou un géoportail. |
exact copy of.xslt | Crée une copie exacte des métadonnées de l'élément sous la forme d'un fichier XML. Par exemple, vous pouvez utiliser cette feuille de style pour enregistrer une copie des métadonnées de l'élément de géodatabase dans un fichier local pour pouvoir l'examiner. |
generate metadata template.xslt | Copie le contenu des métadonnées ArcGIS dans un nouveau fichier XML qui peut être importé vers d'autres éléments sous la forme d'un modèle de métadonnées. Le contenu des métadonnées synchronisées est exclus du modèle et les éléments vides sont supprimés. |
remove empty elements.xslt | Supprime les éléments XML vides. Lorsque toutes les autres feuilles de style ont été utilisées pour supprimer le contenu de métadonnées indésirable, les éléments XML vides sont conservés. Les éléments XML vides peuvent provoquer des problèmes si vous essayez plus tard de valider les métadonnées d'un élément. Par exemple, si un élément est facultatif, mais vide, vous recevrez souvent un message d'erreur indiquant que l'élément n'a pas de valeur, alors que les métadonnées seraient valides si l'élément vide était supprimé. |
remove entries from FGDC lineage.xslt | Supprime les étapes du processus ajoutées à la lignée de format FGDC par ArcGIS Desktop 9.3.1. Les étapes du processus ont été ajoutées à la lignée de format FGDC lorsque les métadonnées ont été importées dans un élément qui a été copié à un autre endroit. Ces informations ne sont pas ajoutées à la lignée d'un élément à l'aide de la version actuelle d'ArcGIS. Elles ne sont pas mises à niveau au format de métadonnées ArcGIS avec le reste de la lignée de l'élément. |
remove FGDC required hints.xslt | Supprime les éléments de métadonnées au format FGDC qui contiennent le texte REQUIRED. Ces chaînes de texte sont ajoutées par ArcGIS Desktop 9.3.1 lorsque les métadonnées au format FGDC sont créées pour identifier les éléments de métadonnées qui sont nécessaires pour créer des métadonnées FGDC CSDGM valides. Toutefois, ces chaînes peuvent causer des problèmes si vous essayez plus tard de valider les métadonnées d'un élément. En présence du texte par défaut, l'élément est considéré comme valide car il contient du texte, même si le texte ne communique aucune information sur l'élément. Les chaînes de texte par défaut ne sont pas ajoutées par la version actuelle d'ArcGIS et ces chaînes ne sont pas mises à niveau au format de métadonnées ArcGIS avec le reste du contenu de métadonnées de l'élément. |
remove geoprocessing history.xslt | Supprime l'historique de géotraitement d'un élément. Alors que tous les outils de géotraitement de métadonnées sont conçus pour conserver l'historique de géotraitement d'un élément, cet historique peut devenir si volumineux que la gestion des métadonnées de l'élément sous la forme d'un document XML devient difficile. Dans ces cas, il est parfois nécessaire de supprimer l'historique de géotraitement d'un élément. |
remove local storage info.xslt | Supprime tous les noms de machines pouvant figurer dans les métadonnées de l'élément. Selon l'endroit où figure le nom de la machine, vous pouvez supprimer l'élément de métadonnées contenant les informations ou le nom de la machine d'un chemin UNC. Vous pouvez également mettre à jour la valeur de l'élément pour identifier l'emplacement comme étant exclu. |
remove pre94 metadata elements.xslt | Supprime les éléments XML au format ESRI-ISO et tous les éléments au format FGDC CSDGM des métadonnées d'un élément non incluses dans le format de métadonnées ArcGIS. |
remove synchronized elements.xslt | Supprime les informations ajoutées aux métadonnées d'un élément par le processus de synchronisation de métadonnées ArcGIS. |
remove thumbnail.xslt | Supprime la miniature d'un élément. Alors que tous les outils de géotraitement de métadonnées sont conçus pour conserver la miniature d'un élément, dans certains cas, vous souhaiterez la supprimer. Vous pouvez supprimer la miniature d'un élément lorsque vous modifiez ses métadonnées dans l'onglet Description. Avec ce script, vous pouvez exécuter un processus de traitement par lot pour supprimer les miniatures de nombreux éléments. |
remove unique identifiers.xslt | Supprime tous les identifiants uniques des métadonnées d'un élément, y compris tous les identifiants ayant pu être ajoutés par ArcGIS et ceux obtenus via un éditeur de métadonnées. Ne copiez jamais des identifiants dans un autre élément. |
_MPXML2.xsl | Extrait les éléments XML au format FGDC CSDGM des éventuelles métadonnées de l'élément et les classe correctement. Les informations extraites par cette feuille de style représentent le contenu qui apparaît sous l'en-tête Métadonnées FGDC (en lecture seule) de l'onglet Description. |
Certaines feuilles de style fournies avec ArcGIS for Desktop sont utilisées par les outils de géotraitement de métadonnées pour exécuter certaines parties des processus d'importation, d'exportation et de mise à niveau.
- _MPXML2.xsl
- merge imported metadata with existing.xslt
- merge upgraded FGDC with existing.xslt
- prep metadata for export.xslt
- remove empty elements.xslt
- remove FGDC required hints.xslt
- remove synchronized elements.xslt
- remove unique identifiers.xslt
- upgrade ESRI-ISO to ArcGIS94.xslt
Vous pouvez créer vos propres feuilles de style XSLT pour effectuer des tâches en vous inspirant des feuilles de style fournies à titre d'exemple. Vous pourriez ainsi écrire une feuille de style pour :
- Mettre à jour les adresses et numéros de téléphone. Créez un modèle qui exécute ce processus et qui utilise ensuite l'outil Copier les métadonnées pour enregistrer les métadonnées mises à jour dans l'élément ArcGIS d'origine.
- Supprimer les informations que vous ne voulez pas rendre publiques avant d'exporter ou de publier les métadonnées. Créez un modèle qui exécute ce processus avant d'exécuter les outils Exporter des métadonnées ou Editeur de métadonnées.
- Exporter des informations vers un fichier HTML en vue de les intégrer à un site Web. Créez un script qui exécute ce processus régulièrement.
Les feuilles de style XSLT qui modifient les métadonnées ArcGIS ne doivent pas supprimer les informations contenues dans les éléments de métadonnées de type Esri et Binaire, sauf si le XML en sortie est utilisé en dehors d'ArcGIS.
Utilisation
-
Le fichier en sortie généré par une feuille de style XSLT peut être au format XML, HTML ou texte, par exemple. Le nom de fichier en sortie par défaut qui est fourni par cet outil a l'extension .xml. Si la feuille de style XSLT que vous utilisez ne produit pas de fichier XML vous devez fournir un nom de fichier avec une extension de fichier plus adaptée.
Cet outil ne peut pas traiter les métadonnées d'un élément ArcGIS ou un fichier XML de métadonnées autonomes à l'aide des feuilles de style XSL fournies avec ArcGIS Desktop 9.3.1 et les versions antérieures car ces versions n'utilisent pas la technologie XSLT 1.0. Elles utilisent une technologie plus ancienne qui n'est pas prise en charge par .NET Framework, version 3.5. Vous ne pouvez pas plus utiliser les feuilles de style XSL avec l'éditeur de métadonnées ArcGIS.
-
Vous pouvez utiliser le paramètre XSLT pour transmettre une chaîne ou un nom de fichier XML à une feuille de style XSLT qui peut alors l'utiliser pour modifier les métadonnées d'un élément. Par exemple, une feuille de style XSLT peut exploiter un numéro de téléphone transmis sous la forme d'une chaîne et mettre à jour tous les numéros de téléphone dans les métadonnées. Si un fichier XML est transmis avec ce paramètre, une feuille de style XSLT peut fusionner son contenu avec les métadonnées source.
Reportez-vous au fichier add unique identifier.xslt fourni avec ArcGIS pour savoir comment transmettre une valeur et au fichier merge upgraded FGDC with existing.xslt pour savoir comment fusionner les informations d'un fichier XML séparé avec les métadonnées d'un élément ArcGIS.
Si vous voulez créer une feuille de style XSLT personnalisée pour afficher ou exporter des métadonnées ou des fichiers XML dans ArcGIS, reportez-vous à la documentation Microsoft sur le .NET Framework version 3.5 pour obtenir la liste exhaustive des fonctions et des éléments XSLT et XPath et de leur syntaxe pris en charge par ce framework. Outre certaines fonctions XSLT standard, certaines fonctions .NET sont également disponibles.
Si vous voulez utiliser votre feuille de style personnalisée dans ArcGIS et en dehors d'ArcGIS tout à la fois, utilisez exclusivement les éléments, les fonctions et la syntaxe de XSLT 1.0 et de Xpath 1.0. Il est probable que les applications non Microsoft ne prennent pas en charge les fonctions XSLT et XPath .NET.
Les feuilles de style XSLT utilisées exclusivement avec cet outil de géotraitement et l'éditeur de métadonnées ArcGIS peuvent utiliser des fonctions XSLT personnalisées fournies avec ArcGIS pour améliorer la gestion et l'affichage des métadonnées. Pour utiliser ces fonctions, la feuille de style XSLT doit référencer l'URI de l'espace de noms de la fonction XSLT d'ArcGIS http://www.esri.com/metadata/. Par exemple, <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:esri="http://www.esri.com/metadata/">.
Les fonctions XSLT ArcGIS doivent être préfacées par le préfixe affecté à l'espace de noms de la fonction XSLT d'ArcGIS. Si vous avez attribué le préfixe esri à l'espace de noms de la fonction XSLT d'ArcGIS comme dans l'exemple cité plus haut, la fonction GuidGen () s'utilise de la manière suivante : <xsl:value-of select="esri:GuidGen()" />.
- GuidGen() : renvoie une nouvelle valeur pour l'identifiant GUID (Global unique identifiant) n'incluant ni parenthèses, ni accolades, ({ et }). Par exemple, un GUID peut être inclus dans les métadonnées afin d'identifier uniquement le document de métadonnées ou la ressource qu'il décrit. Reportez-vous au fichier add unique identifier.xslt fourni avec ArcGIS à titre d'exemple.
- decodenodeset () : si un élément XML contient des séquences d'échappement XHTML ou XML, cette fonction renvoie un ensemble de nœud qui peut être utilisé en combinaison avec la fonction msxsl:node-set pour traiter les éléments individuels ayant fait l'objet d'un échappement. Reportez-vous aux fichiers ESRIISO2.xslt et ItemDescription.xslt fournis avec ArcGIS à titre d'exemple. Par exemple, les propriétés de référence spatiale d'un élément sont automatiquement stockées dans les métadonnées d'un élément sous la forme de données XML désactivées. Le contenu abstrait et de limites d'utilisation pouvant être marqué dans l'éditeur de métadonnées en vue d'une publication sur ArcGIS Online est stocké en tant que contenu XHTML désactivé.
- splitcoords() - Accepte deux coordonnées x,y séparées par des virgules et les convertit en une liste d'éléments séparés par des espaces. Reportez-vous au fichier upgrade ESRI-ISO to ArcGIS94.xslt fourni avec ArcGIS à titre d'exemple.
- strtoupper () : modifie la chaîne de texte en entrée afin de n'utiliser que des majuscules. Reportez-vous au fichier add unique identifier.xslt fourni avec ArcGIS à titre d'exemple.
- striphtml () - Si un élément XML contient des séquences d'échappement XHTML ou XML, cette fonction permet de renvoyer le texte sans les balises HTML. Cela signifie que tout élément compris entre deux symboles inférieur à (<) ou supérieur à (>) est considéré comme une balise et supprimé. Reportez-vous aux fichiers ESRIISO2.xslt, ItemDescription.xslt et prep metadata for export.xslt fournis avec ArcGIS à titre d'exemple. Par exemple, lorsque vous préparez l'exportation du contenu d'éléments abstraits et de limites d'utilisation vers un format de métadonnées standard, toute balise XHTML existante est supprimée du contenu de métadonnées.
- strtolower () : modifie la chaîne de texte en entrée afin de n'utiliser que des minuscules. Reportez-vous aux fichiers auxCountries.xslt, auxLanguages.xslt et auxUCUM.xslt fournis avec ArcGIS à titre d'exemple.
-
Le paramètre Métadonnées source est associé à un type de données complexe. Si vous utilisez cet outil dans un modèle, créez une variable pour le paramètre Métadonnées source dans ModelBuilder. Pour ce faire, cliquez avec le bouton droit sur l'outil et sélectionnez Générer une variable > Paramètre de départ > Métadonnées de source.
-
Si un élément ArcGIS contient des métadonnées créées dans ArcGIS Desktop 9.3.1 ou une version antérieure à l'aide de l'éditeur de métadonnées FGDC ou dans la version actuelle d'ArcGIS for Desktop à l'aide du complément de l'éditeur de métadonnées FGDC et que les métadonnées de l'élément ont été mises à niveau par rapport aux métadonnées ArcGIS, les métadonnées ArcGIS incluent toujours les éléments XML des métadonnées FGDC d'origine. Les métadonnées incluent également d'autres éléments des métadonnées ArcGIS.
Vous pouvez exporter les éléments des métadonnées FGDC d'origine à l'aide de cet outil avec le fichier _MPXML2.xsl fourni avec ArcGIS. Dans l'exemple cité plus haut, ce fichier permet uniquement d'exporter le contenu de métadonnées au format FGDC d'origine de l'élément, à savoir les informations qui s'affichent sous l'en-tête Métadonnées FGDC (en lecture seule) de l'onglet Description. Les éléments FGDC sont classés correctement dans le fichier XML en sortie.
Le fichier exporté peut être validé avec la structure XML FGDC ou le fichier DTD, ou à l'aide de l'utilitaire des métadonnées USGS appelé mp. L'outil USGS MP Metadata Translator effectue cette opération en interne avant de traiter le contenu de métadonnées au format FGDC de l'élément.
-
Les métadonnées publiées sur un site Web externe au format HTML sont indexées par les moteurs de recherche Internet tels que Google dans la mesure où le site Web peut en afficher correctement le contenu.
Syntaxe
Paramètre | Explication | Type de données |
source |
Elément dont les métadonnées seront converties ou fichier XML autonome à convertir. | Data Element; Layer |
xslt |
Fichier de feuille de style XSLT 1.0 conforme à la norme W3C qui définit la transformation à effectuer. Plusieurs feuilles de style sont fournies avec ArcGIS et disponibles dans le dossier <Dossier d'installation d'ArcGIS>\Metadata\Stylesheets. | File |
output |
Fichier à créer, contenant les métadonnées converties. Le type de fichier créé dépend de la méthode en sortie spécifiée dans la feuille de style XSLT. | File |
xsltparam (Facultatif) |
Fichier XML ou chaîne à transmettre à la feuille de style XSLT. Pour capturer ce paramètre dans la feuille de style XSLT, ajoutez <xsl:param name="gpparam" /> en haut de la feuille de style XSLT après l'élément xsl:output et avant le premier élément xsl:template. Reportez-vous au fichier add unique identifier.xslt pour obtenir un exemple. | File; String |
Exemple de code
Utilise la feuille de style XSLT ArcGIS.xsl fournie avec ArcGIS pour exporter des métadonnées vers un fichier HTML en vue d'une utilisation sur un site Web.
import arcpy
from arcpy import env
env.workspace = "C:/data"
#set local variables
dir = arcpy.GetInstallInfo("desktop")["InstallDir"]
xslt = dir + "Metadata/Stylesheets/ArcGIS.xsl"
arcpy.XSLTransform_conversion("vegetation", xslt, "vegetation.html", "#")