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);
+    }
 }

Reply via email to