From 119413413a53cd6ebcbff50d3501f32f72aff6f0 Mon Sep 17 00:00:00 2001 From: Ben Date: Tue, 21 Jul 2020 08:01:39 -0600 Subject: [PATCH] Adjust SPARQL node logic to add datatypes to literals only if lacking a language tag (#175) --- .../mannlib/vitro/webapp/dao/jena/RDFServiceGraph.java | 6 +++--- .../cornell/mannlib/vitro/webapp/dao/jena/SparqlGraph.java | 6 +++--- .../vitro/webapp/rdfservice/impl/RDFServiceImpl.java | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/RDFServiceGraph.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/RDFServiceGraph.java index 491858453..0b79646b6 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/RDFServiceGraph.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/RDFServiceGraph.java @@ -290,10 +290,10 @@ public class RDFServiceGraph implements GraphWithPerform { literalBuff.append("\""); pyString(literalBuff, node.getLiteralLexicalForm()); literalBuff.append("\""); - if (node.getLiteralDatatypeURI() != null) { - literalBuff.append("^^<").append(node.getLiteralDatatypeURI()).append(">"); - } else if (!StringUtils.isEmpty(node.getLiteralLanguage())) { + if (!StringUtils.isEmpty(node.getLiteralLanguage())) { literalBuff.append("@").append(node.getLiteralLanguage()); + } else if (node.getLiteralDatatypeURI() != null) { + literalBuff.append("^^<").append(node.getLiteralDatatypeURI()).append(">"); } return literalBuff.toString(); } else { diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/SparqlGraph.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/SparqlGraph.java index 8b2ed8668..f0e55e239 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/SparqlGraph.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/dao/jena/SparqlGraph.java @@ -232,10 +232,10 @@ public class SparqlGraph implements GraphWithPerform { literalBuff.append("\""); pyString(literalBuff, node.getLiteralLexicalForm()); literalBuff.append("\""); - if (node.getLiteralDatatypeURI() != null) { - literalBuff.append("^^<").append(node.getLiteralDatatypeURI()).append(">"); - } else if (!StringUtils.isEmpty(node.getLiteralLanguage())) { + if (!StringUtils.isEmpty(node.getLiteralLanguage())) { literalBuff.append("@").append(node.getLiteralLanguage()); + } else if (node.getLiteralDatatypeURI() != null) { + literalBuff.append("^^<").append(node.getLiteralDatatypeURI()).append(">"); } return literalBuff.toString(); } else { diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/RDFServiceImpl.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/RDFServiceImpl.java index 217149283..7962c1041 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/RDFServiceImpl.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/RDFServiceImpl.java @@ -254,10 +254,10 @@ public abstract class RDFServiceImpl implements RDFService { literalBuff.append("\""); pyString(literalBuff, node.getLiteralLexicalForm()); literalBuff.append("\""); - if (node.getLiteralDatatypeURI() != null) { - literalBuff.append("^^<").append(node.getLiteralDatatypeURI()).append(">"); - } else if (node.getLiteralLanguage() != null && node.getLiteralLanguage().length() > 0) { + if (node.getLiteralLanguage() != null && node.getLiteralLanguage().length() > 0) { literalBuff.append("@").append(node.getLiteralLanguage()); + } else if (node.getLiteralDatatypeURI() != null) { + literalBuff.append("^^<").append(node.getLiteralDatatypeURI()).append(">"); } return literalBuff.toString(); } else {