第十六章 处理空字符串和 Null 值

124 阅读2分钟

第十六章 处理空字符串和 Null 值

类和属性参数

  • XMLUSEEMPTYELEMENT

  • XMLIGNORENULL

  • XMLNILNOOBJECT

  • XMLNIL

空字符串和 Null 值的默认映射

下表总结了空字符串和 null 值的默认 XML 映射。请注意,XML 映射与 SQL 映射类似,此处也显示了 SQL 映射以进行比较。

空字符串和 Null 值的默认 SQLXML 映射

InterSystems IRIS ValueDefault Projection to XMLProjection to SQL
$char(0)空元素或属性SQL 空字符串
""No projectionSQL NULL value

导出值

下表列出了对于作为元素映射到 XML 的属性,可以将空字符串和 null 值从支持 XML 的对象导出到 XML 文档的方法:

导出作为元素映射到 XML 的属性的空字符串和 Null

Details of XML-Enabled ClassProperty equals ""Property equals $char(0)
类指定 XMLIGNORENULLXMLNIL 的默认值导出的 XML 文档不包含与此属性对应的元素导出的文档包含与此属性对应的空元素;参见本小节
类指定 XMLIGNORENULL=1导出的文档包含与此属性对应的空元素;参见本小节导出的文档包含与此属性对应的空元素;参见本小节
类指定 XMLNIL=1(并且 XMLIGNORENULL 不是 1导出的文档包含与此属性对应的空元素,并且此空元素指定 xsi:nil="true"导出的文档包含与此属性对应的空元素;参见本小节

映射为属性的属性的详细信息类似:

导出作为属性投影到 XML 的属性的空字符串和 Null

Details of XML-Enabled ClassProperty equals ""Property equals $char(0)
类指定此表中描述的参数的默认值导出的 XML 文档不包含与此属性对应的属性导出的文档包含与此属性对应的空属性
XMLIGNORENULL=1导出的文档包含与此属性对应的空属性。例如:PropName=""导出的文档包含与此属性对应的空属性
XMLNIL=1(并且 XMLIGNORENULL 不是 1))导出的 XML 文档不包含与此属性对应的属性(与默认场景相同)导出的文档包含与此属性对应的空属性

控制空元素的形式

默认情况下, IRIS 写入带有开始标记和结束标记的空元素。例如:

<PropName></PropName>

可以改为让 IRIS 写入一个自关闭空元素(这是等效的)。例如:

<PropName />

为此,请将 XMLUSEMPTYELEMENT 类参数指定为 1。此参数的默认值是 0