diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/configuration/preprocessors/utils/ProcessSparqlDataGetterN3.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/configuration/preprocessors/utils/ProcessSparqlDataGetterN3.java index 8a8efde49..7c82f7fc5 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/configuration/preprocessors/utils/ProcessSparqlDataGetterN3.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/edit/n3editing/configuration/preprocessors/utils/ProcessSparqlDataGetterN3.java @@ -160,9 +160,16 @@ public class ProcessSparqlDataGetterN3 extends ProcessDataGetterAbstract { QuerySolution qs = results.nextSolution(); Literal saveToVarLiteral = qs.getLiteral("saveToVar"); Literal queryLiteral = qs.getLiteral("query"); + String queryString = queryLiteral.getString(); + //we are saving the actual quotes in the n3 as escaped + //so for the json object we need to convert them into encoded + //quotes that will be reconverted on the client side for display + //Not converting them will either result in an incorrect json object + //or incorrect html + queryString = replaceQuotes(queryString); Resource queryModelResource = qs.getResource("queryModel"); jObject.element("saveToVar", saveToVarLiteral.getString()); - jObject.element("query", queryLiteral.getString()); + jObject.element("query",queryString); if(queryModelResource != null) { jObject.element("queryModel", queryModelResource.getURI()); } else { @@ -176,6 +183,12 @@ public class ProcessSparqlDataGetterN3 extends ProcessDataGetterAbstract { return jObject; } + + //Escape single and double quotes for html string to be returned to form + public String replaceQuotes(String inputStr) { + return inputStr.replaceAll("\'", "'").replaceAll("\"", """); + + } }