Requêtes OLAP sur une base de données XML native - Cercle ...
Requêtes OLAP sur une base de données XML native - Cercle ...
Requêtes OLAP sur une base de données XML native - Cercle ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
3.6 Modélisation <strong>de</strong>s documents <strong>XML</strong> 22<br />
<br />
<br />
<br />
< xsd:attribute name =" ISBN " type =" xsd:string " use =" required "/><br />
<br />
<br />
<br />
Introduire manuellement ce genre <strong>de</strong> document n’est pas <strong>une</strong> tâche aisée. Il existe bien sûr<br />
moult logiciels permettant <strong>de</strong> détecter <strong>de</strong>s schémas à partir <strong>de</strong> documents <strong>XML</strong> ou <strong>de</strong> les créer<br />
à l’ai<strong>de</strong> d’<strong>une</strong> interface graphique ergonomique comme par exemple le logiciel oXygen 1 .<br />
Les Schémas <strong>XML</strong> sont donc plus adaptés pour définir <strong>de</strong>s documents <strong>XML</strong> structurés. Cela<br />
nous intéresse particulièrement dans le domaine <strong>de</strong>s <strong>base</strong>s <strong>de</strong> <strong>données</strong>, car nous pouvons définir<br />
très précisément le type <strong>de</strong> ces <strong>données</strong> afin <strong>de</strong> garantir leur intégrité dans la <strong>base</strong>.<br />
D’autres langages similaires existent comme, par exemple, RelaxNG [14], développé par OA-<br />
SIS. Il est, selon ses auteurs, plus simple et plus compact que les Schémas <strong>XML</strong>. Nous ne nous<br />
attar<strong>de</strong>rons pas plus <strong>sur</strong> ces langages <strong>de</strong> définition <strong>de</strong> structure.<br />
3.6 Modélisation <strong>de</strong>s documents <strong>XML</strong><br />
Un document <strong>XML</strong> est habituellement modélisé comme un graphe dont les nœuds correspon<strong>de</strong>nt<br />
aux éléments et attributs <strong>XML</strong>. Le graphe est généralement un arbre, si nous supposons<br />
qu’il n’y a pas d’attribut <strong>de</strong> type IDREF/IDREFS. Ce type d’attribut permet <strong>de</strong> lier <strong>de</strong>s éléments<br />
à l’ai<strong>de</strong> d’un système <strong>de</strong> clés comme dans les <strong>base</strong>s <strong>de</strong> <strong>données</strong> relationnelles. Nous l’apellerons<br />
l’arbre <strong>XML</strong> par la suite. Un attribut est modélisé comme un fils <strong>de</strong> l’élément correspondant. Les<br />
valeurs textuelles <strong>de</strong>s éléments ou <strong>de</strong>s attributs apparaissent comme <strong>de</strong>s feuilles <strong>de</strong> l’arbre <strong>XML</strong>.<br />
Une caractéristique comm<strong>une</strong> <strong>de</strong>s langages d’interrogation <strong>XML</strong> (dont nous parlerons dans le<br />
chapitre 4) est la possibilité <strong>de</strong> formuler <strong>de</strong>s chemins dans le graphe <strong>XML</strong>.<br />
Pour illustrer, observons un document <strong>XML</strong> et son arbre, représenté à la figure 3.2. Dans<br />
cette illustration, les éléments sont représentés par <strong>de</strong>s cercles, les attributs par un triangle et<br />
les valeurs <strong>de</strong>s éléments ou attributs par <strong>de</strong>s rectangles.<br />
Dans les sections suivantes, nous parlerons <strong>de</strong>s différents ordres d’un document <strong>XML</strong> ainsi<br />
que différentes sortes <strong>de</strong> modélisation.<br />
3.6.1 Ordres<br />
Dans la suite <strong>de</strong> ce document, nous allons parler <strong>de</strong> trois ordres différents. Bien que cela<br />
semble être trivial, nous nous permettons <strong>de</strong> les introduire brièvement dans ce chapitre. Les<br />
trois ordres que nous allons utiliser sont les suivants :<br />
⊲ L’ordre du document<br />
⊲ L’ordre <strong>de</strong>s nœuds en parcours post-fixé<br />
⊲ L’ordre <strong>de</strong>s nœuds en parcours pré-fixé<br />
1 http://www.oxygenxml.com/