IBM Books

Extension XML Administration et programmation

Planification

Avant de stocker un document XML avec l'Extension XML, vous devez comprendre sa structure pour déterminer le mode de recherche à utiliser. A cet effet, vous devez déterminer les points suivants :

Les sections ci-après indiquent la procédure à suivre.

Structure du document XML

Pour ce cours, la structure de document XML reçoit des informations relatives à une commande client déterminée, structurée au niveau supérieur par le numéro de commande et au niveau suivant, par les informations sur le client, la pièce et la livraison. Le document XML est décrit à la Figure 4.

Ce cours fournit également un exemple de DTD permettant de comprendre et de valider la structure du document XML. Le fichier DTD se trouve à l'Annexe B, Exemples. Il correspond à la structure illustrée Figure 4.

Figure 4. Structure hiérarchique de la DTD et du document XML


Structure hiérarchique de la DTD et du document XML

Détermination du type de données de colonne XML

L'Extension XML comporte des types de données utilisateur XML sous lesquels vous définissez une colonne qui doit contenir des documents XML. Ces types de données sont les suivants :

Dans ce cours, vous allez stocker un petit document dans DB2 et, par conséquent, utiliser le type de données XMLVarchar.

Détermination des éléments et des attributs à examiner

Lorsque vous comprenez la structure du document XML et les besoins de l'application, vous pouvez déterminer les éléments et les attributs à examiner, ceux qui feront l'objet de recherches fréquentes ou longues. Le service de maintenance a indiqué qu'il demandera souvent la clé de la commande, le nom du client, le prix et la date de livraison, et qu'il aura besoin d'effectuer des recherches rapides. Ces informations sont contenues dans les éléments et les attributs de la structure de document XML. Le Tableau 2 décrit les chemins d'emplacement de chaque élément et attribut.

Tableau 2. Eléments et attributs à examiner
Données Chemin d'emplacement
Clé de la commande /Order/@key
Client /Order/Customer/Name
Prix /Order/Part/ExtendedPrice
Date de livraison /Order/Part/Shipment/ShipDate

Mappage du document XML vers les tables annexes

Dans ce tutoriel, vous allez créer un fichier DAD pour la colonne XML qui permet de stocker le document XML dans DB2. Elle permet également de mapper le contenu des éléments et des attributs XML vers des tables annexes DB2 utilisées pour l'indexation, ce qui améliore les performances de recherche. Dans la dernière section, vous avez identifié les éléments et les attributs à examiner. Dans la présente section, vous obtenez davantage d'informations sur le mappage de valeurs d'éléments et d'attributs vers des tables DB2 pouvant être indexées.

Après l'identification des éléments et des attributs à examiner, vous déterminez leur disposition dans les tables annexes, le nombre de tables et les colonnes appartenant à chaque table. En général, pour organiser les tables annexes, vous regroupez des informations apparentées dans une même table. La structure dépend également de la possibilité ou non de répéter le chemin d'emplacement des éléments dans un document. Par exemple dans votre document, l'élément part (pièce) peut être répété et, par conséquent, les éléments price (prix) et date peuvent avoir des occurrences multiples. Les éléments qui peuvent être répétés doivent figurer dans leurs propres tables.

En outre, vous avez également besoin de déterminer les types DB2 de base que les valeurs d'éléments ou d'attributs devront utiliser. En général, ces types sont facilement indiqués par le format des données. Choisissez VARCHAR, INTEGER ou DATE, selon qu'il s'agit respectivement de texte, d'entiers numériques ou d'une date pour effectuer des recherches d'après des plages de valeurs.

Dans ce tutoriel, les éléments et les attributs sont mappés vers les tables annexes suivantes :

ORDER_SIDE_TAB

Nom de colonne Type de données Chemin d'emplacement Occurrences multiples ?
ORDER_KEY INTEGER /Order/@key Non
CUSTOMER VARCHAR(16) /Order/Customer/Name Non

PART_SIDE_TAB

Nom de colonne Type de données Chemin d'emplacement Occurrences multiples ?
PRICE DECIMAL(10,2) /Order/Part/ExtendedPrice Oui

SHIP_SIDE_TAB

Nom de colonne Type de données Chemin d'emplacement Occurrences multiples ?
DATE DATE /Order/Part/Shipment/ShipDate Oui

Pour ce tutoriel, nous fournissons un jeu de scripts pour la configuration de votre environnement. Ces scripts se trouvent dans le répertoire DXX_INSTAL\samples\cmd (DXX_INSTALL désignant l'unité et le répertoire d'installation de l'Extension XML, par exemple c:\dxx\samples\cmd). Ils se présentent comme suit :

getstart_db.cmd
Crée la base de données et remplit quatre tables.

getstart_prep.cmd
Définit les accès de la base de données aux procédures mémorisées de l'Extension XML et à l'interface CLI de DB2.

getstart_insertDTD.cmd
Insère la DTD utilisée pour valider le document XML dans la colonne XML.

getstart_createTabCol.cmd
Crée une table d'application avec une colonne activée pour XML.

getstart_alterTabCol.cmd
Modifie la table d'application en ajoutant la colonne qui sera activée pour XML.

getstart_enableCol.cmd
Active la colonne XML.

getstart_createIndex.cmd
Crée des index sur les tables annexes pour la colonne XML.

getstart_insertXML.cmd
Insère le document XML dans la colonne XML.

getstart_queryCol.cmd
Exécute une instruction SELECT sur la table d'application et renvoie le document XML.

getstart_clean.cmd
Nettoie l'environnement du tutoriel.


[ Début de page | Page précédente | Page suivante | Table des matières | Index ]