2

我想创建一些 RDF 我的问题是我不知道我应该使用什么样的词汇来做这样的事情:

这是我的数据示例(我已将它们存储到几个 XML 文件中)

<uri>http://dbpedia.org/resource/Herbie_Mann</uri>
<classtype>classtype:Artist</classtype>
<title>Herbie Mann</title>
<albums>
<album url="/~u0082/intelweb2/%3fq=album/75">Push Push</album>
<album url="/~u0082/intelweb2/%3fq=album/87">At the Village Gate</album>
</albums>
<website>http://www.herbiemannmusic.com</website>
<biography>
Herbie Mann, credited as being one of the seminal jazz flutists, is probably best known for the musical....
</biography>

这是我写的一个非常粗略的代码:

  Model model = ModelFactory.createDefaultModel();
        Property prop = model.createProperty(artistURI);

        Resource herbie_mann = model.createResource(artistURI);
        herbie_mann.addProperty(RDF.value,artistName);
        herbie_mann.addProperty(RDF.object,artistClass);
        herbie_mann.addProperty(RDF.subject , model.createResource().addProperty(RDF.object, artistAlbum1));
        model.write(System.out);

但我不喜欢使用价值/对象/主题的想法,我想用更通用但更有意义的东西替换它,我不知道该怎么做。

4

1 回答 1

4

你看过音乐本体吗?它完全涵盖了您需要的内容,并且已被 BBC 等主要数据提供商使用。

Jena 没有用于音乐本体的带有常量的预定义类(就像它用于 theRDFDC其他命名空间一样),因此您可以执行以下任一操作:

  • 使用 Jena 的schemagen 工具自动生成一个 Java 类,其中包含 Music Ontology 中定义的常量
  • createProperty()使用和为类和属性创建自己的常量createResource()
于 2012-04-23T19:52:36.607 回答