在RDF-Turtle中,使用@base
前缀和空前缀(只有:
)有什么区别?
答案 0 :(得分:8)
@base
不是前缀声明,而是......嗯,基本声明。它声明了一个文档的基本位置,所有相对IRI 都将被解析。 @prefix :
是前缀声明(在本例中为默认或空前缀),解析了所有带有空前缀的前缀名称。
尽管它们都是写下IRI的两种方式,但相对IRI与前缀名称不同。他们遵循不同的句法规则。
例如:
@base <http://example.org/base/>
@prefix : <http://example.org/prefix/>
<name> rdf:type rdf:Property .
:phone rdf:type rdf:Property .
在此示例中,name
是相对IRI。基本声明将用于将其解析为绝对IRI http://example.org/base/name
。
:phone
不是相对IRI,而是带前缀的名称(带有空前缀)。 (空)前缀声明将用于将其解析为绝对IRI http://example.org/prefix/phone
。
简单地告诉Turtle中IRI和前缀名称之间的区别:前者围绕它有<>
括号。