Что означает i: nil=“true”?
Вопрос
У меня есть xml, и в нем есть узлы с i: nil="true" в нем.Что это значит?
Например:
<FirstName i:nil="true" />
Означает ли это что-то отличное от:
<FirstName />
Если да, то в чем разница?
Решение
Это означает, что FirstName равно null
<FirstName i:nil="true" />
Это означает FirstName = ""
<FirstName />
Предположение, сделанное в отношении FirstName, имеет строковый тип.
Другие советы
Может быть i:nil
на самом деле означает xsi:nil
, это означает , что FirstName
элемент пуст, т. е.не имеет Любой содержание - даже не ""
.Это относится к nillable
свойство в XML-схеме.
nil - это атрибут, определенный в i
пространство имен.Для этого узла FirstName атрибут имеет значение true
.
Это похоже на это, только с другими именами и значениями:
<form name="test">...
Здесь, form
это имя узла, похожее на FirstName
из вашего кода, и name
является атрибутом со значением "test", аналогичным вашему атрибуту nil
со значением "true".
Что это означает, зависит от приложения, считывающего XML-документ.
Если бы я рискнул предположить, я бы сказал, что это выглядит как часть xml-документа, определяющего какую-то схему, и что поле FirstName может иметь значение NULL или nil
значение, означающее пустое или неизвестное.