0

我对非常丰富的语义和基于 XML 的 TEI 语言感兴趣,但我相信如果它可以用 HTML 以可往返的方式编码,那么它可以因此受益于在基于 Web 的 HTML 编辑器中创建或存储在基于 HTML 的 wiki(至少是那些支持必要语义机制的)等。

我想知道 RDFa 是否可以作为一种机制在 HTML5 中完全表示 XML 方言(或多种方言),其标准是往返性和对 XML 元素的分层性质的认识(以及它的其他关键方面,如属性)。

我知道可以重载 data-* 属性、Microformats 或 Microdata,但是这些选项中没有一个允许既可以完全代表具有层次结构的 XML 方言,又可以免于关于机制的规范警告由独立于站点的软件使用(例如,如果希望创建一个搜索引擎以分层感知的方式搜索此类嵌入的 XML)。

如果 RDFa 不起作用,我认为最好的选择可能是 data-* 属性,因为可以很容易地做这样的事情来表示 XML:

<div data-xml-ns="http://www.tei-c.org/ns/1.0"
      data-xml-ns="html:http://www.w3.org/1999/xhtml" data-xml-element="div1"
      data-xml-attribute-value="xml:id=myDiv1ID">Some TEI div1 content
      and <div data-xml-element="div2">some div2 content</div></div>

(我知道这不是语义丰富的一个很好的例子,但只是展示了编码的本质。)

但同样,我更愿意避免对这种机制施加的限制,如HTML 规范中所述:

“这些属性不适用于独立于使用这些属性的站点的软件”

“这些属性旨在供站点自己的脚本使用,而不是公共可用元数据的通用扩展机制。”

如果 RDFa 可以解决这个问题,我会很感激一个例子,例如,上面的例子可能被编码以保留层次关系等。

4

2 回答 2

1
于 2014-01-09T15:09:16.240 回答
0

它应该可以工作,但不是“HTML5”,您可以使用自己的DOMImplementation之类的东西,这将允许您根据需要操作文档,包括根据需要定义自己的文档类型,以处理特殊的根据需要标记和属性。DOMParser是另一种选择,但不如后者强大。您也应该能够在 iFrame 中渲染其中任何一个,以便将其更多地用作视图,并且父级可以通过常规 HTML 方法进行操作。

于 2013-12-27T19:31:58.150 回答