在XML元素中使用HTML / XHTML内容的最佳实践

时间:2009-09-25 13:08:02

标签: html xml

任何人都知道在XML元素中使用HTML / XHTML内容的最佳实践或一般建议是什么?是最好使用CDATA还是HTML编码HTML?

4 个答案:

答案 0 :(得分:6)

我会推荐CDATA;它将使XML更小,更易于人类阅读。

但是,请确保将]]>转义为]]>]]<![CDATA[

编辑:正如其他人所说,如果你控制你嵌入的HTML,并且你知道总是是有效的XHTML,那么你应该直接嵌套而不逃避。

但是,如果您不控制HTML,我可能不会建议。即使它现在有效,它可能有一天会变得无效,并且你不希望你的系统因此而突然中断。显然,这取决于具体情况和用例;如果您想要更精确的推荐,请提供更多详细信息。

答案 1 :(得分:2)

第三种选择:通常嵌入XML的HTML比编码它更灵活,或者将其嵌入CDATA中。它允许解析器以高级方式处理整个文档,包括HTML。它允许在包含XML和HTML数据上使用XSL转换。

所以我建议直接嵌入它,除非你的HTML不是有效的XML,在这种情况下编码或CDATA是唯一的选择。

答案 2 :(得分:1)

由于大量HTML不正确地形成为XML(即缺少结束标记,如&lt; / p&gt;,&lt; / li&gt;和&lt; br /&gt;),因此简单地使用CDATA包装器。

这取决于您从哪里获取HTML。如果你自己生成它,你可以完全控制它的形式,但是如果你从其他一些来源中提取它(例如,从其他网站中提取它)你可能没有把它重新格式化的奢侈符合XHTML标准。

答案 3 :(得分:-1)

我会直接在文档中使用命名空间的XHTML(而不是“作为字符串”,这是你建议提供的两个选项)。

如果你不这样做,那么你使用哪一个没有区别,