Added:
branches/multi_valued/caboto/src/main/java/META-INF/
Modified:
branches/multi_valued/caboto/src/main/java/org/caboto/CabotoJsonSupport.java
Log:
ASSIGNED - # 236: Repeating properties per annotation
https://webfutures.ilrt.bris.ac.uk/stars/ticket/236
Modified:
branches/multi_valued/caboto/src/main/java/org/caboto/CabotoJsonSupport.java
==============================================================================
---
branches/multi_valued/caboto/src/main/java/org/caboto/CabotoJsonSupport.java
(original)
+++
branches/multi_valued/caboto/src/main/java/org/caboto/CabotoJsonSupport.java
Thu Jul 9 09:04:12 2009
@@ -33,15 +33,19 @@
*/
package org.caboto;
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.codehaus.jettison.json.JSONArray;
+import org.codehaus.jettison.json.JSONException;
+import org.codehaus.jettison.json.JSONObject;
+
import com.hp.hpl.jena.rdf.model.Literal;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ResIterator;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.rdf.model.Statement;
import com.hp.hpl.jena.rdf.model.StmtIterator;
-import org.codehaus.jettison.json.JSONArray;
-import org.codehaus.jettison.json.JSONException;
-import org.codehaus.jettison.json.JSONObject;
/**
* A utility class used to convert RDF (Jena Model and Resource classes)
to JSON.
@@ -106,8 +110,10 @@
}
} else if (stmt.getObject().isLiteral()) {
-
- jsonObject.put(key, (((Literal)
stmt.getObject()).getLexicalForm()));
+ if(!jsonObject.has(key)) {
+ jsonObject.put(key, new JSONArray());
+ }
+ jsonObject.getJSONArray(key).put(((Literal)
stmt.getObject()).getLexicalForm());
}
}