Les fonctions d'extension XPath/XQuery relatives à l'image suivantes sont prises en charge dans la version actuelle de MapForce et peuvent être utilisées dans (i) des expressions XPath dans un contexte XSLT, ou dans (ii) des expressions XQuery dans un document XQuery.
Les fonctions d'extension Altova peuvent être utilisées dans les expressions XPath/XQuery. Elles fournissent des fonctions supplémentaires aux fonctions d'ores et déjà disponibles dans la librairie standard des fonctions XPath, XQuery et XSLT. Les fonctions d'extension Altova se trouvent dans l'espace de nom des fonctions d'extension Altova, http://www.altova.com/xslt-extensions, et sont indiquées dans cette section par le préfixe altova:, qui est présupposé être lié à cet espace de nom. Veuillez noter que, en ce qui concerne les versions futures de votre produit, la prise en charge d'une fonction peut être interrompue et le comportement de certaines fonctions peut changer. Veuillez consulter la documentation lors des publications à venir pour plus d'informations concernant la prise en charge des fonctions d'extension Altova de cette version.
Fonctions XPath (utilisées dans les expressions XPath dans XSLT) :
XP1XP2XP3.1
Fonctions XSLT (utilisées dans les expressions XPath dans XSLT) :
Xslt1XSLT2XSLT3
Fonctions XQuery (utilisées dans les expressions XQuery dans XQuery) :
altova:suggested-image-file-extension(Base64String as string) asstring?XP3.1XQ3.1
Prend le code Base64 d'un fichier d'image en tant que son argument et retourne l'extension de fichier de l'image comme enregistré dans le codage Base64 de l'image. La valeur retournée est une suggestion basée sur l'information du type d'image disponible dans le codage. Si cette information n'est pas disponible, une chaîne vide est retournée. Cette fonction est utile si vous souhaitez enregistrer une image Base64 en tant que fichier et que vous souhaitez extraire dynamiquement une extension de fichier appropriée.
Dans les exemples ci-dessus, les nœuds fournis en tant qu'arguments de la fonction sont assumés contenir une image codée Base64. Le premier exemple extrait jpg en tant que type et extension de fichier. Dans le second exemple, le codage Base64 soumis ne fournit pas une information de fichier d'extension utile.
altova:image-exif-data(Base64BinaryString as string) aselement?XP3.1XQ3.1
Prend une image codée Base64 en tant que son argument et retourne un élément appelé Exif qui contient les métadonnées Exif de l'image. Celles-ci sont créées en tant que paires attribute-value pairs de l'élément Exif. Les noms d'attribut sont les onglets de données Exif trouvés dans le codage Base64. La liste des onglets des spécifications Exif est indiquée ci-dessous. Si un onglet spécifique à un distributeur est présent dans les données Exif, cet onglet et sa valeur seront aussi retournés en tant que paire attribute-value. Outre les onglets de métadonnées Exif standard (voir la liste ci-dessous), des paires attribute-value spécifiques à Altova sont également générées. Ces attributs Exif Altova sont recensés ci-dessous.
•Pour accéder à n'importe quel attribut, utiliser la fonction comme suit : image-exif-data(//MyImages/Image20141130.01)/@GPSLatitude image-exif-data(//MyImages/Image20141130.01)/@Geolocation
•Pour accéder à tous les attributs, utiliser la fonction comme suit: image-exif-data(//MyImages/Image20141130.01)/@*
•Pour accéder au nom de tous les attributs, utiliser l'expression suivante : for\$i inimage-exif-data(//MyImages/Image20141130.01)/@* returnname(\$i) Cela est utile pour trouver les noms des attributs retournés par la fonction.
La machine Altova XPath/XQuery génère l'attribut Geolocation personnalisable depuis les onglets standard de métadonnées Exif. Geolocation est une concaténation de quatre onglets Exif : GPSLatitude, GPSLatitudeRef, GPSLongitude, GPSLongitudeRef, avec des unités ajoutées (voir table ci-dessous).
La machine Altova XPath/XQuery génère l'attribut personnalisé OrientationDegree à partir de l'onglet de métadonnées Exif Orientation.
OrientationDegree traduit l'onglet standard Exif Orientation à partir d'une valeur d'entier (1, 8, 3, ou 6) aux valeurs de degrés respectives de chacun (0, 90, 180, 270), tel que montré dans la figure ci-dessous. Veuillez noter qu'il n'y a pas de traductions de la valeur Orientation de 2, 4, 5, 7. (Ces orientations sont obtenus en basculant l'image 1 à travers son centre axial vertical pour obtenir l'image avec une valeur de 2, puis en pivotant cette image par sauts de 90° dans le sens des aiguilles d'une montre pour obtenir les valeurs de 7, 4, et 5, respectivement).