Qu'est-ce que i: nil = & # 8220; true & # 8221; signifier?
Question
J'ai un fichier XML et des noeuds avec i: nil = " true " en elle. Qu'est-ce que cela signifie?
Par exemple:
<FirstName i:nil="true" />
Cela signifie-t-il autre chose que:
<FirstName />
Si oui, quelle est la différence?
La solution
Cela signifie que FirstName est null
<FirstName i:nil="true" />
Cela signifie FirstName = """
<FirstName />
L'hypothèse faite sur FirstName est du type chaîne.
Autres conseils
Peut-être que i: nil
signifie en réalité xsi: nil
, cela signifie que l'élément FirstName
est vide, c'est-à-dire qu'il n'a pas tout contenu, pas même ""
". Il fait référence à la propriété nillable
dans XML Schema.
nil est un attribut, défini dans l'espace de noms i
. Pour ce noeud FirstName, l'attribut a la valeur true
.
Cela ressemble à ceci, mais avec des noms et des valeurs différentes:
<form name="test">...
Ici, formulaire
est le nom du noeud, similaire à Prénom
de votre code, et nom
est un attribut avec une valeur de "test", similaire à votre attribut nil
avec la valeur "true".
Ce que cela signifie dépend de l'application qui lit le document XML.
Si je devais tenter ma chance, je dirais que cela ressemble à un document XML définissant une sorte de schéma et que le champ Prénom peut avoir une valeur NULL ou nil
, signifiant vide ou inconnu.