如何将一个OntModel实例插入到三重存储(如TDB)中使用ARQ(SPARQL处理器用于Jena? 。这只是简单地创建书籍,并添加这些到OntModel代码现在我要插入一个三重商店这样的:?使用ARQ(用于Jena的SPARQL处理器)将一个OntModel实例插入三重存储(如TDB)
public static void createDummyBooks(){
// Create an empty ontology model
OntModel ontModel = ModelFactory.createOntologyModel();
String ns = new String("http://www.iexample.com/book#");
String baseURI = new String("http://www.iexample.com/book");
Ontology onto = ontModel.createOntology(baseURI);
//creating a book
OntClass book = ontModel.createClass(ns + "Book");
OntClass nonFinctionBook = ontModel.createClass(ns + "NonFictionBook");
OntClass fictionBook = ontModel.createClass(ns + "FictionBook");
// Create datatype property 'hasAge'
DatatypeProperty hasTtitle = ontModel.createDatatypeProperty(ns + "hasTitle");
// 'hasAge' takes integer values, so its range is 'integer'
// Basic datatypes are defined in the ‘vocabulary’ package
hasTtitle.setDomain(book);
hasTtitle.setRange(XSD.xstring); // com.hp.hpl.jena.vocabulary.XSD
// Create individuals
Individual theProgrammingBook = nonFinctionBook.createIndividual(ns + "ProgrammingBook");
Individual theFantasyBook = fictionBook.createIndividual(ns + "FantasyBook");
Literal bookTitle = ontModel.createTypedLiteral("Programming with Ishmael", XSDDatatype.XSDstring);
Literal fantasyBookTitle = ontModel.createTypedLiteral("The adventures of Ishmael", XSDDatatype.XSDstring);
// Create statement 'ProgrammingBook hasTitle "Programming with Ishmael" '
Statement theProgrammingBookHasTitle = ontModel.createStatement(nonFinctionBook, hasTtitle, bookTitle);
// Create statement 'FantasyBook hasTitle "The adventures of Ishmael" '
Statement theFantasyBookHasTitle = ontModel.createStatement(theFantasyBook, hasTtitle, fantasyBookTitle);
List<Statement> statements = new ArrayList<Statement>();
statements.add(theProgrammingBookHasTitle);
statements.add(theFantasyBookHasTitle);
ontModel.add(statements);
//just displaying here - but how do I now write/insert this into my Triple Store/TDB using AQR API?
ontModel.write(System.out, "RDF/XML-ABBREV");
}
任何想法非常感谢
你为什么不回答这个问题而不打算给出任何关于你认为无用的信息 - 你甚至在开发本体的空间中工作吗?如果你无法回答这个问题,只需跳过它,看看你可以帮助的其他问题。 – ishmaelMakitla