Q1。使用Jena框架和Java,我可以创建一个资源数组,原因是读取CSV文件并为每一行创建资源,假设两行重新相关,所以我需要做到这一点:
Resource single_process1 = createResource()
然后是第二行:
Resource single_process2 = createRessource()
你注意到数字1,2,我需要创建它(将它添加为资源名称的一部分),所以稍后因为这两个资源是相关的所以我需要将它们组合起来作为引用这个组合过程包含的两个单一进程(资源)。是可能的资源数组,任何其他选项?
Q2。如何在Jena中引用rdf:type或sio:
答案 0 :(得分:1)
首先,请一次只向StackOverflow发一个问题。本网站的目的是尝试收集针对个别问题的准确,高质量的答案,以便未来的用户可以从中受益。因此,每个问题都需要在一个单独的帖子中。
我对你的问题有点困难。如果我可以解释:
Model
。创建单个Resource
作为给定行的每个三元组的主题如果这是一个准确的摘要,那肯定有点不寻常......但这是你的数据!无论如何,您可以合理地将两个资源中的语句合并为一个:
Resource r0 = .... ; // the first subject resource
Resource r1 = .... ; // the second subject resource
// we discover that r0 and r1 refer to the same thing, so we
// want to merge their properties ...
List<Statement> r1Props = r1.listProperties().toList();
for (Statement s: r1Props) {
// add the property to r0, so <r1 P O> becomes <r0 P O>
r0.addProperty( s.getPredicate(), s.getObject() );
// remove the statement about r1
// once all of r1's triples are removed, r1 is no longer in the Model
s.remove();
}
我不确定的是这与资源数组有什么关系。你需要多解释一下。
关于Q2,您可以使用类com.hp.hpl.jena.vocabulary.RDFS
来引用RDFS名称空间中的URI,类似地使用RDF
,OWL
和其他一些名称。要创建自己的词汇表课程,请参阅Jena schemagen。