Мне нужно прочитать файл CSV, а затем заполнить онтологию, используя jena и java.Поскольку мне нужно ссылаться на некоторые ресурсы позже в коде, я создал массивы таких ресурсов, как приведенный ниже:
Resource [] singular_process= new Resource[1000];
singular_process[k] = model.createResource(URI + "singular_process"+i);
Где i
- это UUID
при чтении файла, k
представляет номер записи, предположим, что я сделал тройки, используя онтологию, такую как:
Statement S1 = model.createStatement(singular_process[k],RDF.type,control);
model.add(S1);
, и я сделал больше тройок, используя тот же singular_process[k]
, и напишу его операторы.например,
Statement S2 = model.createStatement(singular_process[k],go:count,numbers);
model.add(S2);
вышеупомянутые два оператора для одной и той же записи файла
, затем я читаю другую запись, и k
в singular_process[k]
отличается от первой, сделайте то же самоекак описано выше, создайте тройки для этой записи, запишите их и т. д.
Мой вопрос: этот подход дает правильные результаты, поскольку мой файл n3
объединяет данные из обоих вышеупомянутых ресурсов, что-то, чего я не могу понять, как этослучается!
Вторые вопросы, как ссылаться на вышеупомянутые два определенных ресурса позже в коде, чтобы объединить их, как будто они имеют некоторую общую информацию о том, что каждый из них будет участником нового большого процесса, как ссылаться на них?
Нужно ли мне также делать операторы в виде массива?
Любые другие подходы, которые могут дать правильный ответ.