XDI4j Tutorial 1
From Eclipsepedia
Contents |
Interfaces and classes
Graph
org.eclipse.higgins.xdi4j.Graph;
This interface represents a whole XDI graph. XDI graphs consist of subjects, predicates, literals, references and inner graphs. Operations on the graph include creating these graph components, finding and manipulating them
Subject
org.eclipse.higgins.xdi4j.Subject;
This interface represents a subject in an XDI graph. Methods include creating and finding predicates of the subject.
Predicate
org.eclipse.higgins.xdi4j.Predicate;
This interface represents a predicate in an XDI graph. Methods include creating and finding references, literals and inner graphs of the predicate.
Reference
org.eclipse.higgins.xdi4j.Reference;
This interface represents a reference in an XDI graph.
Literal
org.eclipse.higgins.xdi4j.Literal;
This interface represents a literal in an XDI graph.
Statement
org.eclipse.higgins.xdi4j.Statement;
This interface represents a statement in an XDI graph.
A statement consists of either:
- A subject (if the subject has no predicates).
- A subject and a predicate (if the predicate has no references or literals).
- A subject and a predicate and a reference.
- A subject and a predicate and a literal.
- A subject and a predicate and an inner graph.
A statement never has BOTH an reference and a literal.
GraphFactory
org.eclipse.higgins.xdi4j.GraphFactory;
Graph factories exist for all implementations of the Graph interface (e.g. Memory, XML, Hibernate). They can be used to create a new XDI document, or to load an existing one.
Example
This example app shows how to create a new XDI document and how to perform basic graph operations on it.
package org.eclipse.higgins.xdi4j.tutorial;
import org.eclipse.higgins.xdi4j.Graph;
import org.eclipse.higgins.xdi4j.GraphFactory;
import org.eclipse.higgins.xdi4j.Predicate;
import org.eclipse.higgins.xdi4j.Subject;
import org.eclipse.higgins.xdi4j.impl.memory.MemoryGraphFactory;
import org.eclipse.higgins.xdi4j.xri3.impl.XRI3Segment;
/**
* This example app shows how to create a new XDI
* document and how to perform basic graph operations on it.
*
* @author msabadello at parityinc dot not
*
*/
public class Tutorial1 {
public static void main(String[] args) throws Exception {
GraphFactory factory = MemoryGraphFactory.getInstance();
Graph graph = factory.openGraph();
// there are basically two ways of working with graphs
// 1) work with subjects, predicates, references and literals
Subject markus = graph.createSubject(new XRI3Segment("=markus"));
Predicate name = markus.createPredicate(new XRI3Segment("+name"));
Predicate friend = markus.createPredicate(new XRI3Segment("+friend"));
name.createLiteral("Markus");
friend.createReference(new XRI3Segment("=drummond"));
// 2) work with statements
graph.createStatement(new XRI3Segment("=markus"), new XRI3Segment("+friend"), new XRI3Segment("=giovanni"));
graph.createStatement(new XRI3Segment("=giovanni"), new XRI3Segment("+friend"), new XRI3Segment("=drummond"));
// after our graph is filled, we can output it
System.out.println(graph.toString());
graph.close();
}
}

