IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Valider XML Discussion :

valider une DTD


Sujet :

Valider XML

  1. #1
    Membre confirm�
    Inscrit en
    Janvier 2006
    Messages
    139
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 139
    Par d�faut valider une DTD
    bonjour,

    dans le cadre d'un TP not�, je dois faire cr�er une DTD � partir de fichiers gedcom exemples que vous pouvez voir sur ce site vers exercice 2:
    http://www.liafa.jussieu.fr/~carton/...t/XML/Tds/Td1/

    j'ai cr�� une DTD et parser un xml avec la DTD

    DTD:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE gedcom [
     
    	<!ELEMENT gedcom (head? | subm? | (indi | fam )* | trlr)* >
     
    	<!ELEMENT head (sour? | dest? | date? | file? | char? | gedc?)* >
    	<!ELEMENT trlr EMPTY >
    	<!ELEMENT indi (name | titl? | sex? | birt? | chr? | deat? | buri? | refn? | (fams | famc)* | obje?)* >
    	<!ELEMENT fam (husb? | wife?| (chil*)? | div? | (marr*)? | obje?)* >
    	<!ELEMENT subm (name | addr | phon | comm)* >
     
    	<!ATTLIST subm id ID #REQUIRED >
    	<!ATTLIST indi id ID #REQUIRED >
    	<!ATTLIST fam id ID #REQUIRED >
     
    	<!ELEMENT date (#PCDATA) >
    	<!ELEMENT plac (#PCDATA) >
     
    	<!ELEMENT sour (#PCDATA | vers | name | corp)* >
    	<!ELEMENT dest (#PCDATA) >
    	<!ELEMENT file (#PCDATA) >
    	<!ELEMENT char (#PCDATA) >
    	<!ELEMENT gedc (vers) >
    	<!ELEMENT vers (#PCDATA) >
    	<!ELEMENT corp (#PCDATA | addr | phon)* >
     
    	<!ELEMENT addr (#PCDATA | cont)* >
    	<!ELEMENT phon (#PCDATA) >
    	<!ELEMENT comm (#PCDATA | cont)* >
    	<!ELEMENT cont (#PCDATA) >
     
    	<!ELEMENT name (#PCDATA) >
    	<!ELEMENT titl (#PCDATA) >
    	<!ELEMENT sex (#PCDATA) >
    	<!ELEMENT birt (date? | plac?)* >
    	<!ELEMENT chr (date? | plac?)* >
    	<!ELEMENT deat (date? | plac?)* >
    	<!ELEMENT buri (date? | plac?)* >
    	<!ELEMENT refn (#PCDATA) >
    	<!ELEMENT famc EMPTY>
    	<!ELEMENT fams EMPTY>
     
    	<!ELEMENT husb EMPTY >
    	<!ELEMENT wife EMPTY >
    	<!ELEMENT chil EMPTY >
    	<!ELEMENT div (#PCDATA) >
    	<!ELEMENT marr (date| plac?)* >
    	<!ELEMENT obje EMPTY >
     
    	<!ATTLIST famc ref IDREF #REQUIRED >
    	<!ATTLIST fams ref IDREF #REQUIRED >
    	<!ATTLIST husb ref IDREF #REQUIRED >
    	<!ATTLIST wife ref IDREF #REQUIRED >
    	<!ATTLIST chil ref IDREF #REQUIRED >
    	<!ATTLIST obje ref CDATA #REQUIRED >
     
    ]>
    begood.xml
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <gedcom>
    <head>
    </head>
    <indi
     id="i1">
    	<name>
    		John /Begood/ 
    	</name>
    	<sex>
    		M 
    	</sex>
    	<fams ref="f1"	/>
    </indi>
    <indi
     id="i2">
    	<name>
    		Ada /Begood/ 
    	</name>
    	<fams ref="f1"	/>
    </indi>
    <indi
     id="i3">
    	<name>
    		Fred /Begood/ 
    	</name>
    	<famc ref="f1"	/>
    </indi>
    <indi
     id="i4">
    	<name>
    		Lea /Begood/ 
    	</name>
    	<sex>
    		F 
    	</sex>
    	<famc ref="f1"	/>
    </indi>
    <fam
     id="f1">
    	<husb ref="i1"	/>
    	<wife ref="i2"	/>
    	<chil ref="i3"	/>
    	<chil ref="i4"	/>
    </fam>
    <trlr/>
    </gedcom>
    j'utilise xmllint pour valider la DTD avec le fichier xml et j'obtiens le r�sultat suivant:

    lucien: ~/m2/s2/xml/Gedcom/src > xmllint --noout --dtdvalid GedcomPerso.dtd begood.xml
    GedcomPerso.dtd:2: parser error : Content error in the external subset
    <!DOCTYPE gedcom [
    ^
    GedcomPerso.dtd:2: parser error : Content error in the external subset
    <!DOCTYPE gedcom [
    ^
    Could not parse DTD GedcomPerso.dtd

    j'aurais besoin d'aide pour m'aider � corriger le probl�me.

    Merci
    Fichiers attach�s Fichiers attach�s

  2. #2
    Expert confirm�
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    D�tails du profil
    Informations personnelles :
    �ge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par d�faut
    Bonjour,

    l'instruction !DOCTYPE n'est pas cens�e figurer dans le fichier DTD mais dans le fichier XML, justement pour lui associer la DTD qui va le valider.
    FAQ XML
    ------------
    � Le moyen le plus s�r de cacher aux autres les limites de son savoir est de ne jamais les d�passer �
    Giacomo Leopardi

  3. #3
    Membre confirm�
    Inscrit en
    Janvier 2006
    Messages
    139
    D�tails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 139
    Par d�faut
    Merci beaucoup pour votre r�ponse

  4. #4
    Invit� de passage
    Homme Profil pro
    �tudiant
    Inscrit en
    D�cembre 2014
    Messages
    1
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 35
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : �tudiant
    Secteur : High Tech - Op�rateur de t�l�communications

    Informations forums :
    Inscription : D�cembre 2014
    Messages : 1
    Par d�faut Valide DTD
    Bonjour , j'aimerais vous poser la question par rapport � ce dtd
    J'ai essasy� de suivre le dtd que vous avez mis en ligne resolu mais �a ne fonction pas toujours. En effet , j'ai le meme tp � faire sur ce fichier begood et complet

  5. #5
    Mod�rateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par d�faut
    Hello,

    Je n'ai rien vu qui soit mis en ligne r�solu. Le DTD montr� est incorrect, et on a dit pourquoi.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [DTD] Valider un fichier xml suivant une DTD
    Par Tail dans le forum Format d'�change (XML, JSON...)
    R�ponses: 1
    Dernier message: 26/06/2006, 11h23
  2. validation d'un document XML par rapport � une DTD
    Par sebastien2222 dans le forum Valider
    R�ponses: 1
    Dernier message: 03/03/2006, 15h41
  3. R�ponses: 2
    Dernier message: 03/06/2005, 11h00
  4. [DOM] Erreur pour valider une DTD
    Par lenghh dans le forum Format d'�change (XML, JSON...)
    R�ponses: 13
    Dernier message: 19/05/2004, 18h15
  5. [SAX] ]Validation d'un Document avec une DTD
    Par laguiff dans le forum Format d'�change (XML, JSON...)
    R�ponses: 3
    Dernier message: 18/02/2004, 09h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo