Вы уверены, что вам нужно использовать обновление SPARQL?В Jena узлы (ресурсы или литералы) находятся не в Model
сами по себе, а только благодаря тому, что являются частью тройки (то есть Statement
) в модели.Если в вашем коде есть объект Model
, используйте один из множества вариантов addStatement
, чтобы добавить данный ресурс или литерал в график.
Приложение
После уточнения вашего комментариячто вы хотите добавить в файл на диске, вы можете сделать, как говорит RobV, изменить Model
в памяти, а затем снова записать его.И это действительно правильный способ сделать это.Тем не менее, есть быстрый и грязный обходной путь, который вы могли бы найти полезным.Если ваш файл в формате Turtle
или N-Triples
, вы можете просто добавить в конец файла (что, очевидно, вы не можете сделать в XML).Так что что-то вроде:
File f = new File( "where.your.file.is" );
FileOutputStream out = new FileOutputStream( f, true );
out.write( ":john :loves :jane.\n" );
out.close();
будет работать.На самом деле это не рекомендуется, потому что вы рискуете: (а) не иметь правильных префиксов пространства имен, (б) ввести синтаксические ошибки (так как вы не используете средство записи Jena) и (в) создать дублирующиеся тройки, ноиногда это полезный трюк в трудной ситуации.Очевидно, что вы можете только добавлять информацию, используя эту технику, но не обновлять или удалять существующие тройки.
Прямое добавление в конец файла N-triples
является допустимым и полезным методом при сборе больших объемов данных из текущей регистрации илиприложения для мониторинга.