2017-02-02 55 views

回答

1

在Eclipse RDF4J中,Model是Java Collection(類似於SetList)。所以你可以使用標準的Java收集操作。要附加兩個模型,只需執行:

model1.addAll(model2); 

請注意,此操作只附加語句。如果model2包含您希望複製的任何名稱空間聲明,則必須單獨執行該操作。例如,有model2空間聲明簡單複製,在model1覆蓋任何現有的宣言:

model2.getNamespaces().stream().forEach(model1::setNamespace); 

或者,如果你只是想對那些前綴這model1沒有申報尚未複製:

model2.getNamespaces().stream() 
     .filter(ns -> !model1.getNamespace(ns.getPrefix()).isPresent()) 
     .forEach(model1::setNamespace);