fix: NodeValue.makeNodeFloat(String) datatype XSDfloat

test: TestNodeValue.float4 makeNodeFloat(String) is Float
diff --git a/jena-arq/src/main/java/org/apache/jena/sparql/expr/NodeValue.java b/jena-arq/src/main/java/org/apache/jena/sparql/expr/NodeValue.java
index af69337..8296676 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/expr/NodeValue.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/expr/NodeValue.java
@@ -319,7 +319,7 @@
 
     public static NodeValue makeNodeFloat(String lexicalForm)
     {
-        NodeValue nv = makeNode(lexicalForm, null, XSDdouble.getURI()) ;
+        NodeValue nv = makeNode(lexicalForm, null, XSDfloat.getURI()) ;
         return nv ;
     }
 
diff --git a/jena-arq/src/test/java/org/apache/jena/sparql/expr/TestNodeValue.java b/jena-arq/src/test/java/org/apache/jena/sparql/expr/TestNodeValue.java
index 1074c21..2fd07a7 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/expr/TestNodeValue.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/expr/TestNodeValue.java
@@ -104,6 +104,14 @@
         assertTrue("Not same float: " + v1 + " & " + v2, v1.getFloat() == v2.getFloat());
         assertTrue("Not same float as double: " + v1 + " & " + v2, v1.getDouble() == v2.getDouble());
     }
+    
+    @Test
+    public void testFloat4() {
+        NodeValue v1 = NodeValue.makeNodeFloat("5.7");
+        NodeValue v2 = NodeValue.makeFloat(5.7f);
+        assertTrue("Not same float: " + v1 + " & " + v2, v1.getFloat() == v2.getFloat());
+        assertTrue("Not same float as double: " + v1 + " & " + v2, v1.getDouble() == v2.getDouble());
+    }
 
     @Test
     public void testDouble1() {