XML::Twig注释

5

我有一个XML文档需要转换成另一种类型的XML。其中一些信息无法在我想要转换的XML中编码,因此我想将额外的信息存储为注释。但是,我无法弄清楚如何在XML :: Twig中创建注释节点。有人知道怎么做吗?


我们能否注释整个节点?例如,如何注释整个<fo:block font-family="Helvetica,Symbol,ZapfDingbats,Arial Unicode" font-size="10pt" font-weight="bold" line-height="12pt" padding-bottom="0.5mm" text-align="center">ABC</fo:block>?在这里,#COMMENT将不起作用。 - Nee
1个回答

8

一个注释只是一个带有标签名'#COMMENT'的普通元素。所以你可以使用XML::Twig::Elt->new( '#COMMENT', ' 我是一个注释 ');或者$elt_to_comment_on->insert_new_elt( before => '#COMMENT', ' 看啊,我是一个注释 ')来创建注释。

几点注意:

  • 当你使用XML::Twig处理XML并想要访问注释时,应该使用comments -> "process"选项创建twig。否则,注释不会生成为完整的元素,而是附加到最近的元素上。这使得处理它们更加困难(但通常使意外出现在注释中更容易被避免);

  • 你考虑过使用处理指令来代替注释吗?两者非常相似,但处理指令通常用于向其他应用程序传递信息。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接