From 6450a59033cfa0fc9c0c718fe6c5e14b2e12ffa2 Mon Sep 17 00:00:00 2001 From: Janos Meszaros Date: Tue, 17 Feb 2026 08:55:10 +0100 Subject: [PATCH] Accept blank nodes as a value in `VALUES` --- src/main/com/yetanalytics/flint/spec/values.cljc | 1 + src/test/com/yetanalytics/flint/spec/values_test.cljc | 11 ++++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/com/yetanalytics/flint/spec/values.cljc b/src/main/com/yetanalytics/flint/spec/values.cljc index 87b0a94..5383480 100644 --- a/src/main/com/yetanalytics/flint/spec/values.cljc +++ b/src/main/com/yetanalytics/flint/spec/values.cljc @@ -6,6 +6,7 @@ (s/or :ax/iri ax/iri-spec :ax/prefix-iri ax/prefix-iri-spec :ax/literal ax/literal-spec + :ax/bnode ax/bnode-spec :values/undef nil?)) (defn- matching-val-lengths* diff --git a/src/test/com/yetanalytics/flint/spec/values_test.cljc b/src/test/com/yetanalytics/flint/spec/values_test.cljc index 870364c..f9e7f45 100644 --- a/src/test/com/yetanalytics/flint/spec/values_test.cljc +++ b/src/test/com/yetanalytics/flint/spec/values_test.cljc @@ -13,11 +13,12 @@ (s/conform ::vs/values '{?foo [1 2 3] ?bar [:x :y :z]}))) (is (= '[:values/map [[[:ax/var ?foo] [:ax/var ?bar]] - [[[:values/undef nil] [:ax/prefix-iri :x]] - [[:ax/literal 2] [:values/undef nil]]]]] - (s/conform ::vs/values '{[?foo ?bar] [[nil :x] [2 nil]]}) - (s/conform ::vs/values '{?foo [nil 2] - ?bar [:x nil]}))))) + [[[:values/undef nil] [:ax/bnode _blank]] + [[:ax/literal 2] [:ax/prefix-iri :x]] + [[:ax/bnode _blank] [:values/undef nil]]]]] + (s/conform ::vs/values '{[?foo ?bar] [[nil _blank] [2 :x] [_blank nil]]}) + (s/conform ::vs/values '{?foo [nil 2 _blank] + ?bar [_blank :x nil]}))))) (deftest invalid-values-test (testing "Invalid VALUES clauses"