[英]How I can get the value of a property of principal as object and not as a string?
[英]How can I get the value (object) of a Resource's property?
我有以下代码,可以在其中通过电子邮件找到资源。
val varn = "x"
val query = createQuery("""SELECT ?${varn}
WHERE { ?x <http://www.w3.org/2001/vcard-rdf/3.0#EMAIL> "${email}" }""")
val qexec = createQueryExecution(ds, query)
val rs = qexec.execSelect()
if (rs.hasNext()) {
val solution = rs.nextSolution()
val rec = solution[varn]
// Here I need to find the value of the property FirstContactTime
}
现在,我想找出rec
是否具有属性FirstContactTime
,如果有,则为值。
我尝试了rec.model.listObjectsOfProperty(ds.defaultModel.createProperty(FirstContactTime))
但它不返回任何内容。 调试器说rec
确实具有属性FirstContactTime
。
如何在我的代码中获取FirstContactTime
( 2017-03-03T10:35:00Z
)的值?
请注意,数据中的属性是FirstContactDateTime
而不是FirstContactTime
。
您正在寻找的SPARQL是这样的-
PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>
PREFIX ex: <http://example.com/schema/person/>
SELECT ?user ?email ?firstcontact
WHERE
{ ?x vcard:EMAIL ?email .
OPTIONAL { ?x ex:firstContactDateTime ?firstcontact }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.