2012-02-21 34 views
2

在学习RDFa (在这里有其他人的优秀帮助,我可能会补充)我有时看到使用about =“#this”指定的主题,而不是about =“someOtherURI“或甚至特别关于=”#我“(我将在稍后询问)。现在,我刚刚向我解释过about =“#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而将默认基础URI从实际文档的URL与其他URI相匹配。

我在说什么创建了一个没有URI的主题节点,但可以在稍后分配一个主题节点。

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

我希望是真的吗?或者这只是一厢情愿的想法?

我希望它是真的原因是因为它似乎非常限制RDF主体只能引用整个和单独的Web文档,而不是指向Web文档的某些部分。现在,我明白主题URI可以指任何实体,真实或抽象。但是,在涉及文档的主题的狭义上下文中,我希望它能够引用文档的一部分,并且没有文档的那部分必须位于任何硬URL中。

如果我的愿望不是真的,那么我唯一的选择是用@ID属性来标记我的XML元素,然后将主题设置为与文档的URL和指向此元素的片段匹配的URI?对我而言,这似乎仍然令人不满,因为只要文档URL发生更改,URI就会改变,从而打破了指向这些内容的三元组。

回答

4

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

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

Similarly #me又是一个任意的片段标识符,按照惯例通常在FOAF文件中用于引用文件正在描述的人。同样它最终只是一个URI使用RDF

那么,现在回答你的问题,以确定一些事情(在这种情况下通常是一个人)不,它不工作,你多么希望它

+0

非常感谢。我想接下来的问题是:如果我要在自己的词汇表中指定上述具体含义,RDF“推理者”程序是否能够处理它而没有太多问题?我知道我的使用超出了正常预期,即在RDFa中使用这种方式时,片段标识符仅表示相对URI。那么,reasoners必须完全重写或者稍加修改才能理解我的词汇? – GrantRobertson 2012-02-24 01:19:49

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> 

这给出了相同的结果nd-about的方式。您的RDF处理器将知道基于该唯一引用ID来匹配它找到的所有XML元素。