Hi, I have this simplified query
PREFIX owl: <http://www.w3.org/2002/07/owl#> CONSTRUCT { ?s <smth> ?ab. } { BIND (STRUUID() AS ?a) ?s a owl:Class . OPTIONAL { ?s ?p ?o . BIND (STRUUID() AS ?b) } OPTIONAL { ?x ?y ?z . BIND (STRUUID() AS ?c) } BIND (CONCAT(?a, "/", ?b) AS ?ab) BIND (CONCAT(?a, "/", ?c) AS ?ac) } What I'm getting is multiple ?ab UUIDs for the same ?s binding: skos:Collection <http://server/unset-base/smth> "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/8d946969-92f2-4239-bad0-b0c92c606b9e" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/ce7863e0-33b6-47bf-bae3-e85b3e350636" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/b06ece07-cdbb-4196-ae34-f7676f739b55" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/2953ef49-775c-4f52-bdd0-f5b8f0cf82d6" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/0eb8c370-a672-4476-b1fe-f8e9acb93901" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/630bc8cb-30f0-4d87-93d1-0f24c432bc5f" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/f318a7f4-8510-4e42-ad60-18a711e6af0e" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/1d78b7ba-c8f7-42fb-8c72-a2f85732c8a0" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/5b606245-e5c1-4aa7-a98c-36bada0c21ef" , "520a2768-dd5e-4a5f-b2a8-09328ad89b3f/01148de7-8ebb-4a6f-843f-8664a27e2eee" . I would expect to get only one UUID per ?s. Can the query be reformulated to achieve this? I cannot move ?ab and ?ac inside the patterns next to STRUUID() because ?a is undefined there. Doing SELECT (COUNT(DISTINCT ?ac) AS ?count) returns 11655 results while it only returns 315 on Dydra. I think the difference is related to this issue: https://github.com/w3c/sparql-12/issues/102 I ran it on sparql.org over the skos.owl: https://raw.githubusercontent.com/usc-isi-i2/karma-step-by-step/master/preloaded-ontologies/skos.owl Martynas
