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

XML/XSL et SOAP Discussion :

Conseil pour bien commencer mon projet


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    32
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 32
    Par défaut Conseil pour bien commencer mon projet
    Bonjour à tous

    Je débute dans le langage XML, j'ai fais plusieurs tuto sur le net avant de me lancer.

    Je souhaite créer une application devis, qui fait la sommes de plusieurs articles. ces articles sont regroupés par fonction.

    Devis N°1
    Fonction N°1
    Resistance 10K prix 1€ Qté:10
    Condensateur 100nf 5€ Qté:5
    Fonction N°2
    Relais K1 5€ Qté:2
    Transistor T1 2€ Qté:2
    Fonciont N° .....
    ....................
    ....................

    Mon appli pourra venir lire ce fichier est faire tout les calculs qu'il me faut (prix par fonction, prix total ....)

    avec la possibilité de créer, rajouter, modifier, supprimer des fonctions ou des articles.
    Une fonction possède un nom et une description
    Un devis : N°, désignation, Coef, miniCmd

    Les caractéristiques suivantes doivent bien etre mit en attributs dans les fonctions? Nom ; Description
    Les caractéristiques suivantes doivent bien etre mit en attributs dans le devis ? N°, désignation, Coef, miniCmd

    Pour le prix et la quantité des articles c'est des attributs de l'article ou des éléments.

    Je fait une confusion entre l'attribut et les éléments. comment choisir si c'est l'un ou l'autre qu'il faut ?


    Merci d'avance pour vos remarques et votre aide.

    voici mon document 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
    <!ELEMENT devis (fonction*)>
     
    <!ATTLIST devis NAffaire CDATA #REQUIRED>
    <!ATTLIST devis Designation CDATA #REQUIRED>
    <!ATTLIST devis QteAn CDATA #REQUIRED>
    <!ATTLIST devis QteLct CDATA #REQUIRED>
    <!ATTLIST devis CoefSecu CDATA #REQUIRED>
    <!ATTLIST devis Prixremis CDATA #REQUIRED>
    <!ATTLIST devis dateC CDATA #REQUIRED>
    <!ATTLIST devis dateA CDATA #REQUIRED>
    <!ATTLIST devis datem CDATA #REQUIRED>
    <!ATTLIST devis dateE CDATA #REQUIRED>
    <!ATTLIST devis etat CDATA #REQUIRED>
     
     
    <!ELEMENT fonction (article*)>
     
    <!ATTLIST fonction nom CDATA #REQUIRED>
    <!ATTLIST fonction description CDATA #REQUIRED>
     
     
    <!ELEMENT article (Code,Designation,type,famille,fourniture,fournisseur,prix,caractst,conso,minicmd)>
    	<!ELEMENT Code (#PCDATA)>
    	<!ELEMENT Designation (#PCDATA)>
    	<!ELEMENT type (#PCDATA)>
    	<!ELEMENT famille (#PCDATA)>
    	<!ELEMENT fourniture (#PCDATA)>
    	<!ELEMENT fournisseur (#PCDATA)>
    	<!ELEMENT prix (#PCDATA)>
    	<!ELEMENT caractst (#PCDATA)>
    	<!ELEMENT conso (#PCDATA)>
    	<!ELEMENT minicmd (#PCDATA)>
    Document 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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
     
    <!DOCTYPE devis SYSTEM "devis.dtd">
     
     <devis NAffaire="123" Designation="ddd" QteAn="100" QteLct="10" dateC="01/01/2016" dateE="05/01/2016" datem="15/01/2016" dateA="15/01/2016" CoefSecu="1" Prixremis="10" etat="2">
     
    	<fonction nom="entrée N°1" description="permet une  entrée">
     
    		<article>
    			<Code>2CRM</Code>
    			<Designation>Resistance</Designation>
    			<type>MA</type>
    			<famille>COM</famille>
    			<fourniture>res125</fourniture>
    			<fournisseur>ARROW</fournisseur>
    			<prix>0.123</prix>
    			<caractst>12/12/201/22</caractst>
    			<conso>100</conso>
    			<minicmd>1000</minicmd>
    		</article>
     
    		<article>
    			<Code>2CT</Code>
    			<Designation>Transfo</Designation>
    			<type>MA</type>
    			<famille>TRA</famille>
    			<fourniture>2T036AT0</fourniture>
    			<fournisseur>TAE</fournisseur>
    			<prix>5.25</prix>
    			<caractst>12/12/201/22</caractst>
    			<conso>2500</conso>
    			<minicmd>1000</minicmd>
    		</article>	
     
    	</fonction>
     
    	<fonction nom="entrée N°2" description="permet une  deuxieme entrée">
     
    		<article>
    			<Code>2R</Code>
    			<Designation>Relais K1</Designation>
    			<type>MA</type>
    			<famille>REL</famille>
    			<fourniture>RP410310</fourniture>
    			<fournisseur>TYCO</fournisseur>
    			<prix>2.35</prix>
    			<caractst>12/12/201/22</caractst>
    			<conso>1000</conso>
    			<minicmd>2500</minicmd>
    		</article>
     
    		<article>
    			<Code>2CT</Code>
    			<Designation>Transfo</Designation>
    			<type>MA</type>
    			<famille>TRA</famille>
    			<fourniture>2T036AT0</fourniture>
    			<fournisseur>TAE</fournisseur>
    			<prix>5.25</prix>
    			<caractst>12/12/201/22</caractst>
    			<conso>2500</conso>
    			<minicmd>1000</minicmd>
    		</article>	
     
    		<article>
    			<Code>2CT</Code>
    			<Designation>Transfo</Designation>
    			<type>MA</type>
    			<famille>TRA</famille>
    			<fourniture>2T036AT0</fourniture>
    			<fournisseur>TAE</fournisseur>
    			<prix>5.25</prix>
    			<caractst>12/12/201/22</caractst>
    			<conso>2500</conso>
    			<minicmd>1000</minicmd>
    		</article>	
     
    	</fonction>
     
     </devis>

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    32
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 32
    Par défaut
    J'ai modifier le fichier DTD et le XML.
    Je prefere cette nouvelle forme.

    Fichier 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
    <!ELEMENT devis (fonction*)>
     
    <!ATTLIST devis 
    naffaire CDATA #REQUIRED>
    <!ATTLIST devis designation CDATA #REQUIRED>
    <!ATTLIST devis qtean CDATA #REQUIRED>
    <!ATTLIST devis qtelct CDATA #REQUIRED>
    <!ATTLIST devis coefsecu CDATA #REQUIRED>
    <!ATTLIST devis prixremis CDATA #REQUIRED>
    <!ATTLIST devis datec CDATA #REQUIRED>
    <!ATTLIST devis datea CDATA #REQUIRED>
    <!ATTLIST devis datem CDATA #REQUIRED>
    <!ATTLIST devis datee CDATA #REQUIRED>
    <!ATTLIST devis etat CDATA #REQUIRED>
     
     
    <!ELEMENT fonction (article*)>
    <!ATTLIST fonction nom CDATA #REQUIRED>
    <!ATTLIST fonction description CDATA #REQUIRED>
     
    <!ATTLIST fonction qte CDATA #REQUIRED>
     
     
    <!ELEMENT article (#PCDATA)>
    <!ATTLIST article code CDATA #REQUIRED>
    <!ATTLIST article designation CDATA #REQUIRED>
    <!ATTLIST article qte CDATA #REQUIRED>
    <!ATTLIST article type CDATA #REQUIRED>
    <!ATTLIST article famille CDATA #REQUIRED>
    <!ATTLIST article fourniture CDATA #REQUIRED>
    <!ATTLIST article fournisseur CDATA #REQUIRED>
    <!ATTLIST article prix CDATA #REQUIRED>
    <!ATTLIST article caractst CDATA #REQUIRED>
    <!ATTLIST article conso CDATA #REQUIRED>
    <!ATTLIST article minicmd CDATA #REQUIRED>
    Fichier 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
    <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
     
    <!DOCTYPE devis SYSTEM "devis01.dtd">
     
     <devis naffaire="123" designation="ddd" qtean="100" qtelct="10" datec="01/01/2016" datee="05/01/2016" datem="15/01/2016" datea="15/01/2016" coefsecu="1" prixremis="10" etat="2">
     
    	<fonction nom="Partie Alimentation" description="Alimentation 5V et 12V" qte="1">
    		<article code="2T036A0" designation="Transfo" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    		<article code="2CR3252" designation="Resistance" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    		<article code="2CCET020" designation="Condensateur" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    	</fonction>
     
     
    	<fonction nom="Entrée Commande" description="permet de geré un commande" qte="5">
    		<article code="2T036A0" designation="Transfo" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    		<article code="2CR3252" designation="Resistance" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    		<article code="2CCET020" designation="Condensateur" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    	</fonction>
     
     
     
    	<fonction nom="Sortie C.SEC" description="Fournit un contact sec 16A 230V" qte="3">
    		<article code="2CRR252" designation="Resistance 10Khom" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    		<article code="2CVT002" designation="Varistance" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    		<article code="2REL253" designation="Relais RP" qte="1" type="MA" famille="COM" conso="2500" fournisseur="TAE" fourniture="2T036AT0" minicmd="2500" prix="5.25" caractst="12/12/201/22"></article>	
    	</fonction>
     
     </devis>

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2008
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2008
    Messages : 28
    Par défaut
    Bonjour,

    Il y a quelques différences entre attributs et éléments fils :
    • un attribut ne peut apparaître qu'une fois, tu ne peux par exemple pas faire ceci :
    • un élément fils peut facilement être étendu avec des attributs : on peut imaginer que tu ajoutes un attribut « devise » à un prix. Bien sûr, quand tu calculeras tes totaux, tu devras bien faire attention de ne pas tout mélanger.
    • l'ordre des éléments fils est conservé : si tu les énumères, ils apparaîtront dans l'ordre du document. Ce ne sera pas nécessairement le cas pour des attributs.


    Pour imprimer tes devis (ou des statistiques dessus), tu peux (ici ça a l'air faisable...) créer une feuille de style XSLT qui fera les calculs nécessaires et qui mettra tout en page en (X)HTML.

    Il n'est pas nécessaire de répéter partout les caractéristiques des articles, tu peux les définir dans une partie de ton document et les référencer plus loin grâce à un code ou un id (tu peux appeler ça comme tu veux).

Discussions similaires

  1. Demande d'aide pour bien débuter mon projet
    Par DoYouRockBaby dans le forum Projets
    Réponses: 0
    Dernier message: 25/01/2016, 18h05
  2. Conseils pour bien commencer
    Par frankynov dans le forum Django
    Réponses: 1
    Dernier message: 11/04/2014, 21h46
  3. Conseils pour debuter dans mon projet
    Par diamanz dans le forum Débuter
    Réponses: 6
    Dernier message: 19/07/2009, 19h52
  4. Les Outils Necessaires pour bien commencer un projet
    Par verbal34 dans le forum Général Dotnet
    Réponses: 8
    Dernier message: 26/06/2008, 10h45
  5. [Débutant] Conseils pour bien démarrer.
    Par Invité dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 21/12/2005, 15h21

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