gpt4 book ai didi

java - 从lastfm.rdfize.com 添加RDF 模型

转载 作者:太空宇宙 更新时间:2023-11-04 08:46:51 25 4
gpt4 key购买 nike

我正在使用 Java 进行编程,尝试使用 Jena 库和 lastfm.rdfize.com 网站创建一个简单的 RDF 存储。

我遇到了以下问题:lastfm.rdfize.com 生成一个 rdf,例如在 Turtle 中,请求如下:“http://lastfm.rdfize.com/?username=&eventID=&artistName="+artistName+"&venueID=&output=turtle”

我发出请求并获取生成的网页的内容。如果我打印它们 - 对我来说它们似乎是一个不错的 RDF。

但是,我无法将它们添加到模型中。

我尝试创建一个文件,将字符串(即 HTML 内容)写入该文件(看起来也不错)并将其读取到模型中,如下所示:

InputStream lastf = FileManager.get().open("lastfm.txt");
Model temp=null;
temp=ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM_RDFS_INF);
temp.read(lastf,null,"Turtle");

但是,此时我收到以下错误消息:

(ErrorHandlerLib.java:49) - [行:22,列:2] 未知字符:

最佳答案

你的代码确实对我有用,比如一个简单的 RDF/Turtle ...

@base <http://example.org/ns/> .                                                                                                                     
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<s1> <p1> <o1>;
<p2> "some typed literal"^^xsd:string;
<p2> "some non-typed literal";
<p4> 10 .
<o1> <label> "some label" .

因此,您的数据文件 lastfm.txt 中似乎存在某些格式或字符集错误。我建议使用 RDF validator 验证您的文件,尝试使用 http://www.rdfabout.com/demo/validator/使用此 validator ,您可以测试 RDF/XML 和 RDF/Turtle,确保您为正在使用的 RDF 序列化类型选择正确的格式。

验证数据的另一个选项可能是来自http://librdf.orgraptor工具。但这有点复杂,您需要在本地安装它。

如果 validator 提示字符集错误,那么您可以更改用于读取数据的字符集。像这样的东西应该可以工作..

package t1;                        
import java.io.*;
import com.hp.hpl.jena.util.*;
import com.hp.hpl.jena.ontology.*;
import com.hp.hpl.jena.rdf.model.*;
import java.nio.charset.*;

class test {
public static void main (String[] args) {
InputStreamReader lastf = new
InputStreamReader(FileManager.get().open("lastfm.txt"),
Charset.forName("ISO-8859-1"));

Model temp=null;
temp=ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM_RDFS_INF);
temp.read(lastf,null,"Turtle");
System.out.println(temp.size());
temp.write(System.out);
}
}

所有这些应该为您提供发现错误的指南(我希望如此),但如果您没有发现它,请发布数据,以便我们查看它。

关于java - 从lastfm.rdfize.com 添加RDF 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4148116/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com