Двойной тип литерала в Apache Jena - PullRequest
0 голосов
/ 23 сентября 2019

Я хочу создать объект в тройке с типом данных Double.У меня есть следующий код:

 if(!spine.equals(null)){
      register_res.addProperty(spineWidth, model.createTypedLiteral(new XSDDouble(spine)));
 }

Я читаю позвоночник из CSV-файла и сохраняю его в строке.

Я получаю следующую ошибку:

 java.lang.NullPointerException
at org.apache.jena.datatypes.xsd.XSDDatatype.<init>(XSDDatatype.java:231)
at org.apache.jena.datatypes.xsd.impl.XSDDouble.<init>(XSDDouble.java:38)
at VolumesUpload.main(VolumesUpload.java:140)

Любая идея, что не так, пожалуйста?

1 Ответ

0 голосов
/ 23 сентября 2019

XSDDouble - это класс типа данных, а не значение.

Требуется:

model.createTypedLiteral("4.5", XSDDatatype.XSDdouble);

, если позвоночник является лексической формой значения или

model.createTypedLiteral(Double.valueOf("4.5"));

для создания из значения.

...