Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "XDI4j Tutorial 2"

 
(5 intermediate revisions by the same user not shown)
Line 5: Line 5:
 
A typical application is to read an XDI graph from a file into memory, perform a few operations on it, and then store it again to file.
 
A typical application is to read an XDI graph from a file into memory, perform a few operations on it, and then store it again to file.
  
== Serialization / Deserialization ==
+
== Serialization ==
  
This example app shows how to output a graph in different serialization formats.
+
'''Example Code:'''
  
 
<pre>
 
<pre>
/*******************************************************************************
 
* Copyright (c) 2008 Parity Communications, Inc.
 
* All rights reserved. This program and the accompanying materials
 
* are made available under the terms of the Eclipse Public License v1.0
 
* which accompanies this distribution, and is available at
 
* http://www.eclipse.org/legal/epl-v10.html
 
*
 
* Contributors:
 
*    Markus Sabadello - Initial API and implementation
 
*******************************************************************************/
 
 
package org.eclipse.higgins.xdi4j.tutorial;
 
package org.eclipse.higgins.xdi4j.tutorial;
  
Line 32: Line 22:
 
  * This example app shows how to output
 
  * This example app shows how to output
 
  * a graph in different serialization formats.
 
  * a graph in different serialization formats.
*
 
* @author msabadello at parityinc dot not
 
*
 
 
  */
 
  */
 
public class Tutorial2 {
 
public class Tutorial2 {
Line 45: Line 32:
 
// let's create a simple graph
 
// let's create a simple graph
  
graph.createStatement(new XRI3Segment("=markus"), new XRI3Segment("+name"), "Markus");
+
graph.createStatement(new XRI3Segment("=alice"), new XRI3Segment("+name"), "Alice X.");
graph.createStatement(new XRI3Segment("=markus"), new XRI3Segment("+friend"), new XRI3Segment("=giovanni"));
+
graph.createStatement(new XRI3Segment("=alice"), new XRI3Segment("+friend"), new XRI3Segment("=bob"));
  
 
// output the graph in X3 Simple and XDI/XML
 
// output the graph in X3 Simple and XDI/XML
Line 56: Line 43:
  
 
writer = XDIWriterRegistry.forFormat("XDI/XML");
 
writer = XDIWriterRegistry.forFormat("XDI/XML");
 +
writer.write(graph, System.out, null);
 +
 +
graph.close();
 +
}
 +
}
 +
</pre>
 +
 +
== Deserialization ==
 +
 +
'''Example Code:'''
 +
 +
<pre>
 +
package org.eclipse.higgins.xdi4j.tutorial;
 +
 +
import java.io.File;
 +
import java.io.FileInputStream;
 +
 +
import org.eclipse.higgins.xdi4j.Graph;
 +
import org.eclipse.higgins.xdi4j.GraphFactory;
 +
import org.eclipse.higgins.xdi4j.impl.memory.MemoryGraphFactory;
 +
import org.eclipse.higgins.xdi4j.io.XDIReader;
 +
import org.eclipse.higgins.xdi4j.io.XDIReaderRegistry;
 +
import org.eclipse.higgins.xdi4j.io.XDIWriter;
 +
import org.eclipse.higgins.xdi4j.io.XDIWriterRegistry;
 +
 +
/**
 +
* This example app shows how to read a graph in one format
 +
* and store it in another.
 +
*/
 +
public class Tutorial2A {
 +
 +
public static void main(String[] args) throws Exception {
 +
 +
GraphFactory factory = MemoryGraphFactory.getInstance();
 +
Graph graph = factory.openGraph();
 +
 +
// read a graph from file
 +
 +
File file = new File("test.graph");
 +
XDIReader reader = XDIReaderRegistry.getAuto();
 +
 +
reader.read(graph, new FileInputStream(file), null);
 +
 +
// output the graph in X3 Simple
 +
 +
XDIWriter writer;
 +
 +
writer = XDIWriterRegistry.forFormat("X3 Simple");
 
writer.write(graph, System.out, null);
 
writer.write(graph, System.out, null);
  

Latest revision as of 08:57, 29 January 2010

{{#eclipseproject:technology.higgins|eclipse_custom_style.css}}

Higgins logo 76Wx100H.jpg

This tutorial explains how to serialize and deserialize an XDI graph in any of the XDI serialization formats.

A typical application is to read an XDI graph from a file into memory, perform a few operations on it, and then store it again to file.

Serialization

Example Code:

package org.eclipse.higgins.xdi4j.tutorial;

import org.eclipse.higgins.xdi4j.Graph;
import org.eclipse.higgins.xdi4j.GraphFactory;
import org.eclipse.higgins.xdi4j.impl.memory.MemoryGraphFactory;
import org.eclipse.higgins.xdi4j.io.XDIWriter;
import org.eclipse.higgins.xdi4j.io.XDIWriterRegistry;
import org.eclipse.higgins.xdi4j.xri3.impl.XRI3Segment;

/**
 * This example app shows how to output
 * a graph in different serialization formats.
 */
public class Tutorial2 {

	public static void main(String[] args) throws Exception {

		GraphFactory factory = MemoryGraphFactory.getInstance();
		Graph graph = factory.openGraph();

		// let's create a simple graph

		graph.createStatement(new XRI3Segment("=alice"), new XRI3Segment("+name"), "Alice X.");
		graph.createStatement(new XRI3Segment("=alice"), new XRI3Segment("+friend"), new XRI3Segment("=bob"));

		// output the graph in X3 Simple and XDI/XML

		XDIWriter writer;

		writer = XDIWriterRegistry.forFormat("X3 Simple");
		writer.write(graph, System.out, null);

		writer = XDIWriterRegistry.forFormat("XDI/XML");
		writer.write(graph, System.out, null);

		graph.close();
	}
}

Deserialization

Example Code:

package org.eclipse.higgins.xdi4j.tutorial;

import java.io.File;
import java.io.FileInputStream;

import org.eclipse.higgins.xdi4j.Graph;
import org.eclipse.higgins.xdi4j.GraphFactory;
import org.eclipse.higgins.xdi4j.impl.memory.MemoryGraphFactory;
import org.eclipse.higgins.xdi4j.io.XDIReader;
import org.eclipse.higgins.xdi4j.io.XDIReaderRegistry;
import org.eclipse.higgins.xdi4j.io.XDIWriter;
import org.eclipse.higgins.xdi4j.io.XDIWriterRegistry;

/**
 * This example app shows how to read a graph in one format
 * and store it in another.
 */
public class Tutorial2A {

	public static void main(String[] args) throws Exception {

		GraphFactory factory = MemoryGraphFactory.getInstance();
		Graph graph = factory.openGraph();

		// read a graph from file

		File file = new File("test.graph");
		XDIReader reader = XDIReaderRegistry.getAuto();
		
		reader.read(graph, new FileInputStream(file), null);
		
		// output the graph in X3 Simple

		XDIWriter writer;

		writer = XDIWriterRegistry.forFormat("X3 Simple");
		writer.write(graph, System.out, null);

		graph.close();
	}
}

Back to the top