This is an automated email from the ASF dual-hosted git repository.
andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git
The following commit(s) were added to refs/heads/main by this push:
new 2c8aa15844 Allow Node_Ext to be wrapped as NodeValueNode without
further checks.
2c8aa15844 is described below
commit 2c8aa158445dc4d33b708ac103262cb271e2c924
Author: Claus Stadler <[email protected]>
AuthorDate: Tue Aug 26 12:54:12 2025 +0200
Allow Node_Ext to be wrapped as NodeValueNode without further checks.
---
.../src/main/java/org/apache/jena/sparql/expr/NodeValue.java | 5 +++++
.../test/java/org/apache/jena/sparql/expr/TestNodeValue.java | 10 ++++++++++
2 files changed, 15 insertions(+)
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 3384d93d6e..6696d22ee5 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
@@ -571,6 +571,11 @@ public abstract class NodeValue extends ExprNode
// ---- Setting : used when a node is used to make a NodeValue
private static NodeValue nodeToNodeValue(Node node) {
+ if ( node.isExt() ) {
+ // Don't judge custom extensions.
+ return new NodeValueNode(node);
+ }
+
if ( ! node.isConcrete() ) {
String msg;
if ( node.isVariable() )
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 3fca3f018e..802f6784d1 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
@@ -30,6 +30,7 @@ import org.junit.jupiter.api.Test;
import org.apache.jena.datatypes.xsd.XSDDatatype;
import org.apache.jena.graph.Node;
import org.apache.jena.graph.NodeFactory;
+import org.apache.jena.graph.Node_Marker;
import org.apache.jena.query.*;
import org.apache.jena.rdf.model.Model;
import org.apache.jena.rdf.model.ModelFactory;
@@ -1287,4 +1288,13 @@ public class TestNodeValue
NodeValue.makeNode(n);
});
}
+
+ @Test
+ public void testCustomNode() {
+ Node expectedNode = Node_Marker.marker("test");
+ Expr expr = ExprLib.nodeToExpr(expectedNode);
+ NodeValue nv = expr.getConstant();
+ Node actualNode = nv.asNode();
+ assertEquals(expectedNode, actualNode);
+ }
}