Index Suivant

1   XML

La figure suivante montre deux arbres XML :


  1. Traduisez ces arbres en documents XML X1.xml et X2.xml.

    Solution : X1.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <A>
      <B>
         <E>4</E>
         <E>3</E>
      </B>
      <B>
         <E>1</E>
      </B>
      <C>
         <F>a</F>
      </C>
      <E>2</E>
    </A>
    
    X2.xml:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <A>
      <B>
        <E>4</E>
        <E>3</E>
      </B>
      <B></B>
      <C>
        <F>a</F>
        <F>b</F>
      </C>
    </A>
    
  2. Est-ce que la DTD suivante accepte les deux documents XML? Jusitifiez votre réponse.
    <!ELEMENT A ((B)*,C) >
    <!ELEMENT B (E)* >
    <!ELEMENT C (F)+ >
    <!ELEMENT E (#PCDATA) >
    <!ELEMENT F (#PCDATA) >
    
    Solution : Cette DTD accepte le document X2 mais pas le document X1 qui contient, par exemple, un element de type A avec un fils de type E, ce qui n'est pas permis par la DTD.

  3. Définissez une DTD qui accepte les deux documents (arbres) XML.

    Solution :
    <!ELEMENT A ((B)*,C,(E)?)>
    <!ELEMENT B (E)*>
    <!ELEMENT C (F)+>
    <!ELEMENT E (#PCDATA)>
    <!ELEMENT F (#PCDATA)>
    
  4. Définissez une DTD qui accepte le premier document XML, mais pas le deuxième.

    Solution :
    <!ELEMENT A ((B)*,C,E)>
    <!ELEMENT B (E)+>
    <!ELEMENT C F>
    <!ELEMENT E (#PCDATA)>
    <!ELEMENT F (#PCDATA)>
    

Index Suivant