Dear BaseX team, I think there is a bug in the computed attribute constructor. If the name expression evaluates to a value of type xs:string or xs:untypedAtomic and the value contains no prefix, the attribute name should be in no namespace. However, the following code: <node xmlns="http://www.infospace.org/pcollection">{ attribute a1 {'foo1'}, attribute {'a2'} {'foo2'} }</node>
yields this result:<node xmlns:ns0="http://www.infospace.org/pcollection" xmlns="http://www.infospace.org/pcollection" a1="foo1" ns0:a2="foo2"/>
While @a1 has the expected name, @a2 hasn't. I used the latest snapshot: BaseX 8.0 beta 95b7e5f [Standalone] Kind regards,Hans-Juergen http://www.w3.org/TR/xquery-30/#id-computedAttributes