0% ont trouvé ce document utile (0 vote)
46 vues3 pages

Correct Interro Non Notee

Transféré par

lety Leticia
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
46 vues3 pages

Correct Interro Non Notee

Transféré par

lety Leticia
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Rabelais de Tours lois

UFR Sciences et Techniques

XML
Interro non notée – documents non autorisés

1. Documents XML

Voilà un document XML avec 5 erreurs de syntaxe. Entourez-les et proposez une correction. Dessinez
l’arbre.

2. Documents et schémas

a) Proposer un document valide (texte ou arbre) par rapport au schéma ci-dessous (avec valeurs
inventées). A quel espace de nom est associé ce schéma ?
<journal> comme racine, avec un attribut « titre », et en dessous une liste éventuellement vide d’éléments
« article » suivie d’une liste éventuellement vide d’éléments « journaliste ». Un élément article se compose
d’un sous-élément « titre » suivi d’un élément « pages » contenant au moins un élément « pageNum »
dont la valeur est un entier entre 1 et 99. Un élément « journaliste » contient un sous élément « nom » et
un attribut « description ». Mais le document suivant est en lui-même valide : <journal
titre="monJournal"/>
Ce schéma est associé à l’espace de nom [Link]

b) Ecrire une DTD qui corresponde au mieux au schéma ci-dessous.

<xsd:schema targetNamespace="[Link]
xmlns:xsd="[Link]
<xsd:element name="journal" type="JournalType"/>
<xsd:complexType name="JournalType">
<xsd:sequence>
<xsd:element name="article" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="titre" type="xsd:string"/>
<xsd:element name="pages">
<xsd:complexType>

1/3
<xsd:element name="page" minOccurs="0" maxOccurs="unbounded">
<xsd:simpleType>
<xsd:restriction base="xsd:int">
<xsd:maxExclusive value="100"/>
<xsd:minExclusive value="0"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:complexType>
</xsd:element>
<xsd:element name="auteur" type="xsd:string"/>
<xsd:element name="resume" type="xsd:string"/>
</xsd:sequence>
<xsd:attribute name="href" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
<xsd:element name="journaliste" minOccurs="0" maxOccurs="unbounded">
<xsd:complexType>
<xsd:element name="nom" type="xsd:string"/>
<xsd:attribute name="description" type="xsd:string"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="titre" type="xsd:string"/>
</xsd:complexType>
</xsd:schema>

< !ELEMENT journal (article*, journaliste*) >


< !ATTLIST journal titre CDATA #REQUIRED >
< !ELEMENT article (titre, pages, auteur, resume) >
< !ATTLIST article href CDATA #REQUIRED >
< !ELEMENT journaliste (nom) >
< !ATTLIST journaliste description CDATA #REQUIRED >
< !ELEMENT pages (pagenum+) >
< !ELEMENT titre (#PCDATA) >
< !ELEMENT auteur (#PCDATA) >
< !ELEMENT resume (#PCDATA) >
< !ELEMENT nom (#PCDATA) >
< !ELEMENT pagenum (#PCDATA) >

Rappels de syntaxe pour DTD :


< !ELEMENT nomElement contenu >
contenu : (#PCDATA) ou ANY ou EMPTY ou (expression régulière)
symboles de l’expression régulière : , | ? * +
< !ATTLIST nomElement nomAttribut type obligation défaut>
type : CDATA ou ID ou IDREF ou IDREFS ou énumération de valeurs (a | b)
obligation : #REQUIRED ou #IMPLIED ou #FIXED
défaut : utilisé avec #IMPLIED ou #FIXED, définit une valeur par défaut
< !ENTITY nomEntité "valeurEntité">
utilisation : &nomEntité; (remplacé par valeurEntité)

3. Documents XML

Concernant l’extrait de document suivant :


1) Expliquez à quoi sert la partie introduite par DOCTYPE. Indiquez où on utilise plus loin dans le
fichier ce qui est déclaré dans DOCTYPE.

2/3
DOCTYPE sert à déclarer une DTD associée au document XML. Ici dans cette DTD il n’y a que deux
déclarations d’entités, la première associe le mot « humans » à l’URL
[Link] et la deuxième associe le mot « xsd » à l’URL
[Link]
2) Quels sont les quatre espaces de noms utilisés ?
[Link] avec le préfixe rdf
[Link] avec le préfixe rdfs
[Link] avec le préfixe xsd
[Link] pour tout ce qui est sans préfixe
3) A quel espace de noms appartient la balise <name> ?
[Link]

<?xml version="1.0" encoding="UTF-8"?>


<!DOCTYPE rdf:RDF [
<!ENTITY humans "[Link]
<!ENTITY xsd "[Link] ]>
<rdf:RDF xmlns:rdf ="[Link]
xmlns:rdfs="[Link]
xmlns:xsd ="&xsd;"
xmlns ="&humans;#"
xml:base ="&humans;-instances" >
<Man rdf:ID="Harry">
<name>Harry</name>
<hasChild rdf:resource="#John"/>
</Man>
</rdf:RDF>

3/3

Vous aimerez peut-être aussi