Discussion: Utilisation de XSD

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 5
    Points : 1
    Points
    1

    Par défaut Utilisation de XSD

    Bonjour,

    Je vient poser ma question sur se forum car je suis complètement perdu. Je vous explique ma situation:

    Je suis entrain de créer une interface utilisateur, et mon utilisateur doit saisir des données. Ses données, actuellement, je les stocks dans un fichier xml qui se créer lors du clique d'un bouton "Save" et qui se stock dans le même temps.
    Aujourd'hui mes données ne sont pas hiérarchisé. J'ai découvert xsd qui permettait cette hiérarchisation comme on le souhaite. Cependant je ne sait pas comment procédé dans mon cas. En effet comment et à quel moment j'utilise xsd ?? Lors du clique du bouton "Save" ou le xsd doit déjà être prêt avant le clique?..

    Si vous pouviez éclairer ma lanterne sur se sujet car je suis complètement perdu...

    Merci d'avance !

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    11 488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 488
    Points : 19 498
    Points
    19 498

    Par défaut

    Hello,

    XSD n'a rien à voir avec ça. Oublie-le pour l'instant, repense y un autre jour si tu te dis que ça peut te servir à autre chose.

    Si aujourd'hui tes données ne sont pas hiérarchisées, et que tu voudrais faire en sorte qu'elles le soient,
    il suffit de modifier la manière dont tu fais tes données, pour qu'elles soient hiérarchisées au lieu de ne pas l'être.

    Aucun besoin de toucher à quoi que ce soit de nouveau. Tu dois juste changer ce que tu faisais déjà.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 5
    Points : 1
    Points
    1

    Par défaut

    Merci pour ta réponse rapide !

    Dans se cas je comprend pas bien, actuellement mes données sont inscrit dans le xml ligne par ligne à la suite. Et moi je veut pouvoir catégoriser mes données.
    Je peut sans XSD mais comment alors ?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    11 488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 488
    Points : 19 498
    Points
    19 498

    Par défaut

    De la même manière que tu l'avais fait ligne par ligne, mais cette fois pas ligne par ligne.

    C'est là que ça se voit qu'il faut montrer ton code, et donc qu'il aurait fallu le faire dès le début. Je t'avoue que je ne comprends pas trop ce qui t'a poussé à ne pas montrer ton code.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 5
    Points : 1
    Points
    1

    Par défaut

    Le code qui récupère mes données lorsque l'utilisateur à saisit touts les champs et qu'il clique sur "Save".


    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
    @FXML
    		public void saveData(ActionEvent event) throws JAXBException {
     
    			Data dat = new Data();
     
    			dat.setTypecore(coreType.getSelectionModel().getSelectedItem());
    			dat.setNumbercore(numberCore.getText());
     
     
    			dat.setTypel1i(l1iType.getSelectionModel().getSelectedItem());
    			dat.setSizel1i(l1iSize.getText());
    			dat.setAssocl1i(l1iAssoc.getText());
    			dat.setTechnol1i(l1iTechno.getText());
     
    			dat.setTypel1d(l1dType.getSelectionModel().getSelectedItem());
    			dat.setSizel1d(l1dSize.getText());
    			dat.setAssocl1d(l1dAssoc.getText());
    			dat.setTechnol1d(l1dTechno.getText());
     
    			dat.setTypel2(l2Type.getSelectionModel().getSelectedItem());
    			dat.setSizel2(l2Size.getText());
    			dat.setAssocl2(l2Assoc.getText());
    			dat.setTechnol2(l2Techno.getText());
     
    			dat.setTypel3(l3Type.getSelectionModel().getSelectedItem());
    			dat.setSizel3(l3Size.getText());
    			dat.setAssocl3(l3Assoc.getText());
    			dat.setTechnol3(l3Techno.getText());
     
     
    			try {
    				JAXBContext context = JAXBContext.newInstance(Data.class);
    				Marshaller marshaller = context.createMarshaller();
    				marshaller.marshal(dat, new File("Data.xml"));
    				marshaller.marshal(dat,System.out);
    			}catch(Exception e){
    				e.printStackTrace();
    			}
    Le résultat dans mon 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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?xml version="1.0" encoding="UTF-8" standalone="true"?>
     
    -<typecore>
     
    <assocl1d>275</assocl1d>
     
    <assocl1i>275</assocl1i>
     
    <assocl2>275</assocl2>
     
    <assocl3>275</assocl3>
     
    <numbercore>24525</numbercore>
     
    <sizel1d>275</sizel1d>
     
    <sizel1i>27</sizel1i>
     
    <sizel2>275</sizel2>
     
    <sizel3>275</sizel3>
     
    <technol1d>275</technol1d>
     
    <technol1i>275</technol1i>
     
    <technol2>275</technol2>
     
    <technol3>257</technol3>
     
    <typecore xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">BIG</typecore>
     
    <typel1d xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">STRAM</typel1d>
     
    <typel1i xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">STRAM</typel1i>
     
    <typel2 xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SRAM</typel2>
     
    <typel3 xsi:type="xs:string" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">SRAM</typel3>
     
    </typecore>

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    11 488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 488
    Points : 19 498
    Points
    19 498

    Par défaut

    'Va nous falloir ta classe Data, aussi.

    Et effectivement, si elle a été générée via JAXB à partir d'un fichier XSD que tu avais au départ, les choses vont être un peu différentes de ce que je disais.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 5
    Points : 1
    Points
    1

    Par défaut

    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
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    package application;
    import java.io.File;
     
    import javax.xml.bind.JAXBContext;
    import javax.xml.bind.Marshaller;
    import javax.xml.bind.annotation.XmlAttribute;
    import javax.xml.bind.annotation.XmlElement;
    import javax.xml.bind.annotation.XmlRootElement;
     
    import javax.xml.bind.annotation.XmlType;
    import javax.xml.transform.Result;
     
    @XmlRootElement(name= "typecore")
     
     
    public class Data {
     
    	private Object typecore;
    	private String numbercore;
    	private Object typel1i;
    	private String sizel1i;
    	private String assocl1i;
    	private String technol1i;
     
    	private Object typel1d;
    	private String sizel1d;
    	private String assocl1d;
    	private String technol1d;
     
    	private Object typel2;
    	private String sizel2;
    	private String assocl2;
    	private String technol2;
     
    	private Object typel3;
    	private String sizel3;
    	private String assocl3;
    	private String technol3;
     
    	public Data(Object typecore, String numbercore, Object typel1i, String sizel1i, String assocl1i, String technol1i,
    			Object typel1d, String sizel1d, String assocl1d, String technol1d, Object typel2, String sizel2,
    			String assocl2, String technol2, Object typel3, String sizel3, String assocl3, String technol3) {
    		super();
    		this.typecore = typecore;
    		this.numbercore = numbercore;
    		this.typel1i = typel1i;
    		this.sizel1i = sizel1i;
    		this.assocl1i = assocl1i;
    		this.technol1i = technol1i;
    		this.typel1d = typel1d;
    		this.sizel1d = sizel1d;
    		this.assocl1d = assocl1d;
    		this.technol1d = technol1d;
    		this.typel2 = typel2;
    		this.sizel2 = sizel2;
    		this.assocl2 = assocl2;
    		this.technol2 = technol2;
    		this.typel3 = typel3;
    		this.sizel3 = sizel3;
    		this.assocl3 = assocl3;
    		this.technol3 = technol3;
    	}
     
    	public Object getTypecore() {
    		return typecore;
    	}
    	public void setTypecore(Object typecore) {
    		this.typecore = typecore;
    	}
    	public String getNumbercore() {
    		return numbercore;
    	}
    	public void setNumbercore(String numbercore) {
    		this.numbercore = numbercore;
    	}
    	public Object getTypel1i() {
    		return typel1i;
    	}
    	public void setTypel1i(Object typel1i) {
    		this.typel1i = typel1i;
    	}
    	public String getSizel1i() {
    		return sizel1i;
    	}
    	public void setSizel1i(String sizel1i) {
    		this.sizel1i = sizel1i;
    	}
    	public String getAssocl1i() {
    		return assocl1i;
    	}
    	public void setAssocl1i(String assocl1i) {
    		this.assocl1i = assocl1i;
    	}
    	public String getTechnol1i() {
    		return technol1i;
    	}
    	public void setTechnol1i(String technol1i) {
    		this.technol1i = technol1i;
    	}
    	public Object getTypel1d() {
    		return typel1d;
    	}
    	public void setTypel1d(Object typel1d) {
    		this.typel1d = typel1d;
    	}
    	public String getSizel1d() {
    		return sizel1d;
    	}
    	public void setSizel1d(String sizel1d) {
    		this.sizel1d = sizel1d;
    	}
    	public String getAssocl1d() {
    		return assocl1d;
    	}
    	public void setAssocl1d(String assocl1d) {
    		this.assocl1d = assocl1d;
    	}
    	public String getTechnol1d() {
    		return technol1d;
    	}
    	public void setTechnol1d(String technol1d) {
    		this.technol1d = technol1d;
    	}
    	public Object getTypel2() {
    		return typel2;
    	}
    	public void setTypel2(Object typel2) {
    		this.typel2 = typel2;
    	}
    	public String getSizel2() {
    		return sizel2;
    	}
    	public void setSizel2(String sizel2) {
    		this.sizel2 = sizel2;
    	}
    	public String getAssocl2() {
    		return assocl2;
    	}
    	public void setAssocl2(String assocl2) {
    		this.assocl2 = assocl2;
    	}
    	public String getTechnol2() {
    		return technol2;
    	}
    	public void setTechnol2(String technol2) {
    		this.technol2 = technol2;
    	}
    	public Object getTypel3() {
    		return typel3;
    	}
    	public void setTypel3(Object typel3) {
    		this.typel3 = typel3;
    	}
    	public String getSizel3() {
    		return sizel3;
    	}
    	public void setSizel3(String sizel3) {
    		this.sizel3 = sizel3;
    	}
    	public String getAssocl3() {
    		return assocl3;
    	}
    	public void setAssocl3(String assocl3) {
    		this.assocl3 = assocl3;
    	}
    	public String getTechnol3() {
    		return technol3;
    	}
    	public void setTechnol3(String technol3) {
    		this.technol3 = technol3;
    	}
    	public Data() {
    		super();
    	}
    La classe Data c'est moi qui l'est faite, je n'est pas de XSD ou quoi (pas encore du moins). Excusez moi de pas avoir tout fournit avant je n'est pas du tout l'habitude de poster sur des forums de développement...

  8. #8
    Modérateur

    Profil pro
    Inscrit en
    septembre 2004
    Messages
    11 488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 488
    Points : 19 498
    Points
    19 498

    Par défaut

    Ok nickel.

    Donc là tu constates que c'est ta classe Data qui est complètement plate sans hiérarchisation. Elle contient toutes les informations que tu veux mettre dans ton XML, chacune sous forme de sa propre variable d'instance de la classe, donc toutes au même niveau.

    Pour hiérarchiser, il faudrait que ta classe Data contienne des variables d'autres classes, qui contiennent les informations à mettre à différents niveaux.

    Pour donner un exemple, il faudrait que tu nous parles du XML que tu voudrais avoir à la place de celui-là. Parce que je t'avoue que ton modèle de données est complètement obscur, donc on peut pas deviner.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : février 2018
    Messages : 5
    Points : 1
    Points
    1

    Par défaut

    Ok, alors sa je l'est déjà déterminer, donc je souhaiterais un xml sous cette forme la:

    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
     
    <TypeCoeur = "BIG">
             <L1i>
                    <Type>        </Type>
                    <Assoc>       </Assoc>
                    <Size>         </Size>
                    <Techno>      </Size>
              </L1i>
     
              <L2>
                    <Type>        </Type>
                    <Assoc>       </Assoc>
                    <Size>         </Size>
                    <Techno>      </Size>
              <L2>
    </TypeCoeur>

Discussions similaires

  1. Utiliser le XSD pour lire un fichier XML
    Par flentbock dans le forum C#
    Réponses: 0
    Dernier message: 20/04/2016, 19h34
  2. Utilisation des XSD dans un WSDL
    Par gannher dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 23/12/2008, 10h48
  3. Problème de d'utilisation du xsd
    Par pzou dans le forum Valider
    Réponses: 1
    Dernier message: 30/03/2006, 16h51
  4. [XSD] Utilisation de groupes de balises xhtml
    Par Kehel dans le forum Valider
    Réponses: 7
    Dernier message: 30/01/2004, 09h55

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