1

我正在尝试解析具有以下条目的 xml 文件:

<ANNOTATION_VALUE>&lt;unk&gt;</ANNOTATION_VALUE>
<TIER LINGUISTIC_TYPE_REF="default-lt" TIER_ID="&lt;Target>"/>

不幸的是,XML::Smart 看到这些并认为它们是 CDATA 标记。当我保存 xml 数据时,它变成了这样:

<ANNOTATION_VALUE><![CDATA[<unk>]]></ANNOTATION_VALUE>
<TIER LINGUISTIC_TYPE_REF="default-lt">
<TIER_ID><![CDATA[<Target>]]></TIER_ID>
</TIER>

我试图通过在所有节点上设置 set_cdata(false) 来阻止这种情况,但它似乎没有改变任何东西:

$xml->{TIER}{TIER_ID}->set_cdata(0);
$xml->{ANNOTATION_VALUE}->set_cdata(0);

如何让 XML::Smart 停止将这些作为 CDATA 读取?

4

0 回答 0