约的目的=“#this” -

时间:2012-02-21 04:06:09

标签: rdf rdfa

在学习RDFa 时(在这里有其他人的帮助,我可能会补充)我有时会看到使用about =“#this”指定的主题,而不是约=“ someOtherURI < / em>“甚至特别关于=”#me“(我稍后可能会问)。现在,我刚刚向我解释了ab​​out =“#anythingElse”创建了一个引用实体'anythingElse'的相对URI,给出了一个与当前基URI相当的完整URI,并在末尾添加了“#anythingElse”片段。

这个问题不同。 ... 我希望。使用about =“#this”会导致RDF主题成为包含该属性的整个XML或XHTML元素,包括任何内容和子元素吗?即使无论在何处找到或复制XML元素,换句话说,这里是我希望看到的内容的描述:

1)在RDF图中创建一个空白节点。

2)此空白节点包含或表示包含about =“#this”属性的开始标记与其结束标记之间的所有内容。该内容可以是几行文本,网页的整个部分(包含子元素,等等)或整个文档。

3)所有具有此主题的谓词和对象“三倍”(这是一个动词?)是否连接到图中的空白节点。

4)甚至可以为空白节点分配一个URI(通过单独的谓词和对象),该URI可能不是文档的当前基URI。

请注意,这与使用<BASE> HTML元素设置基本URI不同。这只是将默认基URI从与实际文档的URL匹配的URI更改为其他URI,以便完成相对URI。

我所说的是创建一个没有URI的主题节点,但可以稍后分配一个主题节点。

我也不是在谈论使用about =“_:someIDcode”手动将主题设置为空白节点。这并不表示包含XML元素的全部内容是所述空白节点的内容。它所做的就是创建一个完全空白的和空节点作为占位符。

我的希望是真的吗?或者这只是肆无忌惮的一厢情愿?

我希望它成立的原因是因为它似乎非常限制RDF主题只能引用整个单独的Web文档,而不是Web文档的某些部分。现在,我理解主题URI可以引用任何实体,真实或抽象。但是,在主题引用文档的狭隘范围内,我希望它能够引用文档的一部分,并且文档的这一部分不一定需要位于任何硬URL。

如果我的愿望不正确,那么我唯一的选择是用@ID属性标记我的XML元素,然后将主题设置为与文档的URL和指向此元素的片段匹配的URI?对我来说,这似乎仍然不满意,因为URI会随着文档URL的更改而改变,从而打破指向此内容的任何三元组。

2 个答案:

答案 0 :(得分:4)

RDFa主要只是一种将RDF嵌入到HTML中的机制,利用HTML的结构以方便语法和易于表达嵌套结构。它不是讨论HTML本身结构的一种方式。 about设置当前主题以生成该节点及其子节点的三元组,但这纯粹是为了解析的目的,并且实际上并不以任何方式表达关于HTML的结构信息。

#this只是一个通常用于引用整个文档的任意片段标识符,它本身没有特殊含义。最终它只是创建一个URI,它是RDF世界中某些任意事物的标识符。

类似地#me同样是一个任意的片段标识符,按惯例,它通常用于FOAF个文件中以引用文件所描述的人。同样,它最终只是一个用于在RDF中识别某些东西(在这种情况下通常是一个人)的URI

因此,在回答你的问题时,不会因为你的希望而发挥作用

答案 1 :(得分:0)

我已经找到了一种解决方法 - 对于这个希望自己存在XML或XHTML元素的问题,不管它可能放在哪个文档中。

使用以下内容:

<div about="_:anyUniqueIDForThisDocument"
     property="http://www.myDomain.com/mySpecialCitationPredicate"
     content="aUniqueCitationIDThatIControlTheSequenceOf">
    <!-- Put any other stuff in here. Then write a processor that looks for any XML
         elements it can find that are similarly marked with the same unique citation
         ID and treats them as if they are the same "floating" element regardless of
         where they are found.
     -->
</div>

这以圆周方式给出了相同的结果。您的RDF处理器将知道根据该唯一引用ID匹配它找到的所有XML元素。