我有一个 xml,它有带有 i:nil="true" 的节点。这意味着什么?
例如:
<FirstName i:nil="true" />
这是否意味着不同于:
<FirstName />
如果是这样,有什么区别?
这意味着 FirstName 为空
<FirstName i:nil="true" />
这意味着 FirstName = ""
<FirstName />
对 FirstName 所做的假设是字符串类型。
也许i:nil
实际上意味着xsi:nil
,这意味着FirstName
元素是空的,即没有任何内容——甚至没有""
。它指的是nillable
XML Schema 中的属性。
nil 是一个属性,在i
命名空间中定义。对于此 FirstName 节点,该属性的值为true
。
与此类似,只是名称和值不同:
<form name="test">...
这里,form
是节点的名称,类似于FirstName
您的代码,并且name
是一个值为“test”的属性,类似于您nil
的值为“true”的属性。
这意味着什么取决于读取 xml 文档的应用程序。
如果我冒昧地猜测一下,我会说这看起来像是定义某种模式的 xml 文档的一部分,并且 FirstName 字段可以有 NULL 或nil
值,表示为空或未知。