我正在尝试添加RDF的这个简单示例:
<rdf:RDF>
<rdf:Description>
<rdf:subject resource="http://www.w3.org/Home/Lassila"/>
<rdf:predicate resource="http://description.org/schema/Creator"/>
<rdf:object>Ora Lassila</rdf:object>
<rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
<a:attributedTo>Ralph Swick
</a:attributedTo>
</rdf:Description>
</rdf:RDF>
进入Blazegraph三重存储,但我得到以下错误:
ERROR: INSERT-WITH-BODY: baseURI=http://localhost:9999/bigdata/namespace/undefined/sparql, context-uri=[]
java.util.concurrent.ExecutionException: com.bigdata.rdf.sail.webapp.DatasetNotFoundException: Not found: namespace=undefined
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:188)
at com.bigdata.rdf.sail.webapp.InsertServlet.doPostWithBody(InsertServlet.java:203)
at com.bigdata.rdf.sail.webapp.InsertServlet.doPost(InsertServlet.java:119)
at com.bigdata.rdf.sail.webapp.RESTServlet.doPost(RESTServlet.java:272)
at com.bigdata.rdf.sail.webapp.MultiTenancyServlet.doPost(MultiTenancyServlet.java:144) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:769)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
据我所知,我正在密切检查命名空间。
我也尝试过这个例子:
prefix dcterm: <http://purl.org/dc/terms/>
prefix dc: <http://purl.org/dc/elements/1.1/>
<?xml version="1.0"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/metadata/dublin_core#">
<rdf:Description about="http://www.foo.com/cool.html">
<dc:Creator>
<rdf:Seq ID="CreatorsAlphabeticalBySurname">
<rdf:li>Mary Andrew</rdf:li>
<rdf:li>Jacky Crystal</rdf:li>
</rdf:Seq>
</dc:Creator>
<dc:Identifier>
<rdf:Bag ID="MirroredSites">
<rdf:li rdf:resource="http://www.foo.com.au/cool.html"/>
<rdf:li rdf:resource="http://www.foo.com.it/cool.html"/>
</rdf:Bag>
</dc:Identifier>
<dc:Title>
<rdf:Alt>
<rdf:li xml:lang="en">The Coolest Web Page</rdf:li>
<rdf:li xml:lang="it">Il Pagio di Web Fuba</rdf:li>
</rdf:Alt>
</dc:Title>
</rdf:Description>
您的示例数据不是有效的XML,因此它不可能是有效的RDF/XML-您没有在XML中定义任何名称空间,因此它是无效的。
使用W3C XML验证器我得到以下错误:
错误行2,列8:未定义rdf上的命名空间前缀rdf
<rdf:RDF>
错误行3,列19:未定义描述中的命名空间前缀rdf
<rdf:Description>
错误行4,列57:未定义主题上的命名空间前缀rdf
<rdf:subject resource="http://www.w3.org/Home/Lassila"/>
错误行5,列66:未定义谓词上的命名空间前缀rdf
<rdf:predicate resource="http://description.org/schema/Creator"/>
错误行6,列14:未定义对象上的命名空间前缀rdf
<rdf:object>Ora Lassila</rdf:object>
错误行7,列76:未定义类型上的命名空间前缀rdf
<rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement"/>
错误行8,列18:attributedTo上的命名空间前缀a不是已定义
<a:attributedTo>Ralph Swick
类似地,使用W3C RDF/XML验证器,我得到以下错误:
致命错误:元素"rdf:rdf"的前缀"rdf"未绑定。[线路=2,列=10]