introduction à la structuration des documents: les techniques m2: gestion des connaissances

33
structuration des documents: les techniques M2: Gestion des connaissances

Upload: blanche-lalanne

Post on 04-Apr-2015

105 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Introduction à la structuration des documents: les techniques

M2: Gestion des connaissances

Page 2: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Plan

Syntaxe et sémantique de la description La syntaxe: introduction à XML La sémantique: introduction au Dublin

Core

Page 3: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Syntaxe et sémantique de la description Syntaxe: utilisation d’un langage

normalisé pour structurer le document (HTML, XML, CSS, etc.)

Sémantique: standardisation des noms des « balises », « champs », etc.

Page 4: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Introduction à XML Langage et métalangage: présentation d’XML Historique Avantages d’XML Structure des documents XML

Page 5: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Langage et métalangage: présentation d’XML XML = Extensible Markup Langage

(Langage à balises extensibles) HTML= Hypertext Markup Langage

– Il contient tous ses atomes (symboles et balises acceptés par la syntaxe)

Page 6: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Langage et métalangage: présentation d’XML XML = « métalangage » XML permet de séparer la structuration

du contenu de sa mise en forme (feuilles CSS, XSL, XSLT, etc.)

Avantage: on peut modifier la présentation du document sans modifier le document même!

Page 7: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Langage et métalangage: présentation d’XML CSS = Cascade StyleSheet (feuille de style

en cascade) XSL = Extensible StyleSheet Langage

(langage CSS développé spécialement pour XML)

XSLT= Extensible StyleSheet Langage Transformation (permet notamment la transformation d’un document XML en document HTML)

Page 8: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Historique

XML reprend les caractéristiques principales de SGML (Standard Generalized Markup Langage) défini dès 1986 pour la GED.

XML mieux adapté au web Mis au point dès 1996 par le XML Working

Group sous l’égide du W3C (World Wide Web Consortium)

Toutes les recommandations disponibles sur: http://www.w3.org/XML/

Page 9: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

Un document XML doit respecter la syntaxe du langage.

La syntaxe – règles générales (emboîtement des balises)– règles spécifiques définies dans une DTD

(Définition de Type de Document)

Page 10: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

Un document qui respecte la syntaxe XML est appelé document bien formé

Un document XML qui possède une DTD et est conforme à celle-ci est appelé document valide.

Page 11: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

Un document XML est structuré en trois parties:1. Le prologue: permet d’indiquer la version XML

utilisée (indication obligatoire) ainsi que le jeu de caractères utilisé (attribut facultatif)

<?xml version="1.0" encoding="ISO-8859-1"?>

Page 12: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

Le prologue peut contenir également des informations facultatives sur des instructions de traitement:

<? Instruction de traitement ?>

2. La DTD : elle peut être intégrée dans le document ou bien enregistrée dans un fichier indépendant.

<!DOCTYPE annuaire [contenu de la DTD]>

<!DOCTYPE annuaire SYSTEM "annuaire.dtd">

Page 13: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

3. La dernière partie est l’arbre des éléments (le contenu effectif du document XML).

- hiérarchie de balises comportant éventuellement des attributs.

- Un attribut est une paire nom/clé-valeur. Il se définit toujours dans la balise ouvrante, par exemple:

<personne class="étudiant">- Toute donnée est encapsulée dans une balise: <personne class="étudiant"> Jean-Michel </personne>

Page 14: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

3. Enfin, notez que l’arbre ne peut avoir qu’une seule racine! La syntaxe ci-dessous n’est pas correcte:

<?xml version="1.0"?>

<personne>

Jean-Michel

</personne>

<personne>

Anne-Sophie

</personne>

Page 15: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

La syntaxe ci-dessous est correcte: <?xml version="1.0"?><annuaire>

<personne> Jean-Michel

</personne><personne>

Anne-Sophie </personne >

</annuaire>

Page 16: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

Quelques règles syntaxiques:- toute balise ouverte doit être fermée:

<personne> Jean-Michel </personne>- une balise vide peut être fermée aussitôt:

<personne />- Les balises peuvent être emboîtées: - <annuaire> - <personne> Jean-Michel </personne>- </annuaire>

Page 17: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

Quelques règles syntaxiques:- Les balises ne peuvent pas se chevaucher:- <annuaire> <personne> - Jean-Michel - </annuaire> </personne>

Autrement dit, les balises doivent être fermées dans l’ordre contraire de leur ouverture (la première balise ouverte sera fermée en dernier, etc.)

Page 18: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XMLQuelques règles syntaxiques:- les noms des balises et des attributs doivent être

des noms XML, càd:- Le premier caractère est en règle générale une lettre- Les caractères suivants peuvent être des lettres, des

chiffres ou d’autres symboles (-_.)- Les espaces ne sont pas autorisés à l’intérieur du nom de

basise- Il n’y a pas de limitation a priori de longueur.

Note: - sauf notation particulière, un nom de balise ne peut pas

être formé uniquement de chiffres- choisissez des noms de balises simples et lisibles:

prénom, numéro_téléphone, etc.

Page 19: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XMLQuelques règles syntaxiques:- il est possible d’insérer des commentaires en

utilisant la syntaxe: - <!-- commentaire : ceci est un commentaire inutile -->

Il est possible d’utiliser entre les balises (et non pas à l’intérieur des balises!) des éléments de mise en page, comme les:

- Espaces- Tabulations- Retours à la ligne

- Ces éléments permettent une meilleure visibilité des éléments du code:

Page 20: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Structure d’un document XML

<?xml version="1.0" encoding="iso-8859-1" ?><!-- commentaire : ceci est mon CV écrit en XML -->

<cv><identité>

<nom> Mon Nom </nom><prénom> Mon Premier Prénom </prénom><prénom> Mon Deuxième Prénom </prénom><naissance >Année de naissance </naissance>

</identité><études />

</cv>

Page 21: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD

- Normaliser la description: utiliser les mêmes champs, dans le même ordre

- Utile pour structurer plusieurs documents de la même manière

Page 22: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD

- La DTD peut être - interne - externe

- Appel de la DTD interne : <!DOCTYPE cv [contenu de la DTD]>

L’appel contient le mot-clé !DOCTYPE suivi du nom de l’élément racine du document et du contenu de la DTD entre crochets!

Page 23: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD

- Appel de la DTD externe: <!DOCTYPE cv SYSTEM "cv.dtd">

Mot-clé !DOCTYPE suivi de l’élément racine, suivi de la localisation du fichier contenant la DTD.

Page 24: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD

Enfin, il est également possible de compléter une DTD externe à l’intérieur du document (solution nécessitant une maîtrise + poussée):

<!DOCTYPE SYSTEM "cv.dtd" […]>

<cv>… </cv>

Page 25: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD

La DTD permet de définir notamment:- des Eléments- Des Attributs- (Des Entités)

Page 26: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – définition des éléments

Un Elément est défini de la manière suivante: <!ELEMENT Nom (Modèle)>- le mot-clé élément est une indication du type

d’objet défini (élément et pas attribut, etc.)- Le « nom » correspond à celui de la balise

que l’on veut utiliser (par exemple: nom, prénom, etc.)

- Le « Modèle » est soit un type de données prédéfini, soit une règle d’utilisation de l’élément.

Page 27: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – types prédéfinis

- ANY – l’élément peut contenir tout type de données

- EMPTY – l’élément ne contient pas de données spécifiques

- #PCDATA – l’élément doit contenir une chaîne de caractères

<!ELEMENT Nom (#PCDATA)>

Page 28: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – règles

Certains éléments peuvent contenir d’autres éléments:

<!ELEMENT étudiant (nom, prénom)>

Cette règle indique que l’élément Etudiant doit contenir dans l’ordre un élément Nom et un élément Prénom et rien d’autre!

Page 29: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – quantification

Il est possible de préciser le nombre d’occurrences d’un sous-élément en utilisant des symboles de quantification:

- ? = l’élément doit apparaître 0 ou 1 fois- * = l’élément doit apparaître 0, 1 ou

plusieurs fois- +: 1 ou plusieurs fois

Page 30: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – quantification

<!ELEMENT étudiant (prénom+,nom, numéro_téléphone?)>

Cette définition signifie que l’élément élève peut être défini:

- par un ou plusieurs prénoms- Par 0 ou 1 numéros de téléphone- Nécessairement par un seul nom.

Page 31: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – alternative

<!ELEMENT formation (initiale|continue) >

Signifie que l’élément formation peut être défini par l’un ou l’autre des deux sous-éléments. Autrement dit, une formation donnée peut être OU initiale OU continue (mais pas les deux à la fois).

Page 32: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Rôle des DTD – combinaison

<!ELEMENT diplôme ((année, intitulé) | (année, compétences, stage?) )>

Signifie que l’élément Diplôme est défini par:- l’année d’obtention et l’intitulé du diplôme- Ou par la combinaison année, compétences

acquises et éventuellement par l’information liée au stage

Page 33: Introduction à la structuration des documents: les techniques M2: Gestion des connaissances

Exercice

Nous voulons réaliser un annuaire simple écrit sous la forme d’un document XML contenant le/s nom, prénom/s, adresse/s émail et éventuellement le/s numéro/s de téléphone de chaque étudiant M2.

Ecrivez la DTD, puis complétez le document XML avec quelques exemples.