diff --git a/.travis.yml b/.travis.yml
index 2ee0939..f39b742 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,9 @@
language: java
+sudo: false
+cache:
+ directories:
+ - $HOME/.m2
jdk:
- - openjdk7
- - oraclejdk7
- oraclejdk8
notifications:
email:
diff --git a/README.md b/README.md
index 9a9e006..09b6803 100644
--- a/README.md
+++ b/README.md
@@ -15,7 +15,7 @@ From Maven
com.github.jsonld-java
jsonld-java-clerezza
- 0.7.0-SNAPSHOT
+ 0.12.0
(Adjust for most recent , as found in ``pom.xml``).
@@ -23,7 +23,7 @@ From Maven
ClerezzaTripleCallback
------------------
-The ClerezzaTripleCallback returns an instance of `org.apache.clerezza.rdf.core.MGraph`
+The ClerezzaTripleCallback returns an instance of `org.apache.clerezza.commons.rdf.Graph`
See [ClerezzaTripleCallbackTest.java](./src/test/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallbackTest.java) for example Usage.
diff --git a/pom.xml b/pom.xml
index 133e87c..ddd25f0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,10 +4,11 @@
jsonld-java-parent
com.github.jsonld-java
- 0.7.1-SNAPSHOT
+ 0.12.0
4.0.0
jsonld-java-clerezza
+ 0.12.1-SNAPSHOT
JSONLD Java :: Clerezza Integration
JSON-LD Java integration module for Clerezza
bundle
@@ -28,14 +29,14 @@
- 0.14
+ 1.0.1
${project.groupId}
jsonld-java
- ${project.version}
+ 0.12.0
jar
compile
@@ -48,7 +49,7 @@
org.apache.felix
org.apache.felix.scr.annotations
- 1.9.12
+ 1.12.0
@@ -62,7 +63,7 @@
org.apache.clerezza
rdf.ontologies
- 0.12
+ 1.0.0
test
@@ -109,7 +110,7 @@
org.apache.felix
maven-scr-plugin
- 1.21.0
+ 1.26.0
diff --git a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParsingProvider.java b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParsingProvider.java
index 0923399..13b003d 100644
--- a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParsingProvider.java
+++ b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParsingProvider.java
@@ -3,10 +3,11 @@
import java.io.IOException;
import java.io.InputStream;
-import org.apache.clerezza.rdf.core.MGraph;
-import org.apache.clerezza.rdf.core.UriRef;
+import org.apache.clerezza.commons.rdf.Graph;
+import org.apache.clerezza.commons.rdf.IRI;
import org.apache.clerezza.rdf.core.serializedform.ParsingProvider;
import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
+import org.apache.clerezza.utils.Uri;
import org.apache.felix.scr.annotations.Component;
import org.apache.felix.scr.annotations.ConfigurationPolicy;
import org.apache.felix.scr.annotations.Service;
@@ -32,8 +33,8 @@ public class ClerezzaJsonLdParsingProvider implements ParsingProvider {
private final Logger logger = LoggerFactory.getLogger(getClass());
@Override
- public void parse(MGraph target, InputStream serializedGraph, String formatIdentifier,
- UriRef baseUri) {
+ public void parse(Graph target, InputStream serializedGraph, String formatIdentifier,
+ IRI baseUri) {
// The callback will add parsed triples to the target MGraph
final ClerezzaTripleCallback ctc = new ClerezzaTripleCallback();
ctc.setMGraph(target);
diff --git a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdSerializingProvider.java b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdSerializingProvider.java
index 6a14084..7761fcf 100644
--- a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdSerializingProvider.java
+++ b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdSerializingProvider.java
@@ -11,7 +11,7 @@
import java.util.LinkedHashMap;
import java.util.Map;
-import org.apache.clerezza.rdf.core.TripleCollection;
+import org.apache.clerezza.commons.rdf.Graph;
import org.apache.clerezza.rdf.core.serializedform.SerializingProvider;
import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
import org.apache.felix.scr.annotations.Activate;
@@ -103,7 +103,7 @@ public class ClerezzaJsonLdSerializingProvider implements SerializingProvider {
private boolean prettyPrint;
@Override
- public void serialize(OutputStream serializedGraph, TripleCollection tc, String formatIdentifier) {
+ public void serialize(OutputStream serializedGraph, Graph tc, String formatIdentifier) {
final ClerezzaRDFParser serializer = new ClerezzaRDFParser();
try {
final long start = System.currentTimeMillis();
diff --git a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaRDFParser.java b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaRDFParser.java
index 7a27d10..0ffb062 100644
--- a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaRDFParser.java
+++ b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaRDFParser.java
@@ -3,16 +3,13 @@
import java.util.HashMap;
import java.util.Map;
-import org.apache.clerezza.rdf.core.BNode;
-import org.apache.clerezza.rdf.core.Language;
-import org.apache.clerezza.rdf.core.Literal;
-import org.apache.clerezza.rdf.core.NonLiteral;
-import org.apache.clerezza.rdf.core.PlainLiteral;
-import org.apache.clerezza.rdf.core.Resource;
-import org.apache.clerezza.rdf.core.Triple;
-import org.apache.clerezza.rdf.core.TripleCollection;
-import org.apache.clerezza.rdf.core.TypedLiteral;
-import org.apache.clerezza.rdf.core.UriRef;
+import org.apache.clerezza.commons.rdf.BlankNode;
+import org.apache.clerezza.commons.rdf.BlankNodeOrIRI;
+import org.apache.clerezza.commons.rdf.Graph;
+import org.apache.clerezza.commons.rdf.IRI;
+import org.apache.clerezza.commons.rdf.Literal;
+import org.apache.clerezza.commons.rdf.RDFTerm;
+import org.apache.clerezza.commons.rdf.Triple;
import com.github.jsonldjava.core.JsonLdError;
import com.github.jsonldjava.core.JsonLdProcessor;
@@ -20,7 +17,7 @@
import com.github.jsonldjava.core.RDFParser;
/**
- * Converts a Clerezza {@link TripleCollection} to the {@link RDFDataset} used
+ * Converts a Clerezza {@link Graph} to the {@link RDFDataset} used
* by the {@link JsonLdProcessor}
*
* @author Rupert Westenthaler
@@ -35,48 +32,38 @@ public class ClerezzaRDFParser implements RDFParser {
@Override
public RDFDataset parse(Object input) throws JsonLdError {
count = 0;
- final Map bNodeMap = new HashMap(1024);
+ final Map blankNodeMap = new HashMap(1024);
final RDFDataset result = new RDFDataset();
- if (input instanceof TripleCollection) {
- for (final Triple t : ((TripleCollection) input)) {
- handleStatement(result, t, bNodeMap);
+ if (input instanceof Graph) {
+ for (final Triple t : ((Graph) input)) {
+ handleStatement(result, t, blankNodeMap);
}
}
- bNodeMap.clear(); // help gc
+ blankNodeMap.clear(); // help gc
return result;
}
- private void handleStatement(RDFDataset result, Triple t, Map bNodeMap) {
- final String subject = getResourceValue(t.getSubject(), bNodeMap);
- final String predicate = getResourceValue(t.getPredicate(), bNodeMap);
- final Resource object = t.getObject();
+ private void handleStatement(RDFDataset result, Triple t, Map blankNodeMap) {
+ final String subject = getResourceValue(t.getSubject(), blankNodeMap);
+ final String predicate = getResourceValue(t.getPredicate(), blankNodeMap);
+ final RDFTerm object = t.getObject();
if (object instanceof Literal) {
-
- final String value = ((Literal) object).getLexicalForm();
+ final Literal literalObject = (Literal) object;
+ final String value = literalObject.getLexicalForm();
final String language;
final String datatype;
- if (object instanceof TypedLiteral) {
- language = null;
- datatype = getResourceValue(((TypedLiteral) object).getDataType(), bNodeMap);
- } else if (object instanceof PlainLiteral) {
- // we use RDF 1.1 literals so we do set the RDF_LANG_STRING
- // datatype
- datatype = RDF_LANG_STRING;
- final Language l = ((PlainLiteral) object).getLanguage();
- if (l == null) {
- language = null;
- } else {
- language = l.toString();
- }
+ if (literalObject.getLanguage() != null) {
+ language = literalObject.getLanguage().toString();
+ datatype = RDF_LANG_STRING;
} else {
- throw new IllegalStateException("Unknown Literal class "
- + object.getClass().getName());
+ datatype = getResourceValue(literalObject.getDataType(), blankNodeMap);
+ language = null;
}
result.addTriple(subject, predicate, value, datatype, language);
count++;
} else {
- result.addTriple(subject, predicate, getResourceValue((NonLiteral) object, bNodeMap));
+ result.addTriple(subject, predicate, getResourceValue((BlankNodeOrIRI) object, blankNodeMap));
count++;
}
@@ -92,20 +79,20 @@ public long getCount() {
return count;
}
- private String getResourceValue(NonLiteral nl, Map bNodeMap) {
+ private String getResourceValue(BlankNodeOrIRI nl, Map BlankNodeMap) {
if (nl == null) {
return null;
- } else if (nl instanceof UriRef) {
- return ((UriRef) nl).getUnicodeString();
- } else if (nl instanceof BNode) {
- String bNodeId = bNodeMap.get(nl);
- if (bNodeId == null) {
- bNodeId = Integer.toString(bNodeMap.size());
- bNodeMap.put((BNode) nl, bNodeId);
+ } else if (nl instanceof IRI) {
+ return ((IRI) nl).getUnicodeString();
+ } else if (nl instanceof BlankNode) {
+ String BlankNodeId = BlankNodeMap.get(nl);
+ if (BlankNodeId == null) {
+ BlankNodeId = Integer.toString(BlankNodeMap.size());
+ BlankNodeMap.put((BlankNode) nl, BlankNodeId);
}
- return new StringBuilder("_:b").append(bNodeId).toString();
+ return new StringBuilder("_:b").append(BlankNodeId).toString();
} else {
- throw new IllegalStateException("Unknwon NonLiteral type " + nl.getClass().getName()
+ throw new IllegalStateException("Unknwon BlankNodeOrIRI type " + nl.getClass().getName()
+ "!");
}
}
diff --git a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallback.java b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallback.java
index 89ac284..01bf188 100644
--- a/src/main/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallback.java
+++ b/src/main/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallback.java
@@ -4,16 +4,16 @@
import java.util.List;
import java.util.Map;
-import org.apache.clerezza.rdf.core.BNode;
-import org.apache.clerezza.rdf.core.Language;
-import org.apache.clerezza.rdf.core.MGraph;
-import org.apache.clerezza.rdf.core.NonLiteral;
-import org.apache.clerezza.rdf.core.Resource;
-import org.apache.clerezza.rdf.core.UriRef;
-import org.apache.clerezza.rdf.core.impl.PlainLiteralImpl;
-import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
-import org.apache.clerezza.rdf.core.impl.TripleImpl;
-import org.apache.clerezza.rdf.core.impl.TypedLiteralImpl;
+import org.apache.clerezza.commons.rdf.BlankNode;
+import org.apache.clerezza.commons.rdf.BlankNodeOrIRI;
+import org.apache.clerezza.commons.rdf.Graph;
+import org.apache.clerezza.commons.rdf.IRI;
+import org.apache.clerezza.commons.rdf.Language;
+import org.apache.clerezza.commons.rdf.RDFTerm;
+import org.apache.clerezza.commons.rdf.impl.utils.PlainLiteralImpl;
+import org.apache.clerezza.commons.rdf.impl.utils.TripleImpl;
+import org.apache.clerezza.commons.rdf.impl.utils.TypedLiteralImpl;
+import org.apache.clerezza.commons.rdf.impl.utils.simple.SimpleGraph;
import com.github.jsonldjava.core.JsonLdTripleCallback;
import com.github.jsonldjava.core.RDFDataset;
@@ -22,15 +22,15 @@ public class ClerezzaTripleCallback implements JsonLdTripleCallback {
private static final String RDF_LANG_STRING = "http://www.w3.org/1999/02/22-rdf-syntax-ns#langString";
- private MGraph mGraph = new SimpleMGraph();
- private Map bNodeMap = new HashMap();
+ private Graph mGraph = new SimpleGraph();
+ private Map bNodeMap = new HashMap<>();
- public void setMGraph(MGraph mGraph) {
- this.mGraph = mGraph;
- bNodeMap = new HashMap();
+ public void setMGraph(Graph graph) {
+ this.mGraph = graph;
+ bNodeMap = new HashMap<>();
}
- public MGraph getMGraph() {
+ public Graph getMGraph() {
return mGraph;
}
@@ -40,41 +40,41 @@ private void triple(String s, String p, String o, String graph) {
return;
}
- final NonLiteral subject = getNonLiteral(s);
- final UriRef predicate = new UriRef(p);
- final NonLiteral object = getNonLiteral(o);
+ final BlankNodeOrIRI subject = getNonLiteral(s);
+ final IRI predicate = new IRI(p);
+ final BlankNodeOrIRI object = getNonLiteral(o);
mGraph.add(new TripleImpl(subject, predicate, object));
}
private void triple(String s, String p, String value, String datatype, String language,
String graph) {
- final NonLiteral subject = getNonLiteral(s);
- final UriRef predicate = new UriRef(p);
- Resource object;
+ final BlankNodeOrIRI subject = getNonLiteral(s);
+ final IRI predicate = new IRI(p);
+ RDFTerm object;
if (language != null) {
object = new PlainLiteralImpl(value, new Language(language));
} else if (datatype == null || RDF_LANG_STRING.equals(datatype)) {
object = new PlainLiteralImpl(value);
} else {
- object = new TypedLiteralImpl(value, new UriRef(datatype));
+ object = new TypedLiteralImpl(value, new IRI(datatype));
}
mGraph.add(new TripleImpl(subject, predicate, object));
}
- private NonLiteral getNonLiteral(String s) {
+ private BlankNodeOrIRI getNonLiteral(String s) {
if (s.startsWith("_:")) {
return getBNode(s);
} else {
- return new UriRef(s);
+ return new IRI(s);
}
}
- private BNode getBNode(String s) {
+ private BlankNode getBNode(String s) {
if (bNodeMap.containsKey(s)) {
return bNodeMap.get(s);
} else {
- final BNode result = new BNode();
+ final BlankNode result = new BlankNode();
bNodeMap.put(s, result);
return result;
}
diff --git a/src/test/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParserSerializerTest.java b/src/test/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParserSerializerTest.java
index 41bff24..a34d596 100644
--- a/src/test/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParserSerializerTest.java
+++ b/src/test/java/com/github/jsonldjava/clerezza/ClerezzaJsonLdParserSerializerTest.java
@@ -6,15 +6,14 @@
import java.nio.charset.Charset;
import java.util.ServiceLoader;
-import org.apache.clerezza.rdf.core.Graph;
-import org.apache.clerezza.rdf.core.Language;
+import org.apache.clerezza.commons.rdf.Graph;
+import org.apache.clerezza.commons.rdf.IRI;
+import org.apache.clerezza.commons.rdf.Language;
+import org.apache.clerezza.commons.rdf.Triple;
+import org.apache.clerezza.commons.rdf.impl.utils.PlainLiteralImpl;
+import org.apache.clerezza.commons.rdf.impl.utils.TripleImpl;
+import org.apache.clerezza.commons.rdf.impl.utils.simple.SimpleGraph;
import org.apache.clerezza.rdf.core.LiteralFactory;
-import org.apache.clerezza.rdf.core.MGraph;
-import org.apache.clerezza.rdf.core.Triple;
-import org.apache.clerezza.rdf.core.UriRef;
-import org.apache.clerezza.rdf.core.impl.PlainLiteralImpl;
-import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
-import org.apache.clerezza.rdf.core.impl.TripleImpl;
import org.apache.clerezza.rdf.core.serializedform.Parser;
import org.apache.clerezza.rdf.core.serializedform.Serializer;
import org.apache.clerezza.rdf.ontologies.FOAF;
@@ -47,9 +46,9 @@ public class ClerezzaJsonLdParserSerializerTest {
@BeforeClass
public static void init(){
LiteralFactory lf = LiteralFactory.getInstance();
- UriRef pers1 = new UriRef("http://www.example.org/test#pers1");
- UriRef pers2 = new UriRef("http://www.example.org/test#pers2");
- MGraph data = new SimpleMGraph();
+ IRI pers1 = new IRI("http://www.example.org/test#pers1");
+ IRI pers2 = new IRI("http://www.example.org/test#pers2");
+ Graph data = new SimpleGraph();
//NOTE: This test a language literal with and without language as
// well as a xsd:string typed literal. To test correct handling of
// RDF1.1
@@ -61,14 +60,14 @@ public static void init(){
data.add(new TripleImpl(pers1, FOAF.age, lf.createTypedLiteral(38)));
data.add(new TripleImpl(pers1, FOAF.knows, pers2));
data.add(new TripleImpl(pers2, FOAF.name, new PlainLiteralImpl("Reto Bachmann-Gmür")));
- rdfData = data.getGraph();
+ rdfData = data;
}
@Test
public void parserTest() {
final InputStream in = getClass().getClassLoader().getResourceAsStream(
"testfiles/product.jsonld");
- SimpleMGraph graph = new SimpleMGraph();
+ SimpleGraph graph = new SimpleGraph();
parser.parse(graph, in, "application/ld+json");
Assert.assertEquals(13, graph.size());
}
@@ -80,7 +79,7 @@ public void serializerTest(){
log.info("Serialized Graph: \n {}",new String(data,UTF8));
//Now we reparse the graph to validate it was serialized correctly
- SimpleMGraph reparsed = new SimpleMGraph();
+ SimpleGraph reparsed = new SimpleGraph();
parser.parse(reparsed, new ByteArrayInputStream(data), "application/ld+json");
Assert.assertEquals(7, reparsed.size());
for(Triple t : rdfData){
diff --git a/src/test/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallbackTest.java b/src/test/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallbackTest.java
index dac25e7..199a59e 100644
--- a/src/test/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallbackTest.java
+++ b/src/test/java/com/github/jsonldjava/clerezza/ClerezzaTripleCallbackTest.java
@@ -5,9 +5,10 @@
import java.io.IOException;
import java.io.InputStream;
+import java.nio.charset.StandardCharsets;
-import org.apache.clerezza.rdf.core.MGraph;
-import org.apache.clerezza.rdf.core.Triple;
+import org.apache.clerezza.commons.rdf.Graph;
+import org.apache.clerezza.commons.rdf.Triple;
import org.junit.Test;
import com.github.jsonldjava.core.JsonLdError;
@@ -20,11 +21,11 @@ public class ClerezzaTripleCallbackTest {
public void triplesTest() throws IOException, JsonLdError {
final InputStream in = getClass().getClassLoader().getResourceAsStream(
"testfiles/product.jsonld");
- final Object input = JsonUtils.fromInputStream(in);
+ final Object input = JsonUtils.fromInputStream(in, StandardCharsets.UTF_8);
final ClerezzaTripleCallback callback = new ClerezzaTripleCallback();
- final MGraph graph = (MGraph) JsonLdProcessor.toRDF(input, callback);
+ final Graph graph = (Graph) JsonLdProcessor.toRDF(input, callback);
for (final Triple t : graph) {
System.out.println(t);
@@ -37,11 +38,11 @@ public void triplesTest() throws IOException, JsonLdError {
public void curiesInContextTest() throws IOException, JsonLdError {
final InputStream in = getClass().getClassLoader().getResourceAsStream(
"testfiles/curies-in-context.jsonld");
- final Object input = JsonUtils.fromInputStream(in);
+ final Object input = JsonUtils.fromInputStream(in, StandardCharsets.UTF_8);
final ClerezzaTripleCallback callback = new ClerezzaTripleCallback();
- final MGraph graph = (MGraph) JsonLdProcessor.toRDF(input, callback);
+ final Graph graph = (Graph) JsonLdProcessor.toRDF(input, callback);
for (final Triple t : graph) {
System.out.println(t);
diff --git a/src/test/resources/testfiles/curies-in-context.jsonld b/src/test/resources/testfiles/curies-in-context.jsonld
index 0490d79..e066620 100644
--- a/src/test/resources/testfiles/curies-in-context.jsonld
+++ b/src/test/resources/testfiles/curies-in-context.jsonld
@@ -6,5 +6,5 @@
},
"@type": "Person",
"name": "Santa Claus",
- "foaf:nick": "Sämi"
+ "foaf:nick": "Sami"
}
\ No newline at end of file