[xquery-talk] calculated attribute/ namespace name

Uwe Küssner uwekuessner at web.de
Wed Aug 15 11:14:20 PDT 2007


sorry, you are right, i can't reproduce the behavoir any more, so i 
don't know what went wrong the first time-
you are right, without the concat()  there is the same result now.
thank you.


John Snelson schrieb:
> This expression works fine:
>
> <ele xmlns:pre='ns' pre:attr='lala'/>/
>   @*[node-name(.) = fn:QName('ns', 'attr')]
>
> If you needed to add the concat() function, that is a bug in the 
> XQuery processor you are using.
>
> John
>
> Uwe Küssner wrote:
>> Hi John
>>
>> thank you. I changed your solution to
>>
>> $ele/@*[node-name(.) = fn:QName($namespace,  concat("arbitrary:",  
>> $attribute))  ]
>>
>> than it seems to works as well.
>>
>> uwe
>>
>>
>>
>> John Snelson schrieb:
>>> Something like this will work:
>>>
>>> /ele/@*[node-name(.) = fn:QName($namespace, $attribute)]
>>>
>>> John
>>>
>>> Uwe Küssner wrote:
>>>> hello,
>>>>
>>>> a short question, i hope somebody can help.
>>>>
>>>> Let's say we have a XML documents like this:
>>>>
>>>> <ele xmlns:a="aa"  xmlns:b="bb"  name="foo" a:name="bar"  
>>>> b:name="foobar"  b:x="y" />
>>>>
>>>> The namespace names and attributes are not known before runtime, 
>>>> during runtime of a xquery script we have two variables of type 
>>>> string, for example:
>>>> $namespace := "bb"
>>>> $attribute :="name"
>>>>
>>>> here is the question: how can we extract the value of the attribute 
>>>> named $attribute with namespace name $namespace?
>>>> In the example the value of  "b:name", i.e. "foobar".
>>>>
>>>> thank you very much
>>>>
>>>> _______________________________________________
>>>> talk at x-query.com
>>>> http://x-query.com/mailman/listinfo/talk
>>>
>>> _______________________________________________
>>> talk at x-query.com
>>> http://x-query.com/mailman/listinfo/talk
>>>
>>>
>>
>> _______________________________________________
>> talk at x-query.com
>> http://x-query.com/mailman/listinfo/talk
>
> _______________________________________________
> talk at x-query.com
> http://x-query.com/mailman/listinfo/talk
>
>



More information about the talk mailing list