Par Benoît Valiron <benoit.valiron [at] monoidal.net> et Jean Baptiste FADDOUL <jean-baptiste.faddoul [at] xrce.xerox.com>
Les infos pour valider un fichier XML se trouvent ici.
<?xml version=”1.0” encoding=”utf-8”?> <!DOCTYPE bookstore SYSTEM “book.dtd”> <bookstore> <book category=”fiction”> <title lang=”en”>Une brève histoire du temps</title> <author>Stephen Hawking</author> <year>1988</year> <price>50,00 euros</price> </book> </bookstore>book.dtd :
<!ELEMENT bookstore (book*)> <!ELEMENT book (title, author, year, price)> <!ELEMENT title (#PCDATA)> <!ELEMENT author (#PCDATA)> <!ELEMENT year (#PCDATA)> <!ELEMENT price (#PCDATA)> <!ATTLIST book category CDATA #REQUIRED> <!ATTLIST title lang (en | fr) #IMPLIED>
<CHAMPIONNAT DIVISION="1" SAISON="2003-2004"> <JOURNEE NUMERO="1" DATE="01/08/2003"> <RENCONTRE DOMICILE="Auxerre" EXTERIEUR="Nice" SCORED="1" SCOREE="2" RENCONTRE/> <RENCONTRE DOMICILE="Guingamp" EXTERIEUR="Marseille" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="Lens" EXTERIEUR="LeMans" SCORED="0" SCOREE="0"/>/<RENCONTRE> <RENCONTRE DOMICILE="Lille" EXTERIEUR="Lyon" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Metz" EXTERIEUR="Ajaccio" SCOREE="0" SCOREE="1"/> <RENCONTRE DOMICILE="Monaco" EXTERIEUR="Bordeaux" SCORED="2" SCOREE="0"/> <RENCONTRE DOMICILE="Montpellier" EXTERIEUR="Rennes" SCORED="1" SCOREE="1"> <RENCONTRE DOMICILE="ParisSG" EXTERIEUR="Bastia" SCORED="0" SCOREE="0"/> <RENCONTRE DOMICILE="Sochaux" EXTERIEUR="Nantes" SCORED="2" SCOREE="1"/> <RENCONTRE DOMICILE="Toulouse" EXTERIEUR="Strasbourg" SCOED="1" SCOREE="1"/> <JOURNEE NUMERO="2" DATE=08/08/2003> <RENCONTRE DOMICILE="Bastia" EXTERIEUR="Metz" SCORED="0" SCOREE="2"/> <RENCONTRE DOMICILE="Bordeaux" EXTERIEUR="Montpellier" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="LeMans" EXTERIEUR="Ajaccio" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="Lille" EXTERIEUR="ParisSG" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Lyon" EXTEREUR="Monaco" SCORED="3" SCOREE="1"/> <RENCONTRE DOMICILE="Marseille" EXTERIEUR="Auxerre" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Nantes" EXTERIEUR="Lens" SCORED="2" SCOREE="0"/> <RENCONTRE DOMICILE="Nice" EXTERIEUR="Sochaux" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Rennes" EXTERIEUR="Toulouse" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Strasbourg" EXTERIEUR="Guingamp" SCORED="2" SCOREE="0"/> </journee> <CHAMPIONNAT NUMERO =”2”/>
<CHAMPIONNAT DIVISION="1" SAISON="2003-2004"> <JOURNEE NUMERO="1" DATE="01/08/2003"> <RENCONTRE DOMICILE="Auxerre" EXTERIEUR="Nice" SCORED="1" SCOREE="2"/> <RENCONTRE DOMICILE="Guingamp" EXTERIEUR="Marseille" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="Lens" EXTERIEUR="LeMans" SCORED="0" SCOREE="0"/> <RENCONTRE DOMICILE="Lille" EXTERIEUR="Lyon" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Metz" EXTERIEUR="Ajaccio" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="Monaco" EXTERIEUR="Bordeaux" SCORED="2" SCOREE="0"/> <RENCONTRE DOMICILE="Montpellier" EXTERIEUR="Rennes" SCORED="1" SCOREE="1"/> <RENCONTRE DOMICILE="ParisSG" EXTERIEUR="Bastia" SCORED="0" SCOREE="0"/> <RENCONTRE DOMICILE="Sochaux" EXTERIEUR="Nantes" SCORED="2" SCOREE="1"/> <RENCONTRE DOMICILE="Toulouse" EXTERIEUR="Strasbourg" SCORED="1" SCOREE="1"/> </JOURNEE> <JOURNEE NUMERO="2" DATE="08/08/2003"> <RENCONTRE DOMICILE="Bastia" EXTERIEUR="Metz" SCORED="0" SCOREE="2"/> <RENCONTRE DOMICILE="Bordeaux" EXTERIEUR="Montpellier" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="LeMans" EXTERIEUR="Ajaccio" SCORED="0" SCOREE="1"/> <RENCONTRE DOMICILE="Lille" EXTERIEUR="ParisSG" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Lyon" EXTERIEUR="Monaco" SCORED="3" SCOREE="1"/> <RENCONTRE DOMICILE="Marseille" EXTERIEUR="Auxerre" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Nantes" EXTERIEUR="Lens" SCORED="2" SCOREE="0"/> <RENCONTRE DOMICILE="Nice" EXTERIEUR="Sochaux" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Rennes" EXTERIEUR="Toulouse" SCORED="1" SCOREE="0"/> <RENCONTRE DOMICILE="Strasbourg" EXTERIEUR="Guingamp" SCORED="2" SCOREE="0"/> </JOURNEE> </CHAMPIONNAT>
<CHAMPIONNAT DIVISION="1" SAISON="2003-2004"> <JOURNEE NUMERO="1" DATE="01/08/2003"> <RENCONTRE> <DOMICILE>Auxerre</DOMICILE> <EXTERIEUR>Nice</EXTERIEUR> <SCORED>1</SCORED> <SCOREE>2</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Guingamp</DOMICILE> <EXTERIEUR>Marseille</EXTERIEUR> <SCORED>0</SCORED> <SCOREE>1</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Lens</DOMICILE> <EXTERIEUR>LeMans</EXTERIEUR> <SCORED>0</SCORED> <SCOREE>0</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Lille</DOMICILE> <EXTERIEUR>Lyon</EXTERIEUR> <SCORED>1</SCORED> <SCOREE>0</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Metz</DOMICILE> <EXTERIEUR>Ajaccio</EXTERIEUR> <SCORED>0</SCORED> <SCOREE>1</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Monaco</DOMICILE> <EXTERIEUR>Bordeaux</EXTERIEUR> <SCORED>2</SCORED> <SCOREE>0</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Montpellier</DOMICILE> <EXTERIEUR>Rennes</EXTERIEUR> <SCORED>1</SCORED> <SCOREE>1</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>ParisSG</DOMICILE> <EXTERIEUR>Bastia</EXTERIEUR> <SCORED>0</SCORED> <SCOREE>0</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Sochaux</DOMICILE> <EXTERIEUR>Nantes</EXTERIEUR> <SCORED>2</SCORED> <SCOREE>1</SCOREE> </RENCONTRE> <RENCONTRE> <DOMICILE>Toulouse</DOMICILE> <EXTERIEUR>Strasbourg</EXTERIEUR> <SCORED>1</SCORED> <SCOREE>1</SCOREE> </RENCONTRE> </JOURNEE> </CHAMPIONNAT>
<!ELEMENT CHAMPIONNAT (JOURNEE)> <!ELEMENT JOURNEE (RENCONTRE+)> <!ELEMENT recontre EMPTY> <!ATTLIST CHAMPIONNAT DIVISION CDATA #REQUIRED SAISON CDATA #REQUIRED > <!ATTLIST JOURNEE NUMERO CDATA #REQUIRED DATE CDATA #REQUIRED > <!ATTLIST RENCONTRE DOMICILE CDATA #REQUIRED EXTERIEUR CDATA SCORED CDATA #REQUIRED SCOREE CDATA #REQUIRED >
<!ELEMENT CHAMPIONNAT (JOURNEE+)> <!ELEMENT JOURNEE (RENCONTRE+)> <!ELEMENT RENCONTRE EMPTY> <!ATTLIST CHAMPIONNAT DIVISION CDATA #REQUIRED SAISON CDATA #REQUIRED > <!ATTLIST JOURNEE NUMERO CDATA #REQUIRED DATE CDATA #REQUIRED > <!ATTLIST RENCONTRE DOMICILE CDATA #REQUIRED EXTERIEUR CDATA #REQUIRED SCORED CDATA #REQUIRED SCOREE CDATA #REQUIRED >
<!-- une liste de films --> <!ELEMENT films (acteur+, film+)> <!-- description d'un acteur --> <!ELEMENT acteur (#PCDATA)> <!ATTLIST acteur id ID #REQUIRED> <!-- description d'un film --> <!ELEMENT film (photo?,titre,annee,realisateur,casting,synopsis?)> <!-- langue utitilisé dans la fiche du film --> <!ATTLIST film lang (fr|en) #REQUIRED> <!-- photo du film--> <!ELEMENT photo EMPTY> <!ATTLIST photo href CDATA #REQUIRED> <!-- le casting --> <!ELEMENT casting (personnage*)> <!-- un personnage : son nom et son personnage --> <!ELEMENT personnage (#PCDATA)> <!ATTLIST personnage acteur IDREF #IMPLIED> <!ELEMENT perso EMPTY> <!ATTLIST perso ref IDREF #REQUIRED> <!-- les autres descripteurs du film --> <!ELEMENT titre (#PCDATA)> <!ELEMENT annee (#PCDATA)> <!ELEMENT realisateur (#PCDATA)>
<?xml version="1.0"?> <!DOCTYPE films SYSTEM "films.dtd"> <films> <acteur id="stallone">Sylvester Stallone</acteur> <acteur id="shire">Talia Shire</acteur> <acteur id="young">Burt Young</acteur> <acteur id="weather">Carl Weathers</acteur> <acteur id="meredith">Burgess Meredith</acteur> <acteur id="hamill">Mark Hamill</acteur> <acteur id="ford">Harrison Ford</acteur> <acteur id="fisher">Carrie Fisher</acteur> <!-- ROCKY --> <film lang="en"> <photo href="rocky.jpg"/> <titre>Rocky</titre> <annee>1976</annee> <realisateur>John G. Avildsen</realisateur> <casting> <personnage acteur="stallone">Rocky Balboa</personnage> <personnage acteur="shire">Adrian</personnage> <personnage acteur="young">Paulie</personnage> <personnage acteur="weather">Apollo Creed</personnage> <personnage acteur="meredith">Mickey</personnage> </casting> </film> <!-- Star Wars épisode 4 --> <film lang="fr"> <titre>La Guerre des étoiles</titre> <annee>1977</annee> <realisateur>George Lucas</realisateur> <casting> <personnage acteur="hamill">Luke Skywalker</personnage> <personnage acteur="ford">Han Solo</personnage> <personnage acteur="fisher">La princesse Leia</personnage> </casting> </film> <!-- le premier Indiana Jones --> <film lang="en"> <titre>Raiders of the Lost Ark</titre> <annee>1981</annee> <realisateur>Steven Spielberg</realisateur> <casting> <personnage acteur="ford">Indiana Jones</personnage> </casting> </film> </films>