> Tech > XML : au delà  des frontières

XML : au delà  des frontières

Tech - Par iTPro.fr - Publié le 24 juin 2010
email

par Sharon L. Hoffman
Comment étendre les possibilités de description de fichiers des DDS aux environnements hétérogènes Les développeurs AS/400 se passionnent pour XML (Extensible Markup Language) parce que ce langage promet de régler deux problèmes pressants : échanger des informations entre applications disparates, et insérer des données complexes dans des pages Web. Comme l'AS/400 est avant tout un moteur de base de données, ces problèmes intéressent tout particulièrement les développeurs AS/400.

Certes, le problème de l'échange d'informations n'est pas nouveau. Mais il s'accentue dès lors qu'on partage de plus en plus de données avec ses clients et fournisseurs. La prolifération des bases de données internes et des applications (depuis les répertoires d'adresses sur chaque PC jusqu'aux applications de business intelligence complexes), suscite de nouvelles demandes pour l'échange de données entre programmes.

La nécessité d'insérer des données complexes dans des pages Web est le corollaire de la large utilisation d'Internet et, plus particulièrement, du développement d'applications de e-commerce.
Au fur et à  mesure que les sites Web deviennent plus sophistiqués, les pages HTML statiques sont de moins en moins pratiques. Les développeurs Web adoptent des outils comme Java et XML pour rendre les pages Web plus dynamiques et pour limiter les traitements manuels nécessaires pour des transactions Web, comme des demandes d'informations et des achats en ligne.

Plutôt que d'expliquer dans le détail les techniques et standards de coding XML, voyons plutôt la relation entre XML et les langages de définition de données, comme SQL et DDS, et les outils et technologies nécessaires pour utiliser XML efficacement. (Pour avoir un bref aperçu de XML, voir l'encadré " XML : Vue d'avion ".)

A la base de toute discussion sur l'échange de données, on trouve l'encodage des métadonnées

XML : au delà  des frontières

A la base de toute discussion sur l’échange de données, on trouve
l’encodage des métadonnées, c’est-à -dire les données sur les données.
En principe, les métadonnées décrivent d’une part les attributs de données importants
pour l’homme : signification, précision et source des données, et d’autre part
les attributs et les structures de données importants pour les programmes informatiques
: types de données, longueur et hiérarchie.

La plupart du temps, les données sont stockées sur un AS/400 avec DB2 Universal
Database for AS/400 (DB2 UDB), et les définitions de données sont faites en DDS.
DDS fournit aux développeurs AS/400 un langage commun pour communiquer les structures
de données à  la fois aux autres développeurs et entre applications. Les programmes
RPG, Cobol et Java (en utilisant l’AS/400 Toolbox for Java) peuvent tous lire
des définitions de fichiers externes créées à  partir de DDS. Toutefois, quand
les applications sortent du cadre de l’AS/400, DDS n’est plus la solution optimale.

Au cours de ces dernières années, IBM a incité les développeurs AS/400 à  apprendre
et à  utiliser SQL, en partie pour répondre aux besoins des applications cross-plates-formes.
Un fichier AS/400 défini en DDS ou en SQL a la même définition de fichier externe,
et ses métadonnées sont accessibles soit via SQL soit en utilisant une définition
de fichier externe AS/400 (dans un programme RPG par exemple). Ainsi, SQL aide
à  surmonter les limitations propres à  DDS, et joue un rôle de passerelle entre
des outils de développement AS/400 traditionnels comme DDS et RPG, et de nouveaux
outils de développement comme Domino et Java.

XML ne remplace pas les langages de définition de données comme SQL ou DDS : il
les étend. XML et le DTD (Document Type Definition) associé ajoute aux métadonnées
fournies par DDS et SQL, en définissant une hiérarchie d’éléments de données sur
plusieurs niveaux. Un document XML contient des descriptions de données lisibles
par la machine et par l’homme, en même temps que les données proprement dites.
On peut utiliser ces descriptions pour traduire des données entre deux formats
et, en raison de sa syntaxe simple, XML rend également les métadonnées directement
accessibles à  l’utilisateur final.

En outre, on peut utiliser XML pour transférer des données d’une plate-forme vers
une autre, parce que les documents XML sont stockés en Unicode et non pas au format
EBCDIC, utilisé pour les fichiers physiques AS/400 (pour plus d’informations sur
XML, voir la Bibliographie.)

XML : Vue d’avion XML (Extensible Markup Language) utilise
une syntaxe, structurée par balises, qui, à  première vue, ressemble
beaucoup à  HTML (tous deux, HTML et XML, sont d’ailleurs des dérivées
de SGML, ou Standard Generalized Markup Language.)
Cependant, deux différences majeures distinguent HTML et XML. En premier
lieu, HTML est surtout utilisé pour définir l’apparence de l’information,
tandis que XML décrit son contenu et sa structure. Ensuite, HTML, comme
la plupart des langages informatiques, a une syntaxe fixe, tandis qu’XML
est extensible (on peut créer de nouvelles balises XML en cas de besoin).

L’extensibilité de XML est à  la fois une force et une faiblesse. La
faculté de créer de nouvelles balises apporte une énorme souplesse,
mais elle signifie aussi que la puissance finale de XML est tributaire
des standards. Lorsque toute une activité, comme le secteur bancaire
ou médical, s’accorde sur un jeu de balises XML standard, il est très
facile d’échanger des données. Bien que ces standards évoluent très
rapidement, ils n’existent actuellement que pour une poignée d’industries.

En outre, certaines branches, comme celle des services financiers, ont
des standards multiples et conflictuels.

Syntaxiquement parlant, XML est constitué d’éléments et d’attributs.
Un élément (nom, par exemple) peut avoir des sous-éléments (prénom,
initiale_deuxième_prénom, patronyme), et chaque élément ou sous-élément
peut intervenir un nombre variable de fois (une seulement, zéro ou plusieurs,
une ou plusieurs, par exemple).
Les éléments forment une arborescence hiérarchique décrivant les relations
entre éléments. Ainsi, une commande pourrait contenir un élément client,
un ou plusieurs éléments adresse, un ou plusieurs éléments ligne-article,
et un élément paiement. L’élément adresse pourrait inclure des sous-éléments
: rue, ville, pays et code postal (l’élément rue peut survenir une ou
plusieurs fois.)

Un attribut accentue la définition d’un élément en indiquant des caractéristiques
comme les types de données. Les types de données XML, comme les balises
XML, sont auto-définissables, c’est-à -dire sans validation intégrée.

Si on définit l’attribut numérique pour un type de données, il vous
incombe de vérifier que les données entrées contiennent réellement du
numérique. Des standards de types de données, comme beaucoup d’autres
standards concernant XML, sont en cours de développement. Donc, avant
de créer vos propres types d’attributs, examinez les standards actuels
à  la fois pour l’ensemble de XML et pour ceux qui s’appliquent précisément
à  votre secteur.

Souvent, un concepteur XML peut utiliser des sous-éléments ou des attributs
pour atteindre le même objectif. Un élément d’adresse pourrait, par
exemple, déterminer si l’information concerne une adresse de facturation
ou une adresse de livraison de deux manières différentes : soit avec
un sous-élément de type d’adresse, soit avec un attribut à  deux valeurs
: facturation ou livraison.
Pour utiliser efficacement XML il faut disposer d’un DTD (Document Type
Definition). Le DTD codifie les règles d’un type particulier de document
XML en précisant la hiérarchie des éléments, les attributs et leurs
valeurs valides, et quels éléments sont requis. SLH

Téléchargez cette ressource

Guide inmac wstore pour l’équipement IT de l’entreprise

Guide inmac wstore pour l’équipement IT de l’entreprise

Découvrez toutes nos actualités à travers des interviews, avis, conseils d'experts, témoignages clients, ainsi que les dernières tendances et solutions IT autour de nos 4 univers produits : Poste de travail, Affichage et Collaboration, Impression et Infrastructure.

Tech - Par iTPro.fr - Publié le 24 juin 2010