Bonjour, j'essaie de faire valider un xml en java. Lorsque mon xml ressemble à ceci:
Le processus de validation est bien enclenché, j'obtiens " cvc-complex-type.4: Attribute 'id' must appear on element 'personList'.", ce qui est bien le résultat souhaité. Cependant je me pose des questions quand à l'utilité de cette double déclaration xsi=schemaLocation, qui fait pointer le schéma sur lui même.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?xml version="1.0" encoding="UTF-8"?> <personList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.health.fgov.be/person http://www.health.fgov.be/person" xmlns="http://www.health.fgov.be/person"/>
Si je la retire, et que je finis donc avec ce xml ci:
Le comportement est différent, j'obtiens "cvc-elt.1: Cannot find the declaration of element 'personList'", ce qui n'est pas le comportement voulu. Quelqu'un peut-il m'expliquer pourquoi cette déclaration xsi est indispensable? J'ai trouvé des tas d'exemple de xml sur le net ou l'on mettait seulement le namespace dans la déclaration et ca sufissait, par toute cette tartine de xsi.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <?xml version="1.0" encoding="UTF-8"?> <personList xmlns="http://www.health.fgov.be/person"/>
Partager