jena - 在 Jena TDB 数据集中更新本体时发生 Jena Riot 异常
问题描述
在我的应用程序中,我试图更新 TDB 中已经存在的本体的内容。在存储到 TDB 之前,我将本体转换为 RDF/XML 格式。使用相同的 model.read 方法在空模型中加载本体数据时不会产生问题,但在更新它时会出现此错误。有人可以帮我解决吗?输入参数:modelName ->namedModel 保存在 TDB 中 inputString ->本体数据转换为字符串 我的代码如下:
public void updateModel(String modelName, String inputString) {
dataset.begin(ReadWrite.WRITE);
try {
Model model = dataset.getNamedModel(modelName);
model.removeAll();
StringReader reader = new StringReader(inputString);
model.read(reader,null,"RDF/XML-ABBREV");
dataset.commit();
logger.info("dataset committed");
} catch (Exception e) {
logger.error("Exception in reading : " + e);
} finally {
dataset.end();
}
}
它抛出以下错误:org.apache.jena.riot.RiotException: [line: 1, col: 1] prolog 中不允许内容。
解决方案
推荐阅读
- powershell - 有人可以分解这个 Powershell 脚本的一部分并解释它的作用和工作原理吗?
- sql - 如何使用仅在一行上不匹配的多个条件进行查询
- c++ - 使用 STM32L432 的 Mbed OS 5 模拟脉冲计数器
- java - java 7 j2html无法加载类
- django - 我在 django 中提到的路径中找不到错误
- java - mockito.when 返回空值
- python - 为 FMI 类型“模型交换”设置一个变量
- javascript - Javascript/Typescript - 导入类的不同语法
- image - 最近的 MATLAB 和 Octave 具有更强的 JPEG 压缩和显示伪影
- java - 尝试列出共享文件夹中的所有文件时连接重置