XPath dans MobileTogether
Le langage XPath joue un rôle crucial dans la conception des solutions de MobileTogether. XPath est utilisé pour situer, accéder, manipuler, générer et enregistrer des données dans les différentes arborescences de données utilisées dans le design et pour définir le fonctionnement des différents composants de conception. Vous trouverez ci-dessous plusieurs exemples d'utilisation importants de XPath dans le cadre d'un projet MobileTogether. Cet aperçu a pour but de vous donner une impression générale de la flexibilité et de la puissance de XPath et de la manière dont XPath est utilisé dans les projets MobileTogether .
Pour plus d'informations concernant XPath, veuillez consulter les Recommandations XPath 3.1 du W3C, la dernière version disponible de la langue et la version prise en charge par MobileTogether Designer. Pour commencer avec une approche fondée sur l'apprentissage, veuillez consulter les points suivants :
•Une introduction en douceur à XPath d'Altova
Expressions localisatrices
Les expressions localisatrices de la langue XPath sont utilisées pour situer des nœuds dans des arborescences XML. Une expression de localisation contient généralement un chemin qui situe le nœud requis. En voici quelques exemples :
•/Company/Office: /Company/Office : situe tous les éléments enfants Office de l'élément Company, qui est le nœud de document de niveau supérieur. Nous savons que l'élément Company est le niveau supérieur parce qu'il se trouve directement sous le nœud racine qui est indiqué par la première barre oblique vers l'avant.
•/Company/Office[3]: Situe le troisième élément enfant Office de l'élément Company.
•/Company/Office[3]/@: Situe l'attribut location du troisième élément enfant Office de l'élément Company.
•//Office[@location='US']: situe tous les éléments Office détenant un attribut location ayant une valeur US.
La liste ci-dessus montre juste quelques-unes des expressions de localisation de base mais il existe de nombreux moyens de construire des expressions localisatrices.
Opérateurs
Les opérateurs vous permettent d'appliquer des filtres, de construire des conditions et de manipuler des sélections et des données. Voici par exemple, deux opérateurs :
•if (Selection='US') then //Office[@location='US'] else //Office[@location!='US']: Cet opérateur if sélectionne des bureaux US ou non-US selon le contenu de l'élément enfant Selection.
•for $i in //Office return $i[@location='US']: Cet opérateur for retourne tous les éléments Office qui possèdent un attribut location ayant une valeur de US..
Fonctions XPath
Les fonctions XPath permettent la manipulation, le calcul et la génération de données. Par exemple, une fonction peut prendre une ligne de texte en tant qu'entrée (l'argument de la fonction) et la convertit en minuscule ou en retire même une partie. Les fonctions XPath qui peuvent être utilisées dans les projets MobileTogether sont de types suivants :
La langue XPath contient une bibliothèque importante de fonctions intégrées qui vous permet d'extraire les données et les métadonnées liées à l'arborescence XML et même de générer des données. Par exemple :
•count(Office): Retourne le nombre d'éléments enfants de Office. •day-from-date("2015-04-26"): Retourne le nombre 26, qui est la partie Jour de l'argument de date de la fonction.
Les guides et les références d'utilisateur pour les fonctions intégrées sont largement disponibles sur Internet. Une liste complète des fonctions se trouve dans les Recommandations XPath 3.1 du W3C.
|
Voici un ensemble de fonctions d'extension XPath développées par Altova pour fournir aux développeurs une plus grande diversité des fonctions XPath. Actuellement, il existe environ 60 fonctions d'extension, allant des fonctions d'informations de géolocalisation à celles convertissant des entiers en strings hexadécimaux et inversement. Par exemple :
•format-geolocation(33.33, -22.22, 2) retourne le xs:string "33.33N 22.22W" •hex-string-to-integer('1') retourne 1
Les fonctions d'extension Altova peuvent être utilisées dans tous les designs MobileTogether. Pour plus d'informations concernant l'utilisation, veuillez consulter la section des Fonctions d'extension Altova dans le manuel d'utilisateur MobileTogether Designer.
|
Il s'agit des fonctions d'extension XPath développées par Altova pour des utilisations spécifiques dans les designs MobileTogether. Par exemple :
•mt-has-server-access(10) retourne true si l'accès au serveur est possible dans le temps en secondes spécifié en tant qu'argument de la fonction, sinon false. •mt-load-string('MyCourier') retourne le string localisé MyCourierqui est stocké dans l'ensemble des strings de la solution. La langue de la localisation est sélectionnée automatiquement conformément à la langue définie sur l'appareil mobile.
Les fonctions d'extension de MobileTogether peuvent être utilisées dans tous les projets MobileTogether. Pour plus d'informations concernant l'utilisation, veuillez consulter la section des Fonctions d'extension dans le manuel d'utilisateur MobileTogether Designer.
|
Il s'agit des fonctions d'extension XPath que vous, l'utilisateur, pouvez définir pour votre projet en cours de réalisation, conformément aux idées que vous avez en tête et pour lequel aucune fonction n'existe encore dans la bibliothèque de fonctions recensée ci-dessus. Vous souhaitez par exemple définir une fonction pour convertir les échelles de température Celsius et Fahrenheit. Les fonctions définies par l'utilisateur sont contenues dans un projet MobileTogether unique et sont utilisées dans ce projet spécifique. La description de la définition de ces fonctions personnalisées se trouve dans la section des Fonctions XPath/XQuery définies par l'utilisateur du manuel d'utilisateur MobileTogether Designer.
|
Variables globales
Les variables globales contiennent des informations concernant l'appareil mobile du client. Il existe par exemple une variable qui indique le type de l'appareil, une autre qui indique ses dimensions et une troisième qui indique l'orientation actuelle de l'appareil (paysage ou portrait), etc. Les valeurs de toutes ces variables sont obtenues à l'exécution depuis l'appareil client dans le cadre des procédures standard de communication mobiles. Les variables peuvent ensuite être utilisées dans les expressions XPath/XQuery. En résultat, un traitement dépendant des propriétés statiques inhérentes d'un appareil (comme la taille) ou ses propriétés dynamiques changeantes (comme l'orientation) peut être spécifié.
Les variables globales de MobileTogether sont prédéfinies et sont recensées dans la section des Variables globales avec la description de chaque variable et les valeurs possibles. L'exemple ci-dessous de la variable globale MT_iPad (valeurs possibles : true(), false()) montre comment les variables globales sont appelées dans les expressions XPath. Le symbole $ est utilisé pour indiquer que ce qui suit est le nom d'une variable globale, ce qui est la méthode habituelle d'indiquer des variables dans XPath.
if ( $MT_iPad=true() ) then "Apple" else ""