2008-12-03 11 views
4

Une question liée à one I asked earlier ...commande d'attributs XML des espaces de noms

vérification Juste quelque chose: Si l'ordre des xmlns, xmlns: xsi et xsi: attributs schemaLocation dans une affaire de fichier XML? Je trouve que c'est le cas - au moins lors de l'utilisation de XML Notepad 2007 pour afficher le fichier XML. Par exemple (en supposant que mon fichier XML est légal selon mon schéma) cela donne aucune erreur (exemple 1):

<myroot 
    xmlns="http://www.someurl.com/ns/myroot" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.someurl.com/ns/myroot http://www.someurl.com/xml/schemas/myschema.xsd"> 

    <sometag>somecontent</sometag> 

</myroot> 

mais celui-ci fait (exemple 2):

<myroot 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.someurl.com/ns/myroot http://www.someurl.com/xml/schemas/myschema.xsd" 
    xmlns="http://www.someurl.com/ns/myroot"> 

    <sometag>somecontent</sometag> 

</myroot> 

(l'erreur étant que "sometag" est une entrée illégale selon le schéma).

Mon problème est que si j'utilise le code de mon autre question pour générer mon espace de noms et attributs de schéma puis-je obtenir attribue la sortie XML dans l'ordre Exemple 2 ...

Est-ce que l'attribut xmlns ont toujours être le premier dans la liste des attributs?

Répondre

1

Ah - je l'ai repéré mon problème ....

Le XML Je travaille actuellement sur est diaboliquement compliqué et je n'avais pas remarqué que j'avais inséré un xmlns = « » dans toute ma nœuds enfants. Une fois que je retire que le problème disparaît et l'ordre des attributs d'espace de noms ne fait aucune différence - ce qui est ce que je m'attendais ...

+1

Avez-vous déjà réussi à trier la commande? – Dan

Questions connexes