Bonjour et merci de votre attention.
Je travaille sur un programme qui utilise un fichier XSD de référence pour valider un fichier XML généré par un programme Java. Pour l'établissement des XSD, j'utilise le logiciel XMLSpy, de Altova, et je me base sur les fichiers XML générés précédemment d'une autre façon que par Java.
Or, il y a des attributs que je n'arrive pas à définir : j'ai un élément qui possède des fils, mais cet élément possède un attribut ID et un attribut vraisemblablement propre au programme en plus de son nom.
Voici le fichier XML que je dois valider :
voici le fichier XSD que j'ai essayé de faire :<toto id="#" modbusaddr="">
<name>{default_string}</name>
<autre> ... </autre>
mais j'obtiens les erreurs suivantes :<xs:element name="toto" id="#" modbusaddr="">
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string" default="{default_string}" nillable="false"/>
<xs:element name="autre" nillable="false">
value '#' is not allowed for attribute id. Hint : a valid would be ID_1.
attribute "modbusaddr" is not allowed in element <xs:element>. Hint : attribute is neither explicitly allowed not covered by attribute wildcard.
Apparemment, pour l'attribut "modbusaddr" ça me semble valable que le logiciel ne valide pas, puisque c'est un nom propre au projet et non défini dans les types. (Faut-t-il le définir ? j'ai déja défini un type pour les adresses IP donc c'est faisable).
Voila, merci une nouvelle fois si vous avez des pistes. Je cherche également une solution de part le net.
![]()
Partager