gpt4 book ai didi

java - 将 Json-Ld 对象数组读入 Apache Jena 中的模型。如何从模型中检索单个对象?

转载 作者:行者123 更新时间:2023-12-04 12:00:35 24 4
gpt4 key购买 nike

这是对象(学生数据)的 Json 数组。我在 Jena 模型中加载了 Json-Ld 数据

[
{
"@context" : {
"myvocab" : "http://mywebsite.com/vocab/",
"name" : "myvocab:name",
"firstname" : "myvocab:firstname",
"lastname" : "myvocab:lastname",
"rollNumber" : "myvocab:rollNumber"
},
"name" : {
"firstname" : "Dhannan",
"lastname" : "Chaudhary"
},
"rollNumber" : "26"
},
{
"@context" : {
"myvocab" : "http://mywebsite.com/vocab/",
"name" : "myvocab:name",
"firstname" : "myvocab:firstname",
"lastname" : "myvocab:lastname",
"rollNumber" : "myvocab:rollNumber"
},
"name" : {
"firstname" : "Maakin",
"lastname" : "Dhayaal"
},
"rollNumber" : "69"
}
]

这是我上面例子的模型输出(通过使用 SPARQL)

-------------------------------------------------------------------
| Subject | Predicate | Object |
===================================================================
| _:b0 | <http://mywebsite.com/vocab/lastname> | "Chaudhary" |
| _:b0 | <http://mywebsite.com/vocab/firstname> | "Dhannan" |
| _:b1 | <http://mywebsite.com/vocab/lastname> | "Dhayaal" |
| _:b1 | <http://mywebsite.com/vocab/firstname> | "Maakin" |
| _:b2 | <http://mywebsite.com/vocab/rollNumber> | "62" |
| _:b2 | <http://mywebsite.com/vocab/name> | _:b1 |
| _:b3 | <http://mywebsite.com/vocab/rollNumber> | "61" |
| _:b3 | <http://mywebsite.com/vocab/name> | _:b0 |
-------------------------------------------------------------------

在这个模型中,对于我的情况,我只需要每个学生的主题(耶拿资源)(_:b2,_:b3)。
但是通过使用 model.listSubjects() 它为所有主题提供迭代器(_:b0、_:b1、_:b2、_:b3)

我的主要目标是能够为学生 1 和学生 2 获得单独的模型。
我怎样才能做到这一点?
欢迎提出任何建议。

最佳答案

首先,您可以使用 RDF Type定义 Student 类以及 StudentName 类的文字(不确定为什么需要将它们分开)。

然后您可以检查对象是否具有您正在寻找的属性。您可以在 Eclipse Lyo Jena provider 中看到我们是如何做到这一点的.

最后,你可以model your domain with Lyo modelling tools并生成 POJOs对于您的域,可以在单个方法调用中从/向 Jena 模型转换。

关于java - 将 Json-Ld 对象数组读入 Apache Jena 中的模型。如何从模型中检索单个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41257953/

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