Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1030 connectés 

  FORUM HardWare.fr
  Programmation
  XML/XSL

  Aide XML DTD

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Aide XML DTD

n°1333723
Funkyfonk
Posté le 28-03-2006 à 15:04:42  profilanswer
 

Bonjour,  
Je souhaite acquérrir des connaissances en XML, DTD ^^.
- j'aimerais créer un fichier XML permettant de conserver des données de commmande (Nom, Prénom....).
Quels moyens puis-je employer sachant que je ne dois pas utiliser php ni faire de saisie formulaire?
 
- j'ai créer 2 fichiers; le fichier XML des commandes; pourriez vous m'indiquer lequel est le plus approprié et m'aidez à corriger mes erreurs; les voici :
------------------------------------------------------------------------------------------------------------
<?xml version="1.0"?>
<COMMANDE>
      <NUMERO>0001</NUMERO>
      <NOM>VINCENT</NOM>
      <PRENOM>BERGER</PRENOM>
      <ADRESSE>10, rue oblivion - 93000 PARIS</ADRESSE>
      <DATE_ACHAT>15/03/06</DATE_ACHAT>
      <ETAT_COMMANDE>En cours de livraison</ETAT_COMMANDE>
      <MODE_PAIEMENT>Carte bancaire</MODE_PAIEMENT>
      <ARTICLE>
               <REFERENCE ID_PROD="PPROUGE08">
               <QUANTITE>20</QUANTITE>
               <PRIX_UNITAIRE>26.50</PRIX_UNITAIRE>
               </REFERENCE>
      </ARTICLE>
      <ARTICLE>
               <REFERENCE ID_PROD="PPBLEU06">
               <QUANTITE>15</QUANTITE>
               <PRIX_UNITAIRE>17.75</PRIX_UNITAIRE>
               </REFERENCE>
      </ARTICLE>
</COMMANDE>
<COMMANDE>
       <NUMERO>0002</NUMERO>
       <NOM>PIERRE</NOM>
       <PRENOM>MARCHAND</PRENOM>
       <ADRESSE>20, avenue des Champs Elysées - 75000 PARIS</ADRESSE>
       <DATE_ACHAT>13/02/06</DATE_ACHAT>
       <ETAT_COMMANDE>Livrée</ETAT_COMMANDE>
       <MODE_PAIEMENT>Chèque</MODE_PAIEMENT>
       <ARTICLE>
             <REFERENCE ID_PROD="PPVERT03">
             <QUANTITE>8</QUANTITE>
             <PRIX_UNITAIRE>23.50</PRIX_UNITAIRE>
             </REFERENCE>
       </ARTICLE>
       <ARTICLE>
             <REFERENCE ID_PROD="PPBLEU08">
             <QUANTITE>2</QUANTITE>
             <PRIX_UNITAIRE>19.25</PRIX_UNITAIRE>
             </REFERENCE>
        </ARTICLE>  
</COMMANDE>
--------------------------------------------------------------------------------------------------------------
<?xml version="1.0"?>
<COMMANDES XMLNS="">
         <NUMERO ID="0001">
                   <NOM>VINCENT</NOM>
                   <PRENOM>BERGER</PRENOM>
                   <ADRESSE>10, rue oblivion - 93000 PARIS</ADRESSE>
                   <DATE_ACHAT>15/03/06</DATE_ACHAT>
                   <ETAT_COMMANDE>En cours de livraison</ETAT_COMMANDE>
                   <MODE_PAIEMENT>Carte bancaire</MODE_PAIEMENT>
                   <ARTICLE>
                            <REFERENCE ID_PROD="PPROUGE08">
                                            <QUANTITE>20</QUANTITE>
                                            <PRIX_UNITAIRE>26.50</PRIX_UNITAIRE>
                            </REFERENCE>
                   </ARTICLE>
                   <ARTICLE>
                            <REFERENCE ID_PROD="PPBLEU06">
                                            <QUANTITE>15</QUANTITE>
                                            <PRIX_UNITAIRE>17.75</PRIX_UNITAIRE>
                            </REFERENCE>
                    </ARTICLE>
         </NUMERO>
         <NUMERO ID="0002">
                    <NOM>PIERRE</NOM>
                    <PRENOM>MARCHAND</PRENOM>
                    <ADRESSE>20, avenue des Champs Elysées - 75000 PARIS</ADRESSE>
                    <DATE_ACHAT>13/02/06</DATE_ACHAT>
                    <ETAT_COMMANDE>Livrée</ETAT_COMMANDE>
                    <MODE_PAIEMENT>Chèque</MODE_PAIEMENT>
                    <ARTICLE>
                               <REFERENCE ID_PROD="PPVERT03">
                                          <QUANTITE>8</QUANTITE>
                                          <PRIX_UNITAIRE>23.50</PRIX_UNITAIRE>
                               </REFERENCE>
                    </ARTICLE>
                    <ARTICLE>
                               <REFERENCE ID_PROD="PPBLEU08">
                                          <QUANTITE>2</QUANTITE>
                                          <PRIX_UNITAIRE>19.25</PRIX_UNITAIRE>
                               </REFERENCE>
                    </ARTICLE>
            </NUMERO>
</COMMANDES>
--------------------------------------------------------------------------------------------------------------
J'ai essayé de faire la DTD du second fichier :
Merci de me signaler mes erreurs ^^
 
<?xml version="1.0"?>
<!ELEMENT COMMANDES (NUMERO*)>
<!ATTLIST COMMANDES XMLNS CDATA #REQUIRED>
<!ELEMENT NUMERO (NOM,PRENOM,ADRESSE,DATE_ACHAT,ETAT_COMMANDE,MODE_PAIEMENT,ARTICLE+)>
<!ATTLIST NUMERO ID CDATA #REQUIRED>
<!ELEMENT NOM (#PCDATA)>
<!ELEMENT PRENOM (#PCDATA)>
<!ELEMENT ADRESSE (#PCDATA)>
<!ELEMENT DATE_ACHAT (#PCDATA)>
<!ELEMENT ETAT_COMMANDE (#PCDATA)>
<!ELEMENT MODE_PAIEMENT (#PCDATA)>
<!ELEMENT ARTICLE (REFERENCE*)>
<!ELEMENT REFERENCE (QUANTITE,PRIX_UNITAIRE)>
<!ATTLIST REFERENCE ID CDATA #REQUIRED>
--------------------------------------------------------------------------------------------------------------


Message édité par Funkyfonk le 28-03-2006 à 15:21:46
mood
Publicité
Posté le 28-03-2006 à 15:04:42  profilanswer
 

n°1333739
rufo
Pas me confondre avec Lycos!
Posté le 28-03-2006 à 15:22:36  profilanswer
 

le premier me paraît mieux. Par contre, en xml, les balises et noms d'attributs sont en minuscules...

n°1333744
Funkyfonk
Posté le 28-03-2006 à 15:28:43  profilanswer
 

Entendu merci^^, je vais corriger ça!!!
Par contre, faut il mettre des underscore ou des tirés dans les balises en minuscules?

n°1333753
rufo
Pas me confondre avec Lycos!
Posté le 28-03-2006 à 15:43:23  profilanswer
 

je ne suis pas sûr qu'on puisse mettre des - dans les noms d'attributs. Donc, je mettrais plutôt des _

n°1333769
Funkyfonk
Posté le 28-03-2006 à 15:59:56  profilanswer
 

Pour ce qui est de ma premiere question, je me demande si il est possible de scanner ("parser" si c est bien ça) un fichier texte dans lequel un client à rentré une commande de manière à générer automatiquement le code xml et de l'intégrer dans le fichiers des commandes.xml? Est ce une solution?

n°1333881
rufo
Pas me confondre avec Lycos!
Posté le 28-03-2006 à 17:30:45  profilanswer
 

oui, c'est possible mais faut faire attention que l'utilisateur a bien respecté le formalisme que tu vas imposer dans le fichier txt que tu parseras après...pas évident! Alors que via un formualire, c'est facile.

n°1335709
Funkyfonk
Posté le 30-03-2006 à 17:33:51  profilanswer
 

J'ai bien reécrit mon fichier xml ainsi que ma dtd; je voudrais savoir si il est mieux d'utiliser un parseur SAX ou un parseur DOM pour manipuler ce fichier XML? Merci^^

n°1335769
rufo
Pas me confondre avec Lycos!
Posté le 30-03-2006 à 18:37:54  profilanswer
 

DOM est peut-être plus utilisé, mais c'est à confirmer...

n°1336883
rx__
Paint It Black
Posté le 01-04-2006 à 11:30:35  profilanswer
 

L'usage est différent. DOM parse le document et te permet ensuite d'y accéder, dans sa totalité, tandis que SAX appelle un handler que tu écris pour chaque élément (attribut, cdata ...) qu'il rencontre. SAX est donc plus rapide et plus léger mais pas forcément adapté à tous les besoins.

n°1338483
Funkyfonk
Posté le 04-04-2006 à 10:57:17  profilanswer
 

Merci, comment peut on vérifier qu'un fichier XML et sa DTD sont valides?


Message édité par Funkyfonk le 04-04-2006 à 10:57:42
mood
Publicité
Posté le 04-04-2006 à 10:57:17  profilanswer
 

n°1339086
rx__
Paint It Black
Posté le 04-04-2006 à 19:22:06  profilanswer
 

Je n'ai jamais testé mais en Java les factories qui créent les parsers SAX et DOM ont une méthode setValidating(true) qui permet d'activer la validation en utilisant le DTD ou le schema précisé par le fichier XML.
 
Si tu cherches un outil tout fait, il y en a pas mal. Par exemple celui de Sun: http://www.sun.com/software/xml/de [...] ltischema/.


Message édité par rx__ le 04-04-2006 à 19:22:42

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  XML/XSL

  Aide XML DTD

 

Sujets relatifs
[FLASH] Besoin d'aide - remuneration possible - MAJ 1aide pour 1 sous-requete ds la base PUBS de SQL Server 7 microsoft
DOM, extraction d'information dans un fichier XMLOuverture d'un fichier Excel avec un XML et lancement d'une macro
[VBA] Impossible d'accéder à l'aide sous Visual Basic editor ...aide débutant en python
Extraction/Insertion de donnée XML dans une base de donnée de Oracle[Oracle 9i]Export résultat de requête SQL vers fichier XML?
sauvegarder des fichiers à l'aide d'un script ? besoin d'aidePic 18F452 et Bus I2C : Aide à l'acquisition
Plus de sujets relatifs à : Aide XML DTD


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR