use of org.eclipse.rdf4j.model.util.ModelBuilder in project opentheso by miledrousset.
the class WriteRdfFileTest method write3.
@Test
public void write3() {
ValueFactory vf = SimpleValueFactory.getInstance();
BNode address = vf.createBNode();
// First we do the same thing we did in example 02: create a new ModelBuilder, and add
// two statements about Picasso.
ModelBuilder builder = new ModelBuilder();
builder.setNamespace("ex", "http://example.org/").subject("ex:Picasso").add(RDF.TYPE, "ex:Artist").add(FOAF.FIRST_NAME, "Pablo").add("ex:homeAddress", // link the blank node
address).subject(// switch the subject
address).add("ex:street", "31 Art Gallery").add("ex:city", "Madrid").add("ex:country", "Spain");
Model model = builder.build();
// To see what's in our model, let's just print it to the screen
for (Statement st : model) {
System.out.println(st);
}
Rio.write(model, System.out, RDFFormat.RDFXML);
}
use of org.eclipse.rdf4j.model.util.ModelBuilder in project opentheso by miledrousset.
the class WriteRdfFileTest method write2.
@Test
public void write2() {
ValueFactory vf = SimpleValueFactory.getInstance();
// Create a new RDF model containing information about the painting "The Potato Eaters"
ModelBuilder builder = new ModelBuilder();
Model model = builder.setNamespace("ex", "http://example.org/").subject("ex:PotatoEaters").add("ex:creationDate", vf.createLiteral("1885-04-01T00:00:00Z", XMLSchema.DATETIME)).add("ex:peopleDepicted", 5).build();
// To see what's in our model, let's just print stuff to the screen
for (Statement st : model) {
// we want to see the object values of each property
IRI property = st.getPredicate();
Value value = st.getObject();
if (value instanceof Literal) {
Literal literal = (Literal) value;
System.out.println("datatype: " + literal.getDatatype());
// get the value of the literal directly as a Java primitive.
if (property.getLocalName().equals("peopleDepicted")) {
int peopleDepicted = literal.intValue();
System.out.println(peopleDepicted + " people are depicted in this painting");
} else if (property.getLocalName().equals("creationDate")) {
XMLGregorianCalendar calendar = literal.calendarValue();
Date date = calendar.toGregorianCalendar().getTime();
System.out.println("The painting was created on " + date);
}
// you can also just get the lexical value (a string) without worrying about the datatype
System.out.println("Lexical value: '" + literal.getLabel() + "'");
}
}
Rio.write(model, System.out, RDFFormat.RDFXML);
}
use of org.eclipse.rdf4j.model.util.ModelBuilder in project opentheso by miledrousset.
the class ReadRdfFileTest method test1.
public void test1() {
ModelBuilder builder = new ModelBuilder();
Model model = builder.setNamespace("ex", "http://example.org/").subject("ex:PotatoEaters").add("ex:creationDate", new GregorianCalendar(1885, Calendar.APRIL, 1).getTime()).add("ex:peopleDepicted", 5).build();
for (Statement st : model) {
IRI property = st.getPredicate();
Value value = st.getObject();
if (value instanceof Literal) {
Literal literal = (Literal) value;
// get the value of the literal directly as a Java primitive.
if (property.getLocalName().equals("peopleDepicted")) {
int peopleDepicted = literal.intValue();
System.out.println(peopleDepicted + " people are depicted in this painting");
} else if (property.getLocalName().equals("creationDate")) {
XMLGregorianCalendar calendar = literal.calendarValue();
Date date = calendar.toGregorianCalendar().getTime();
System.out.println("The painting was created on " + date);
}
// You can also just get the lexical value (a string) without
// worrying about the datatype
// System.out.println("Lexical value: '" + literal.getLabel() + "'");
}
}
}
use of org.eclipse.rdf4j.model.util.ModelBuilder in project opentheso by miledrousset.
the class ReadRdfFileTest method test2.
public static void test2() {
ValueFactory vf = SimpleValueFactory.getInstance();
ModelBuilder builder = new ModelBuilder();
Model model = builder.setNamespace("ex", "http://example.org/").subject("ex:PotatoEaters").add(DC.TITLE, vf.createLiteral("The Potato Eaters", "en")).add(DC.TITLE, vf.createLiteral("De Aardappeleters", "nl")).build();
// To see what's in our model, let's just print it to the screen
for (Statement st : model) {
// we want to see the object values of each statement
Value value = st.getObject();
if (value instanceof Literal) {
Literal title = (Literal) value;
System.out.println("language: " + title.getLanguage().orElse("unknown"));
System.out.println(" title: " + title.getLabel());
}
}
}
use of org.eclipse.rdf4j.model.util.ModelBuilder in project opentheso by miledrousset.
the class ReadRdfFileTest method test3.
public static void test3() {
// To create a blank node for the address, we need a ValueFactory
ValueFactory vf = SimpleValueFactory.getInstance();
BNode address = vf.createBNode();
// Identically to example 03, we create a model with some data
ModelBuilder builder = new ModelBuilder();
builder.setNamespace("ex", "http://example.org/").subject("ex:Picasso").add(RDF.TYPE, "ex:Artist").add(FOAF.FIRST_NAME, "Pablo").add("ex:homeAddress", // link the blank node
address).subject(// switch the subject
address).add("ex:street", "31 Art Gallery").add("ex:city", "Madrid").add("ex:country", "Spain");
Model model = builder.build();
// Instead of simply printing the statements to the screen, we use a Rio writer to
// write the model in RDF/XML syntax:
Rio.write(model, System.out, RDFFormat.RDFXML);
File file = new File("test.rdf");
FileWriter writer = null;
try {
file.createNewFile();
writer = new FileWriter(file);
} catch (IOException ex) {
Logger.getLogger(ReadRdfFileTest.class.getName()).log(Level.SEVERE, null, ex);
}
Rio.write(model, writer, RDFFormat.RDFXML);
}
Aggregations