Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 为什么RDF看起来如此复杂_Xml_Rdf - Fatal编程技术网

Xml 为什么RDF看起来如此复杂

Xml 为什么RDF看起来如此复杂,xml,rdf,Xml,Rdf,这里有一个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>

这里有一个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>

文本/纯文本;charset=“iso-8859-1”
应用程序/zip
193120
2010-04-06
特别是,该值:

<dc:format><dcterms:IMT><rdf:value>text/plain; charset="iso-8859-1"</rdf:value></dcterms:IMT></dc:format>
text/plain;charset=“iso-8859-1”

为什么它需要一个
dcterms:IMT
和一个
rdf:value
部分?这似乎是一个很大的膨胀,但实际效益似乎很小。因为它已经在使用MIME类型,所以对我来说毫无意义。

为什么xml有这么多的尖括号,我的眼睛很痛……因为它是由解析器而不是人类读取的

您的示例不是rdf(rdf是框架),而是rdf/xml,框架中图形的一种可能序列化。更漂亮。非常简单

一些非常小的例子,没有涵盖任何真正的细节,但

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>
rdf:value甚至存在的原因是针对以下三元组:

exproduct:item10245   exterms:weight   [rdf:value        "2.4"^^xsd:decimal
                                        exterms:units    exunits:kilograms] .
除了单位外,节点还可以指示三元组的
对象的精度或其他特征


是的,我有点讨厌
rdf:value
这件事,因为它有损于理解和实践,有利于认识论的纯洁性。

你似乎认为rdf设计得很好。这个假设是错误的不确定是疲劳(从@RDF看)还是什么,但我发现这很有趣。更严肃的回答是:我对RDF不太熟悉(这就是为什么我把这个作为一个注释而不是一个答案),但不同的前缀(“RDF”、“pgterms”、“dc”、“dcterms”…)表明你在混合来自不同名称空间的元素,这表明这个混乱的各个部分是独立开发的。因此,整个事情没有统一的设计。可能应该注意,我正在试图阅读古腾堡项目的目录“为什么xml有这么多的尖括号,我的眼睛很痛……因为它是由解析器而不是人类读取的。”+1表达式这一部分中rdf:value的明确用途是什么?它可能是rdf:value之外的任何东西吗
[a dcterms:IMT;rdf:value
@Mark0978-nuts。我希望你不要回来问这个问题。简短的回答是:这是rdf的错,而不是序列化。我不喜欢rdf:value,它本来就不应该存在。至于它存在的原因,我可能会编辑我的帖子(可能是关于序列化的2到1个示例集)或者,我希望能在我的书签中找到一篇好的wiki帖子并添加它。我认为最令人失望的部分是
dc:format
有两个无法区分的值(从元数据的角度看)。你有两个节点,一个是mimetype,一个是container类型,但是这么详细,如果不检查数据的内容,你就无法判断哪个是哪个,在我看来,这似乎违背了元数据的全部意义。几乎就像是那些在高尔夫球场上制作这个的人在布置这个之前观看了Robin Williams。
@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/>.
<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>
</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\"" .
@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" ] .
dcterms:modified "2010-04-06"^^dcterms:W3CDTF
# vs
dcterms:modified [ a dcterms:W3CDTF; rdf:value "2010-04-06" ]
exproduct:item10245   exterms:weight   [rdf:value        "2.4"^^xsd:decimal
                                        exterms:units    exunits:kilograms] .