<name>标签是否有@nullValue且内部仍有文本?

时间:2017-11-21 15:10:52

标签: hl7 cda

我正在处理的CCDA生成器的当前实现,当找不到某些名称时,在<name> tag(在标题部分,其中没有<text>可用)上打印消息:

<name>No information</name>

我知道表达未找到信息的正确方法是通过@nullFlavor属性:

<name nullFlavor="NI" />

但是现在应用程序上有一个组件可以读取标签上的值,并在人类可读的CCDA文档视图中显示它。如果我只使用@nullflavor,则显示此名称的字段将为空,而不是“无信息”。

为了避免更改这样的组件,我正在考虑添加@nullFlavor属性,但仍然在那里留言:

<name nullFlavor="NI">No information</name>

我知道这在语法上是正确的,因为我已经用reference validator测试了它并且它通过了。我的问题是:从语义的角度来看,它是否有效?

2 个答案:

答案 0 :(得分:2)

是的,它有效。有问题的特定规范 - v3抽象数据类型,简单说:

invariant(ST x) where x.nonNull {
   x.headCharacter.notEmpty;
};

因此,如果没有nullFlavor,则必须有一些内容。但反向规则未适用;如果有nullFlavor

,可以有内容

答案 1 :(得分:0)

虽然没有限制,但我的观点是,这不是一个好策略。我知道你对这个组件有一个限制,但是,当你构建一个CDA时,重要的是要记住它是与每个人共享的东西,我永远不会期望在{{1}内找到内容归因元素。