Author: reto
Date: Thu Jun 17 15:01:06 2010
New Revision: 955622

URL: http://svn.apache.org/viewvc?rev=955622&view=rev
Log:
CLEREZZA-239: support base-uri in parser

Modified:
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.language/org.apache.clerezza.platform.language.core/src/main/java/org/apache/clerezza/platform/language/LanguageService.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/Parser.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/ParsingProvider.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.parser/src/main/java/org/apache/clerezza/rdf/jena/parser/JenaParserProvider.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.rdfjson/src/main/java/org/apache/clerezza/rdf/rdfjson/parser/RdfJsonParsingProvider.java

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.language/org.apache.clerezza.platform.language.core/src/main/java/org/apache/clerezza/platform/language/LanguageService.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.language/org.apache.clerezza.platform.language.core/src/main/java/org/apache/clerezza/platform/language/LanguageService.java?rev=955622&r1=955621&r2=955622&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.language/org.apache.clerezza.platform.language.core/src/main/java/org/apache/clerezza/platform/language/LanguageService.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.language/org.apache.clerezza.platform.language.core/src/main/java/org/apache/clerezza/platform/language/LanguageService.java
 Thu Jun 17 15:01:06 2010
@@ -214,7 +214,7 @@ public class LanguageService {      
                }
                try {
                        lingvojGraph = parser.parse(config.openStream(),
-                                       SupportedFormat.RDF_XML);
+                                       SupportedFormat.RDF_XML, null);
                        softLingvojGraph = new 
SoftReference<Graph>(lingvojGraph);
                        return lingvojGraph;
                } catch (IOException ex) {

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/Parser.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/Parser.java?rev=955622&r1=955621&r2=955622&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/Parser.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/Parser.java
 Thu Jun 17 15:01:06 2010
@@ -30,6 +30,7 @@ import java.util.ServiceLoader;
 import java.util.Set;
 
 import org.apache.clerezza.rdf.core.Graph;
+import org.apache.clerezza.rdf.core.UriRef;
 
 /**
  * This singleton class provides a method <code>parse</code> to transform 
@@ -122,6 +123,10 @@ public class Parser {
         */
        public Graph parse(InputStream serializedGraph,
                        String formatIdentifier) throws 
UnsupportedFormatException {
+               return parse(serializedGraph, formatIdentifier, null);
+       }
+       public Graph parse(InputStream serializedGraph,
+                       String formatIdentifier, UriRef baseUri) throws 
UnsupportedFormatException {
                String deParameterizedIdentifier;
                int semicolonPos = formatIdentifier.indexOf(';');
                if (semicolonPos > -1) {
@@ -133,7 +138,7 @@ public class Parser {
                if (provider == null) {
                        throw new 
UnsupportedParsingFormatException(formatIdentifier);
                }
-               return provider.parse(serializedGraph, formatIdentifier);
+               return provider.parse(serializedGraph, formatIdentifier, 
baseUri);
        }
        
        /**

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/ParsingProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/ParsingProvider.java?rev=955622&r1=955621&r2=955622&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/ParsingProvider.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.core/src/main/java/org/apache/clerezza/rdf/core/serializedform/ParsingProvider.java
 Thu Jun 17 15:01:06 2010
@@ -21,6 +21,7 @@ package org.apache.clerezza.rdf.core.ser
 import java.io.InputStream;
 
 import org.apache.clerezza.rdf.core.Graph;
+import org.apache.clerezza.rdf.core.UriRef;
 
 /**
  * An instance of this class parses RDF-Graph from one or more serialization
@@ -39,8 +40,9 @@ public interface ParsingProvider {
         *
         * @param serializedGraph the stream from which the serialized graph is 
read
         * @param formatIdentifier a String identifying the format
+        * @param baseUri the baseUri for interpreting relative uris, may be 
null
         * @return the graph read from <code>serializedGraph</code>
         */
-       Graph parse(InputStream serializedGraph, String formatIdentifier);
+       Graph parse(InputStream serializedGraph, String formatIdentifier, 
UriRef baseUri);
 
 }

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.parser/src/main/java/org/apache/clerezza/rdf/jena/parser/JenaParserProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.parser/src/main/java/org/apache/clerezza/rdf/jena/parser/JenaParserProvider.java?rev=955622&r1=955621&r2=955622&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.parser/src/main/java/org/apache/clerezza/rdf/jena/parser/JenaParserProvider.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.jena.parser/src/main/java/org/apache/clerezza/rdf/jena/parser/JenaParserProvider.java
 Thu Jun 17 15:01:06 2010
@@ -16,73 +16,79 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.clerezza.rdf.jena.parser;
-
-import java.io.InputStream;
-
-import org.apache.clerezza.rdf.core.Graph;
-import org.apache.clerezza.rdf.core.MGraph;
-import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
-import org.apache.clerezza.rdf.core.serializedform.ParsingProvider;
-import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
-import org.apache.clerezza.rdf.jena.facade.JenaGraph;
-
-import com.hp.hpl.jena.rdf.model.Model;
-import com.hp.hpl.jena.rdf.model.ModelFactory;
-import org.apache.felix.scr.annotations.Component;
-import org.apache.felix.scr.annotations.Properties;
-import org.apache.felix.scr.annotations.Property;
-import org.apache.felix.scr.annotations.Service;
-import 
org.apache.clerezza.rdf.core.serializedform.UnsupportedParsingFormatException;
-/**
- * A {...@link org.apache.clerezza.rdf.core.serializedform.ParsingProvider} 
based on Jena
- *
- * @author reto, mir
- */
-
-/*
- * see http://jena.sourceforge.net/IO/iohowto.html
- */
-...@component(immediate=true)
-...@service(ParsingProvider.class)
-...@property(name="supportedFormat", value={SupportedFormat.RDF_XML,
-       SupportedFormat.TURTLE, SupportedFormat.X_TURTLE,
-       SupportedFormat.N_TRIPLE, SupportedFormat.N3})
-...@supportedformat({SupportedFormat.RDF_XML,
-       SupportedFormat.TURTLE, SupportedFormat.X_TURTLE,
-       SupportedFormat.N_TRIPLE, SupportedFormat.N3})
-public class JenaParserProvider implements ParsingProvider {
-
-       @Override
-       public Graph parse(InputStream serializedGraph, String 
formatIdentifier) {
-               String jenaFormat = getJenaFormat(formatIdentifier);
-               MGraph mResult = new SimpleMGraph();
-               com.hp.hpl.jena.graph.Graph graph = new JenaGraph(mResult);
-               Model model = ModelFactory.createModelForGraph(graph);
-               String base = "urn:x-relative:";
-               model.read(serializedGraph, base, jenaFormat);
-               return mResult.getGraph();
-       }
-
-       private String getJenaFormat(String formatIdentifier) {
-               int semicolonPos = formatIdentifier.indexOf(';');
-               if (semicolonPos > -1) {
-                       formatIdentifier = formatIdentifier.substring(0, 
semicolonPos);
-               }
-               if (formatIdentifier.equals(SupportedFormat.RDF_XML)) {
-                       return "RDF/XML-ABBREV";
-               }
-               if (formatIdentifier.equals(SupportedFormat.TURTLE) ||
-                               
formatIdentifier.equals(SupportedFormat.X_TURTLE)) {
-                       return "TURTLE";
-               }
-               if (formatIdentifier.equals(SupportedFormat.N3)) {
-                       return "N3";
-               }
-               if (formatIdentifier.equals(SupportedFormat.N_TRIPLE)) {
-                       return "N-TRIPLE";
-               }
-               throw new UnsupportedParsingFormatException(formatIdentifier);
-       }
-
-}
+package org.apache.clerezza.rdf.jena.parser;
+
+import java.io.InputStream;
+
+import org.apache.clerezza.rdf.core.Graph;
+import org.apache.clerezza.rdf.core.MGraph;
+import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
+import org.apache.clerezza.rdf.core.serializedform.ParsingProvider;
+import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
+import org.apache.clerezza.rdf.jena.facade.JenaGraph;
+
+import com.hp.hpl.jena.rdf.model.Model;
+import com.hp.hpl.jena.rdf.model.ModelFactory;
+import org.apache.clerezza.rdf.core.UriRef;
+import org.apache.felix.scr.annotations.Component;
+import org.apache.felix.scr.annotations.Properties;
+import org.apache.felix.scr.annotations.Property;
+import org.apache.felix.scr.annotations.Service;
+import 
org.apache.clerezza.rdf.core.serializedform.UnsupportedParsingFormatException;
+/**
+ * A {...@link org.apache.clerezza.rdf.core.serializedform.ParsingProvider} 
based on Jena
+ *
+ * @author reto, mir
+ */
+
+/*
+ * see http://jena.sourceforge.net/IO/iohowto.html
+ */
+...@component(immediate=true)
+...@service(ParsingProvider.class)
+...@property(name="supportedFormat", value={SupportedFormat.RDF_XML,
+       SupportedFormat.TURTLE, SupportedFormat.X_TURTLE,
+       SupportedFormat.N_TRIPLE, SupportedFormat.N3})
+...@supportedformat({SupportedFormat.RDF_XML,
+       SupportedFormat.TURTLE, SupportedFormat.X_TURTLE,
+       SupportedFormat.N_TRIPLE, SupportedFormat.N3})
+public class JenaParserProvider implements ParsingProvider {
+
+       @Override
+       public Graph parse(InputStream serializedGraph, String 
formatIdentifier, UriRef baseUri) {
+               String jenaFormat = getJenaFormat(formatIdentifier);
+               MGraph mResult = new SimpleMGraph();
+               com.hp.hpl.jena.graph.Graph graph = new JenaGraph(mResult);
+               Model model = ModelFactory.createModelForGraph(graph);
+               String base;
+               if (baseUri == null) {
+                       base = "urn:x-relative:";
+               } else {
+                       base = baseUri.getUnicodeString();
+               }
+               model.read(serializedGraph, base, jenaFormat);
+               return mResult.getGraph();
+       }
+
+       private String getJenaFormat(String formatIdentifier) {
+               int semicolonPos = formatIdentifier.indexOf(';');
+               if (semicolonPos > -1) {
+                       formatIdentifier = formatIdentifier.substring(0, 
semicolonPos);
+               }
+               if (formatIdentifier.equals(SupportedFormat.RDF_XML)) {
+                       return "RDF/XML-ABBREV";
+               }
+               if (formatIdentifier.equals(SupportedFormat.TURTLE) ||
+                               
formatIdentifier.equals(SupportedFormat.X_TURTLE)) {
+                       return "TURTLE";
+               }
+               if (formatIdentifier.equals(SupportedFormat.N3)) {
+                       return "N3";
+               }
+               if (formatIdentifier.equals(SupportedFormat.N_TRIPLE)) {
+                       return "N-TRIPLE";
+               }
+               throw new UnsupportedParsingFormatException(formatIdentifier);
+       }
+
+}

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.rdfjson/src/main/java/org/apache/clerezza/rdf/rdfjson/parser/RdfJsonParsingProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.rdfjson/src/main/java/org/apache/clerezza/rdf/rdfjson/parser/RdfJsonParsingProvider.java?rev=955622&r1=955621&r2=955622&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.rdfjson/src/main/java/org/apache/clerezza/rdf/rdfjson/parser/RdfJsonParsingProvider.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.rdf.rdfjson/src/main/java/org/apache/clerezza/rdf/rdfjson/parser/RdfJsonParsingProvider.java
 Thu Jun 17 15:01:06 2010
@@ -16,123 +16,123 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-package org.apache.clerezza.rdf.rdfjson.parser;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.json.simple.JSONArray;
-import org.json.simple.JSONObject;
-import org.json.simple.parser.JSONParser;
-import org.json.simple.parser.ParseException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.apache.clerezza.rdf.core.BNode;
-import org.apache.clerezza.rdf.core.Graph;
-import org.apache.clerezza.rdf.core.Language;
-import org.apache.clerezza.rdf.core.LiteralFactory;
-import org.apache.clerezza.rdf.core.MGraph;
-import org.apache.clerezza.rdf.core.NonLiteral;
-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.ParsingProvider;
-import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
-
-/**
- * A {...@link org.apache.clerezza.rdf.core.serializedform.ParsingProvider} 
for rdf/json
- * 
- * @author tio *
- * @scr.component immediate="true"
- * @scr.service 
interface="org.apache.clerezza.rdf.core.serializedform.ParsingProvider"
- * 
- */
-...@supportedformat( SupportedFormat.RDF_JSON )
-public class RdfJsonParsingProvider implements ParsingProvider {
-
-       private final Logger logger = LoggerFactory.getLogger(getClass());
-
-       @Override
-       public Graph parse(InputStream serializedGraph, String 
formatIdentifier) {
-
-               MGraph mGraph = new SimpleMGraph();
-               JSONParser parser = new JSONParser();
-               InputStreamReader reader = new 
InputStreamReader(serializedGraph);
-               try {
-                       JSONObject root = (JSONObject) parser.parse(reader);
-                       Map<String, NonLiteral> subjects = 
createSubjectsFromJSONObjects(root);
-                       for (String keyString : subjects.keySet()) {
-                               NonLiteral key = subjects.get(keyString);
-                               JSONObject predicates = (JSONObject) 
root.get(keyString);
-                               addValuesToGraph(key, subjects, predicates, 
mGraph);
-                       }
-               } catch (IOException ioe) {
-                       logger.error(ioe.getMessage());
-                       throw new RuntimeException(ioe.getMessage());
-               } catch (ParseException pe) {
-                       logger.error(pe.getMessage());
-                       throw new RuntimeException(pe.getMessage());
-               }
-               return mGraph.getGraph();
-       }
-
-       private Map<String, NonLiteral> createSubjectsFromJSONObjects(
-                       JSONObject root) {
-               Map<String, NonLiteral> subjectsAsJSONObjects = new 
HashMap<String, NonLiteral>();
-
-               for (Object key : root.keySet()) {
-                       String keyString = (String) key;
-                       if (keyString.startsWith("_:")) {
-                               BNode bNode = new BNode();
-                               subjectsAsJSONObjects.put(keyString, bNode);
-                       } else {
-                               UriRef uri = new UriRef(keyString);
-                               subjectsAsJSONObjects.put(keyString, uri);
-                       }
-               }
-               return subjectsAsJSONObjects;
-       }
-       
-       private void addValuesToGraph(NonLiteral key, Map<String, NonLiteral> 
subjects,
-                       JSONObject predicates, MGraph mGraph) {
-               for (Object predicate : predicates.keySet()) {
-                       JSONArray objects = (JSONArray) 
predicates.get(predicate);
-                       for (Object object : objects) {
-                               JSONObject values = (JSONObject) object;
-                               String value = (String) values.get("value");
-                               if (values.get("type").equals("literal")) {
-                                       if (values.containsKey("datatype")
-                                                       && 
!values.get("datatype").equals("")
-                                                       && 
values.get("datatype") != null) {
-                                               mGraph.add(new TripleImpl(key, 
new UriRef(
-                                                               (String) 
predicate), LiteralFactory
-                                                               .getInstance()
-                                                               
.createTypedLiteral(value)));
-                                       } else if (values.containsKey("lang")
-                                                       && 
!values.get("lang").equals("")
-                                                       && values.get("lang") 
!= null) {
-                                               mGraph.add(new TripleImpl(key, 
new UriRef(
-                                                               (String) 
predicate),
-                                                               new 
PlainLiteralImpl(value,
-                                                                               
new Language((String) values
-                                                                               
                .get("lang")))));
-                                       } else {
-                                               mGraph.add(new TripleImpl(key, 
new UriRef(
-                                                               (String) 
predicate),
-                                                               new 
PlainLiteralImpl(value)));
-                                       }
-                               } else if (values.get("type").equals("uri")) {
-                                       mGraph.add(new TripleImpl(key, new 
UriRef(
-                                                       (String) predicate), 
new UriRef(value)));
-                               } else if (values.get("type").equals("bnode")) {
-                                       mGraph.add(new TripleImpl(key, new 
UriRef(
-                                                       (String) predicate), 
subjects.get(value)));
-                               }
-                       }
-               }
-       }
-}
+package org.apache.clerezza.rdf.rdfjson.parser;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.json.simple.JSONArray;
+import org.json.simple.JSONObject;
+import org.json.simple.parser.JSONParser;
+import org.json.simple.parser.ParseException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.apache.clerezza.rdf.core.BNode;
+import org.apache.clerezza.rdf.core.Graph;
+import org.apache.clerezza.rdf.core.Language;
+import org.apache.clerezza.rdf.core.LiteralFactory;
+import org.apache.clerezza.rdf.core.MGraph;
+import org.apache.clerezza.rdf.core.NonLiteral;
+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.ParsingProvider;
+import org.apache.clerezza.rdf.core.serializedform.SupportedFormat;
+
+/**
+ * A {...@link org.apache.clerezza.rdf.core.serializedform.ParsingProvider} 
for rdf/json
+ * 
+ * @author tio *
+ * @scr.component immediate="true"
+ * @scr.service 
interface="org.apache.clerezza.rdf.core.serializedform.ParsingProvider"
+ * 
+ */
+...@supportedformat( SupportedFormat.RDF_JSON )
+public class RdfJsonParsingProvider implements ParsingProvider {
+
+       private final Logger logger = LoggerFactory.getLogger(getClass());
+
+       @Override
+       public Graph parse(InputStream serializedGraph, String 
formatIdentifier, UriRef baseUri) {
+
+               MGraph mGraph = new SimpleMGraph();
+               JSONParser parser = new JSONParser();
+               InputStreamReader reader = new 
InputStreamReader(serializedGraph);
+               try {
+                       JSONObject root = (JSONObject) parser.parse(reader);
+                       Map<String, NonLiteral> subjects = 
createSubjectsFromJSONObjects(root);
+                       for (String keyString : subjects.keySet()) {
+                               NonLiteral key = subjects.get(keyString);
+                               JSONObject predicates = (JSONObject) 
root.get(keyString);
+                               addValuesToGraph(key, subjects, predicates, 
mGraph);
+                       }
+               } catch (IOException ioe) {
+                       logger.error(ioe.getMessage());
+                       throw new RuntimeException(ioe.getMessage());
+               } catch (ParseException pe) {
+                       logger.error(pe.getMessage());
+                       throw new RuntimeException(pe.getMessage());
+               }
+               return mGraph.getGraph();
+       }
+
+       private Map<String, NonLiteral> createSubjectsFromJSONObjects(
+                       JSONObject root) {
+               Map<String, NonLiteral> subjectsAsJSONObjects = new 
HashMap<String, NonLiteral>();
+
+               for (Object key : root.keySet()) {
+                       String keyString = (String) key;
+                       if (keyString.startsWith("_:")) {
+                               BNode bNode = new BNode();
+                               subjectsAsJSONObjects.put(keyString, bNode);
+                       } else {
+                               UriRef uri = new UriRef(keyString);
+                               subjectsAsJSONObjects.put(keyString, uri);
+                       }
+               }
+               return subjectsAsJSONObjects;
+       }
+       
+       private void addValuesToGraph(NonLiteral key, Map<String, NonLiteral> 
subjects,
+                       JSONObject predicates, MGraph mGraph) {
+               for (Object predicate : predicates.keySet()) {
+                       JSONArray objects = (JSONArray) 
predicates.get(predicate);
+                       for (Object object : objects) {
+                               JSONObject values = (JSONObject) object;
+                               String value = (String) values.get("value");
+                               if (values.get("type").equals("literal")) {
+                                       if (values.containsKey("datatype")
+                                                       && 
!values.get("datatype").equals("")
+                                                       && 
values.get("datatype") != null) {
+                                               mGraph.add(new TripleImpl(key, 
new UriRef(
+                                                               (String) 
predicate), LiteralFactory
+                                                               .getInstance()
+                                                               
.createTypedLiteral(value)));
+                                       } else if (values.containsKey("lang")
+                                                       && 
!values.get("lang").equals("")
+                                                       && values.get("lang") 
!= null) {
+                                               mGraph.add(new TripleImpl(key, 
new UriRef(
+                                                               (String) 
predicate),
+                                                               new 
PlainLiteralImpl(value,
+                                                                               
new Language((String) values
+                                                                               
                .get("lang")))));
+                                       } else {
+                                               mGraph.add(new TripleImpl(key, 
new UriRef(
+                                                               (String) 
predicate),
+                                                               new 
PlainLiteralImpl(value)));
+                                       }
+                               } else if (values.get("type").equals("uri")) {
+                                       mGraph.add(new TripleImpl(key, new 
UriRef(
+                                                       (String) predicate), 
new UriRef(value)));
+                               } else if (values.get("type").equals("bnode")) {
+                                       mGraph.add(new TripleImpl(key, new 
UriRef(
+                                                       (String) predicate), 
subjects.get(value)));
+                               }
+                       }
+               }
+       }
+}


Reply via email to