所以这是一个rdf格式的条目.我想理解为什么它的某些部分看起来如此复杂.
<pgterms:file rdf:about="&f;dirs/3/1/9/0/31900/31900-8.zip">
<dc:format><dcterms:IMT><rdf:value>text/plain; charset="iso-8859-1"</rdf:value></dcterms:IMT></dc:format>
<dc:format><dcterms:IMT><rdf:value>application/zip</rdf:value></dcterms:IMT></dc:format>
<dcterms:extent>193120</dcterms:extent>
<dcterms:modified><dcterms:W3CDTF><rdf:value>2010-04-06</rdf:value></dcterms:W3CDTF></dcterms:modified>
<dcterms:isFormatOf rdf:resource="#etext31900" />
</pgterms:file>
Run Code Online (Sandbox Code Playgroud)
特别是,这个值:
<dc:format><dcterms:IMT><rdf:value>text/plain; charset="iso-8859-1"</rdf:value></dcterms:IMT></dc:format>
Run Code Online (Sandbox Code Playgroud)
为什么它既需要dcterms:IMT
AND 又需要rdf:value
一部分?对于看似没什么实际效益的看起来似乎很臃肿.因为它已经在使用MIME类型,所以对我来说没有意义.
Phi*_*per 10
为什么xml有这么多尖括号我的眼睛受伤....因为它本来是由解析器而不是人类阅读.
你的样本不是rdf(rdf是框架),它是rdf/xml,是框架中图形的一种可能的序列化. Turtle/n3是更漂亮的序列化.N-Triples非常简单.
一些非常小的例子,不包括任何真实的细节,但......
RDF/XML:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description rdf:about="http://www.w3.org/2001/sw/RDFCore/ntriples/">
<dc:creator>Art Barstow</dc:creator>
<dc:creator>Dave Beckett</dc:creator>
<dc:publisher rdf:resource="http://www.w3.org/"/>
</rdf:Description>
</rdf:RDF>
Run Code Online (Sandbox Code Playgroud)
的N-Triples
<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://purl.org/dc/elements/1.1/creator> "Dave Beckett" .
<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://purl.org/dc/elements/1.1/creator> "Art Barstow" .
<http://www.w3.org/2001/sw/RDFCore/ntriples/> <http://purl.org/dc/elements/1.1/publisher> <http://www.w3.org/> .
Run Code Online (Sandbox Code Playgroud)
N3
@prefix dc: <http://purl.org/dc/elements/1.1/>
<http://www.w3.org/2001/sw/RDFCore/ntriples/>
dc:creator "Dave Beckett";
dc:creator "Art Barstow";
dc:publisher <http://www.w3.org/>.
Run Code Online (Sandbox Code Playgroud)
编辑:你可以停止阅读,这只是OP在不同序列化中提供的示例.回答这个问题
为什么它同时需要dcterms:IMT和rdf:value部分?
当存在"空节点"时,rdf/xml必须执行某种断续步骤.你可以在下面看到N-Triples写出空白节点,而n3试图让关系变得更加明显.所有这些都是相同rdf图的序列化.
稍微修改了RDF/XML(添加了名称空间),因此它解析:
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:pgterms="http://www.gutenberg.org/rdfterms/">
<pgterms:file rdf:about="/home/me/dirs/3/1/9/0/31900/31900-8.zip">
<dc:format><dcterms:IMT><rdf:value>text/plain; charset="iso-8859-1"</rdf:value></dcterms:IMT></dc:format>
<dc:format><dcterms:IMT><rdf:value>application/zip</rdf:value></dcterms:IMT></dc:format>
<dcterms:extent>193120</dcterms:extent>
<dcterms:modified><dcterms:W3CDTF><rdf:value>2010-04-06</rdf:value></dcterms:W3CDTF></dcterms:modified>
<dcterms:isFormatOf rdf:resource="#etext31900" />
</pgterms:file>
</rdf:RDF>
Run Code Online (Sandbox Code Playgroud)
的N-Triples
</home/me/dirs/3/1/9/0/31900/31900-8.zip> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.gutenberg.org/rdfterms/file> .
</home/me/dirs/3/1/9/0/31900/31900-8.zip> <http://purl.org/dc/elements/1.1/format> _:LqSOByLi19 .
</home/me/dirs/3/1/9/0/31900/31900-8.zip> <http://purl.org/dc/elements/1.1/format> _:LqSOByLi20 .
</home/me/dirs/3/1/9/0/31900/31900-8.zip> <http://purl.org/dc/terms/isFormatOf> <#etext31900> .
</home/me/dirs/3/1/9/0/31900/31900-8.zip> <http://purl.org/dc/terms/modified> _:LqSOByLi21 .
</home/me/dirs/3/1/9/0/31900/31900-8.zip> <http://purl.org/dc/terms/extent> "193120" .
_:LqSOByLi21 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/dc/terms/W3CDTF> .
_:LqSOByLi21 <http://www.w3.org/1999/02/22-rdf-syntax-ns#value> "2010-04-06" .
_:LqSOByLi20 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/dc/terms/IMT> .
_:LqSOByLi20 <http://www.w3.org/1999/02/22-rdf-syntax-ns#value> "application/zip" .
_:LqSOByLi19 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/dc/terms/IMT> .
_:LqSOByLi19 <http://www.w3.org/1999/02/22-rdf-syntax-ns#value> "text/plain; charset=\"iso-8859-1\"" .
Run Code Online (Sandbox Code Playgroud)
N3 /龟
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix pgterms: <http://www.gutenberg.org/rdfterms/> .
</home/me/dirs/3/1/9/0/31900/31900-8.zip> a pg:file;
dc:format
[ a dcterms:IMT; rdf:value "text/plain; charset=\"iso-8859-1\"" ],
[ a dcterms:IMT; rdf:value "application/zip" ];
dcterms:extent "193120";
dcterms:isFormatOf <#etext31900>;
dcterms:modified [ a dcterms:W3CDTF; rdf:value "2010-04-06" ] .
Run Code Online (Sandbox Code Playgroud)
注意:如果它是彩色的, N3甚至更漂亮
编辑2:
上面描述了有一个bnode但是为什么有一个.... 上面N3序列化dcterms:modified
的最后一行中的谓词可以(我希望)更像是:
dcterms:modified "2010-04-06"^^dcterms:W3CDTF
# vs
dcterms:modified [ a dcterms:W3CDTF; rdf:value "2010-04-06" ]
Run Code Online (Sandbox Code Playgroud)
rdf:value甚至存在的原因是三倍:
exproduct:item10245 exterms:weight [rdf:value "2.4"^^xsd:decimal
exterms:units exunits:kilograms] .
Run Code Online (Sandbox Code Playgroud)
除了单元之外,节点还可以指示object
三元组的精度或其他特征.
是的,我有点讨厌rdf:value
破坏理解和实践的东西,有利于认识论的纯洁.
归档时间: |
|
查看次数: |
312 次 |
最近记录: |