假设我们将以下 RDF 代码输入到 W3C RDF 验证器:http://www.w3.org/RDF/Validator/ http://www.w3.org/RDF/Validator/.
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:uni="http://www.example.org/uni-ns#">
<rdf:Description rdf:about="949352">
<uni:name>Grigoris Antoniou</uni:name>
<uni:title>Professor</uni:title>
</rdf:Description>
</rdf:RDF>
当我要求解析 RDF 代码时,我发现在三元组中,RDF URI 已被验证器自己的 URI 替换。
三元组的主语不应该是http://www.w3.org/1999/02/22-rdf-syntax-ns#949352
?
验证器为什么要这样做?
The rdf:about属性 http://www.w3.org/TR/2014/REC-rdf-syntax-grammar-20140225/#aboutAttr将 IRI 作为值。
你有949352
作为值,它是相对 IRI。它被解析为基础文档的 IRI(在您的情况下是验证器)。
例如,您可以提供绝对 IRI(示例 1),或指定xml:base
(示例2)。
示例1:
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:uni="http://www.example.org/uni-ns#">
<rdf:Description rdf:about="http://my-site.example.com/my-page/949352">
<uni:name>Grigoris Antoniou</uni:name>
<uni:title>Professor</uni:title>
</rdf:Description>
</rdf:RDF>
示例2:
<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:xsd="http://www.w3.org/2001/XMLSchema#"
xmlns:uni="http://www.example.org/uni-ns#"
xml:base="http://my-site.example.com/my-page/">
<rdf:Description rdf:about="949352">
<uni:name>Grigoris Antoniou</uni:name>
<uni:title>Professor</uni:title>
</rdf:Description>
</rdf:RDF>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)