1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut Soucis d'erreur du code (validation)

    Bonjour à tous,

    je viens de commencer xml, pour mon projet je dois passer un code DTD en un code schéma. Mais lorsque j'ai fais mon code j'ai une erreur du type :
    Nom : Capture d’écran 2017-02-13 à 14.50.59.png
Affichages : 36
Taille : 60,3 Ko

    Voici mon fichier de base a exploité (un aperçu) :
    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
     
    <?xml version="1.0" encoding="utf-8"?>
    <company>
    	<cmp_info>
    		<code>EBAY</code>
    		<name>eBay Inc.</name>
    	</cmp_info>
    	<brokers>
    		<broker>
    			<bkr_info>
    				<code>1</code>
    			</bkr_info>
    			<orders>
    				<sell id="100246" day="2001-06-01" time="12:31:31" msec="20" size="100" price="60.34" rec="153944"/>
    				<sell id="100365" day="2001-06-01" time="12:32:22" msec="740" size="100" price="61" rec="154136"/>
    				<sell id="100966" day="2001-06-01" time="12:36:48" msec="860" size="46" price="60.35" rec="155061"/>
    				<sell id="101026" day="2001-06-01" time="12:37:12" msec="410" size="300" price="60.44" rec="155142"/>
    				<sell id="101397" day="2001-06-01" time="12:38:36" msec="230" size="100" price="60.5" rec="155691"/>
    				<sell id="101651" day="2001-06-01" time="12:39:27" msec="160" size="500" price="60.55" rec="156056"/>
    voici le code 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
     
    <!ELEMENT company (cmp_info, brokers)>
     
    <!ELEMENT cmp_info (code, name)>
     
    <!ELEMENT brokers (broker)*>
     
    <!ELEMENT broker (bkr_info, orders)>
    <!ELEMENT bkr_info (code, name?)>
     
    <!ELEMENT code (#PCDATA)>
    <!ELEMENT name (#PCDATA)>
     
    <!ELEMENT orders (sell | buy)*>
     
    <!ELEMENT sell EMPTY>
    <!ATTLIST sell
    	  id CDATA #REQUIRED
    	  day CDATA #REQUIRED
    	  time CDATA #REQUIRED
    	  msec CDATA #REQUIRED
    	  size CDATA #REQUIRED
    	  price CDATA #REQUIRED
    	  rec CDATA #REQUIRED>
     
    <!ELEMENT buy EMPTY>
    <!ATTLIST buy
    	  id CDATA #REQUIRED
    	  day CDATA #REQUIRED
    	  time CDATA #REQUIRED
    	  msec CDATA #REQUIRED
    	  size CDATA #REQUIRED
    	  price CDATA #REQUIRED
    	  rec CDATA #REQUIRED>
    et voici mon code schéma :
    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
     
    	<xs:element name= "company">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref= "cmp_info"/>
    				<xs:element ref= "brokers"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "cmp_info">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element name="code" type="xs:string"/>
    				<xs:element name="name" type="xs:string"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "brokers">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref="broker" minOccurs="0" maxOccurs= "unbounded"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "broker">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref="bkr_info"/>
    				<xs:element ref="orders"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "bkr_info">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element name="code" type= "xs:int"/>
    				<xs:element name="name" type= "xs:string" minOccurs= "0" maxOccurs= "1"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "orders">
    		<xs:complexType>
    			<xs:choice>
    				<xs:element ref="sell" minOuccurs= "0" maxOccurs= "unbounded"/>
    				<xs:element ref="buy" minOccurs= "0" maxOccurs= "unbounded"/>
    			</xs:choice>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="sell">
    		<xs:complexType>
    			<xs:attribute name="id" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="day" default= "2001-06-01"/>
    				<xs:simpleType>
    					<xs:restriction base= "xs:date">
    						<xs:pattern value="\d{4}[/]\d{2}[/]\d{2}"/>
    					<xs:length value="10"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="time" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:time">
    						<xs:pattern value= "[0-2][0-9]:[0-5][0-9]:[0-5][0-9]"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="msec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="size" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="price" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:float">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="rec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    		</xs:complexType>
    	</xs:element>
     
     
    	<xs:element name="buy">
    		<xs:complexType>
    			<xs:attribute name="id" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="day" default= "2001-06-01"/>
    				<xs:simpleType>
    					<xs:restriction base= "xs:date">
    						<xs:pattern value="\d{4}[/]\d{2}[/]\d{2}"/>
    					<xs:length value="10"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="time" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:time">
    						<xs:pattern value= "[0-2][0-9]:[0-5][0-9]:[0-5][0-9]"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="msec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="size" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="price" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:float">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    			<xs:attribute name="rec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    		</xs:complexType>
    	</xs:element>	
    </xs:schema>

    Pouvez-vous m'aider a trouver mon problème. je pense que cela viens des mes variables sell et buy avec les attributs. je ne sais pas si j'ai le droit de mettre des attribut comme ça a la suite.
    Car je veux mettre des restrictions comme elle sont mises.

    car j'ai tenté le code suivant sans toutes mes restrictions mais j'ai aussi un autre problème
    Nom : 16729689_10154613015782013_1983627764_n.png
Affichages : 38
Taille : 58,1 Ko

    avec le code suivant plus simple mais qui ne marche pas non plus :
    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
     
    	<xs:element name= "company">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref= "cmp_info"/>
    				<xs:element ref= "brokers"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "cmp_info">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element name="code" type="xs:string"/>
    				<xs:element name="name" type="xs:string"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "brokers">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref="broker" minOccurs="0" maxOccurs= "unbounded"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "broker">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref="bkr_info"/>
    				<xs:element ref="orders"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "bkr_info">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element name="code" type= "xs:int"/>
    				<xs:element name="name" type= "xs:string" minOccurs= "0" maxOccurs= "1"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "orders">
    		<xs:complexType>
    			<xs:choice>
    				<xs:element ref="sell" minOccurs= "0" maxOccurs= "unbounded"/>
    				<xs:element ref="buy" minOccurs= "0" maxOccurs= "unbounded"/>
    			</xs:choice>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="sell">
    		<xs:complexType>
    			<xs:attribute name="id" type="xs:string" use="required"/>
    			<xs:attribute name="day" type="xs:date" default="2001-06-01"/>
    			<xs:attribute name="time" type="xs:time" use="required"/>
    			<xs:attribute name="msec" type="xs:int" use="required"/>
    			<xs:attribute name="size" type="xs:int" use="required"/>
    			<xs:attribute name="price" type="xs:float" use="required"/>
    			<xs:attribute name="rec" type="xs:int" use="required"/>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="buy">
    		<xs:complexType>
    			<xs:attribute name="id" type="xs:string" use="required"/>
    			<xs:attribute name="day" type="xs:date" default="2001-06-01"/>
    			<xs:attribute name="time" type="xs:time" use="required"/>
    			<xs:attribute name="msec" type="xs:int" use="required"/>
    			<xs:attribute name="size" type="xs:int" use="required"/>
    			<xs:attribute name="price" type="xs:float" use="required"/>
    			<xs:attribute name="rec" type="xs:int" use="required"/>
    		</xs:complexType>
    	</xs:element>
    </xs:schema>

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut

    j'ai réussi a faire le code du bas en faisant un liste d'attribut mais sans leur assigné de restriction particulière

    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
     
    	<xs:element name= "company">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref= "cmp_info"/>
    				<xs:element ref= "brokers"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "cmp_info">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element name="code" type="xs:string"/>
    				<xs:element name="name" type="xs:string"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "brokers">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref="broker" minOccurs="0" maxOccurs= "unbounded"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "broker">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element ref="bkr_info"/>
    				<xs:element ref="orders"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "bkr_info">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:element name="code" type= "xs:int"/>
    				<xs:element name="name" type= "xs:string" minOccurs= "0" maxOccurs= "1"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name= "orders">
    		<xs:complexType>
    			<xs:choice maxOccurs= "unbounded" minOccurs= "0">
    				<xs:element ref="sell"/>
    				<xs:element ref="buy"/>
    			</xs:choice>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="sell">
    		<xs:complexType>
    			<xs:simpleContent>
    				<xs:extension base= "xs:string">
    					<xs:attribute name="id" type="xs:int" use="required"/>
    					<xs:attribute name="day" type="xs:date" default="2001-06-01"/>
    					<xs:attribute name="time" type="xs:time" use="required"/>
    					<xs:attribute name="msec" type="xs:int" use="required"/>
    					<xs:attribute name="size" type="xs:int" use="required"/>
    					<xs:attribute name="price" type="xs:float" use="required"/>
    					<xs:attribute name="rec" type="xs:int" use="required"/>
    				</xs:extension>
    			</xs:simpleContent>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="buy">
    		<xs:complexType>
    			<xs:simpleContent>
    				<xs:extension base= "xs:string">
    					<xs:attribute name="id" type="xs:int" use="required"/>
    					<xs:attribute name="day" type="xs:date" default="2001-06-01"/>
    					<xs:attribute name="time" type="xs:time" use="required"/>
    					<xs:attribute name="msec" type="xs:int" use="required"/>
    					<xs:attribute name="size" type="xs:int" use="required"/>
    					<xs:attribute name="price" type="xs:float" use="required"/>
    					<xs:attribute name="rec" type="xs:int" use="required"/>
    				</xs:extension>
    			</xs:simpleContent>
    		</xs:complexType>
    	</xs:element>
    </xs:schema>


    Mais je n'arrive pas a faire celui du haut avec des restrictions sur chaque paramètre j'ai tenter cela mais sans succès (fin du code).
    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
    	<xs:element name="sell">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:attribute ref= "id"/>
    				<xs:attribute ref= "day"/>
    				<xs:attribute ref= "time"/>
    				<xs:attribute ref= "msec"/>
    				<xs:attribute ref= "size"/>
    				<xs:attribute ref= "price"/>
    				<xs:attribute ref= "rec"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    			<xs:attribute name="id" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="day" default= "2001-06-01"/>
    				<xs:simpleType>
    					<xs:restriction base= "xs:date">
    						<xs:pattern value="\d{4}[/]\d{2}[/]\d{2}"/>
    						<xs:length value="10"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="time" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:time">
    						<xs:pattern value= "[0-2][0-9]:[0-5][0-9]:[0-5][0-9]"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="msec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="size" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="price" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:float">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="rec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
     
    	<xs:element name="buy">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:attribute ref= "id"/>
    				<xs:attribute ref= "day"/>
    				<xs:attribute ref= "time"/>
    				<xs:attribute ref= "msec"/>
    				<xs:attribute ref= "size"/>
    				<xs:attribute ref= "price"/>
    				<xs:attribute ref= "rec"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    			<xs:attribute name="id" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="day" default= "2001-06-01"/>
    				<xs:simpleType>
    					<xs:restriction base= "xs:date">
    						<xs:pattern value="\d{4}[/]\d{2}[/]\d{2}"/>
    						<xs:length value="10"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="time" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:time">
    						<xs:pattern value= "[0-2][0-9]:[0-5][0-9]:[0-5][0-9]"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="msec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="size" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="price" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:float">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="rec" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
     
    </xs:schema>

    vous seriez sympa de m'aider merci ^^

  3. #3
    Modérateur

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

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 201
    Points : 18 959
    Points
    18 959

    Par défaut

    Hello,

    c'est quoi, ça, le code du haut, le code du bas ?

    Évite de nous montrer des images et de dire que quelque chose ne va pas.
    Montre-nous des vrais messages d'erreur texte et explique-nous pourquoi ils te dérangent.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut

    Bonjour thelvin,

    Le code du haut et le code du bas doivent être les mêmes (c'est à dire être valide pour le même fichier de base xml)

    Le code du haut marche très bien.

    Le but de celui du dessous est d'utiliser des restrictions plus complexe que celui du haut. je veux juste changer cette partie la de mon code

    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
     <xs:element name="sell">
    		<xs:complexType>
    			<xs:simpleContent>
    				<xs:extension base= "xs:string">
    					<xs:attribute name="id" type="xs:int" use="required"/>
    					<xs:attribute name="day" type="xs:date" default="2001-06-01"/>
    					<xs:attribute name="time" type="xs:time" use="required"/>
    					<xs:attribute name="msec" type="xs:int" use="required"/>
    					<xs:attribute name="size" type="xs:int" use="required"/>
    					<xs:attribute name="price" type="xs:float" use="required"/>
    					<xs:attribute name="rec" type="xs:int" use="required"/>
    				</xs:extension>
    			</xs:simpleContent>
    		</xs:complexType>
    	</xs:element>
    pour pouvoir mettre des style de restriction tel que :
    <xs:restriction base= "xs:int">
    <xs:pattern value= "[0-9]*"/>
    </xs:restriction>
    ou bien <xs:restriction base= "xs:time">
    <xs:pattern value= "[0-2][0-9]:[0-5][0-9]:[0-5][0-9]"/>
    </xs:restriction>

    et cela sur chacun des attributs présent ( id, price,rec, ...) 7 au total.

    Suis-je assez clair dans mon explication ?

    Merci de ton aide

  5. #5
    Membre chevronné
    Inscrit en
    octobre 2011
    Messages
    1 071
    Détails du profil
    Informations forums :
    Inscription : octobre 2011
    Messages : 1 071
    Points : 1 853
    Points
    1 853

    Par défaut

    [0] Cela ne définit pas un élément vide de sell ou buy. Si vous voulez qu'ils soient vide, soit comme ça:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <xs:element name="sell">
        <xs:complexType>
            <xs:complexContent>
                <xs:restriction base= "xs:anyType">
                    <xs:attribute name="id" type="xs:int" use="required"/>
                    <!-- etc xs:attribute ... -->
                </xs:restriction>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>
    ou bien comme ça un peu plus simplement:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <xs:element name="sell">
        <xs:complexType>
            <xs:attribute name="id" type="xs:int" use="required"/>
            <!-- etc xs:attribute ... -->
        </xs:complexType>
    </xs:element>
    [1]
    <xs:restriction base= "xs:int">
    <xs:pattern value= "[0-9]*"/>
    </xs:restriction>
    Ce n'est pas tout à fait bien. Le pattern s'implique une valeur "" est admissible pourtant elle est rejetée par xs:int. On pourrait plus simplement utiliser le type xs:nonNegativeInteger à sa place, comme ça.
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    <xs:attribute name="id" type="xs:nonNegativeInteger" use="required"/>
    Sinon, la restriction comme montré peut marcher aussi, quel est le problème pour ça?
    [2]
    ou bien <xs:restriction base= "xs:time">
    <xs:pattern value= "[0-2][0-9]:[0-5][0-9]:[0-5][0-9]"/>
    </xs:restriction>
    Si vous voulez...
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <xs:restriction base="xs:time">
    <xs:pattern value="([0-1][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]" />
    </xs:restriction>
    Mais c'est juste une amélioration, pas fondamentalement un reniement total.
    [3]
    <xs:attribute name="day" default= "2001-06-01"/>
    <xs:simpleType>
    <xs:restriction base= "xs:date">
    <xs:pattern value="\d{4}[/]\d{2}[/]\d{2}"/>
    <xs:length value="10"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:attribute>
    Ceci est erroné. La première ligne est fermée trop tôt, probablement une erreur de frappe. Mais le pattern est contraditoire avec le séparateur [/], ce qui devrait être [-]. Et puis, il ne faut pas mettre xs:length après ce qui est inadmissible en principle non plus.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut

    Merci pour les informations, qui sont non négligeable, cependant comment puis-je faire pour assigner le ref id/price/time .... à mon sell ou à mon bid en fonction des cas.

    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
    <xs:element name= "orders">
    		<xs:complexType>
    			<xs:choice maxOccurs= "unbounded" minOccurs= "0">
    				<xs:element ref="sell"/>
    				<xs:element ref="buy"/>
    			</xs:choice>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="sell">
    		<xs:complexType>
    			<xs:sequence>
    				<xs:attribute ref= "id"/>
    				<xs:attribute ref= "day"/>
    				<xs:attribute ref= "time"/>
    				<xs:attribute ref= "msec"/>
    				<xs:attribute ref= "size"/>
    				<xs:attribute ref= "price"/>
    				<xs:attribute ref= "rec"/>
    			</xs:sequence>
    		</xs:complexType>
    	</xs:element>
     
    			<xs:attribute name="id" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="day" default= "2001-06-01">
    				<xs:simpleType>
    					<xs:restriction base= "xs:date">
    						<xs:pattern value="\d{4}[-]\d{2}[-]\d{2}"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    je voudrais que a la place de mon sell il y ai soit sell soit bid en fonction des cas.. Car je ne peux pas l'écrire 2 fois sinon il va me dire que j'utilise 2 fois le même nom ..
    comment puis-je faire ?

    De plus a-ton le droit de faire ceci avec les attribut ( xs:attribute ref = ...)

  7. #7
    Membre chevronné
    Inscrit en
    octobre 2011
    Messages
    1 071
    Détails du profil
    Informations forums :
    Inscription : octobre 2011
    Messages : 1 071
    Points : 1 853
    Points
    1 853

    Par défaut

    Définir les xs:attribute's comme éléments globaux de xsd - il me semble vous les avez fait dans le dernier post et c'est bon.

    Puis réferez-les dans un élément nouveau de xs:complexType comme ça:
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <xs:complexType name="sellbuyType">
        <xs:attribute ref="id"/>
        <xs:attribute ref="day"/>
        <xs:attribute ref="time"/>
        <xs:attribute ref="msec"/>
        <xs:attribute ref="size"/>
        <xs:attribute ref="price"/>
        <xs:attribute ref="rec"/>
    </xs:complexType>

    Attention: il n'y a pas xs:sequence enveloppant les xs:attribute's. Les lignes #12 et #20 sont fausses: ça ne peut pas se faire.

    Et puis, pour définir sell et buy, on peut faire comme ça en tant qu'élément global de xsd.
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <xs:element name="sell" type="sellbuyType" />
    <xs:element name="buy" type="sellbuyType" />

    Et voilà, c'est fait.

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut

    J'ai réussi a faire le code finalement, mais ta méthode semble moins longue donc j'ai testé mais j'ai un petit soucis..

    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
    <xs:element name= "orders">
    		<xs:complexType>
    			<xs:choice maxOccurs= "unbounded" minOccurs= "0">
    				<xs:element ref="sell"/>
    				<xs:element ref="buy"/>
    			</xs:choice>
    		</xs:complexType>
    	</xs:element>
     
    	<xs:element name="buy" type="sellbuyType"/>
    	<xs:element name="sell" type="sellbuyType"/>
     
    		<xs:complexType name="sellbuyType">
    		    <xs:attribute ref="id"/>
    		    <xs:attribute ref="day"/>
    		    <xs:attribute ref="time"/>
    		    <xs:attribute ref="msec"/>
    		    <xs:attribute ref="size"/>
    		    <xs:attribute ref="price"/>
    		    <xs:attribute ref="rec"/>
    		</xs:complexType>
     
    			<xs:attribute name="id" use= "required">
    				<xs:simpleType>
    					<xs:restriction base= "xs:int">
    						<xs:pattern value= "[0-9]*"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
     
    			<xs:attribute name="day" default= "2001-06-01">
    				<xs:simpleType>
    					<xs:restriction base= "xs:date">
    						<xs:pattern value="\d{4}[-]\d{2}[-]\d{2}"/>
    					</xs:restriction>
    				</xs:simpleType>
    			</xs:attribute>
    avec cette erreur : Nom : Capture d’écran 2017-02-16 à 12.10.42.png
Affichages : 23
Taille : 128,2 Ko

    je comprend pas bien ..

  9. #9
    Modérateur

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

    Informations forums :
    Inscription : septembre 2004
    Messages : 11 201
    Points : 18 959
    Points
    18 959

    Par défaut

    Hello,

    pour répondre à ta question d'il y a un moment, oui c'est beaucoup plus clair. Essaie juste de ne pas intervertir "buy" et "bid" quand tu nous parles, on va pas deviner que c'est la même chose.

    Citation Envoyé par Valentiiiin3
    je comprend pas bien ..
    Je comprends, l'anglais c'est difficile, mais il faut s'y mettre quand même.

    Essaie d'y aller petit à petit. Pour commencer, si tu essayais de traduire en français tous ces messages d'erreur ? Peut-être que tu comprendras mieux, déjà ? Ensuite, tu verras bien où ça te mènera.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut

    Citation Envoyé par thelvin Voir le message

    Je comprends, l'anglais c'est difficile, mais il faut s'y mettre quand même.

    Essaie d'y aller petit à petit. Pour commencer, si tu essayais de traduire en français tous ces messages d'erreur ? Peut-être que tu comprendras mieux, déjà ? Ensuite, tu verras bien où ça te mènera.

    Je comprend très bien l'anglais c'est pas le soucis, juste que je suis assez débutant niveau xml, et du coup je comprend pas vraiment comment résoudre ce problème ^^

  11. #11
    Membre chevronné
    Inscrit en
    octobre 2011
    Messages
    1 071
    Détails du profil
    Informations forums :
    Inscription : octobre 2011
    Messages : 1 071
    Points : 1 853
    Points
    1 853

    Par défaut

    Oui, je n'y avais pas trop regardé ce que vous mettez dans xs:attribute's. Comme la question est soulevée, j'y ragarde et c'est vari ça ne va pas trop. Enlevez tous attributs dans les xs;attribute globaux, use, default etc et les remettez dans les endroits où les attributes sont réferés. Ceci montre ce que je veux dire.
    Code xml : 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
    <xs:complexType name="sellbuyType">
        <xs:attribute ref="id" use="required" />
        <xs:attribute ref="day" default= "2001-06-01" />
        <!-- etc etc xs:attribute -->
    </xs:complexType>
     
    <!-- etc etc... -->
     
    <xs:attribute name="id">
        <xs:simpleType>
            <xs:restriction base= "xs:int">
                <xs:pattern value= "[0-9]*"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="day">
        <xs:simpleType>
            <xs:restriction base= "xs:date">
                <xs:pattern value="\d{4}[-]\d{2}[-]\d{2}"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:attribute>
     
    <!-- etc etc... -->

  12. #12
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    janvier 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : janvier 2017
    Messages : 13
    Points : 7
    Points
    7

    Par défaut

    Citation Envoyé par tsuji Voir le message
    Oui, je n'y avais pas trop regardé ce que vous mettez dans xs:attribute's. Comme la question est soulevée, j'y ragarde et c'est vari ça ne va pas trop. Enlevez tous attributs dans les xs;attribute globaux, use, default etc et les remettez dans les endroits où les attributes sont réferés.

    Merci cela marche très bien et réduit considérablement le nombre de ligne que j'avais merci beaucoup de votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Toutes versions] Erreurs 13 et soucis de portabilité des codes lors de changements de version
    Par Didier Gonard dans le forum Contribuez
    Réponses: 0
    Dernier message: 17/02/2011, 15h30
  2. Réponses: 7
    Dernier message: 07/03/2006, 09h34
  3. Erreur de code
    Par petdelascar dans le forum C
    Réponses: 7
    Dernier message: 12/12/2005, 08h15
  4. Soucis de récupération de code
    Par sheira dans le forum ASP
    Réponses: 16
    Dernier message: 06/12/2004, 11h42

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