It seems there has been a fair amount of confusion. Let me try and clear
some of it up. I had solved this problem for myself before the original
post.

I had something like

      return  <review>{$t/@name}</review> following a group by.

 I had intended it to create an atomized @name attribute in the review
element.

Instead I got a duplicate attribute node error and my instant reaction was
WTF. I had already cut and pasted ready to file an error report but thanks
to my group by session with Doc K yesterday I figured out there were
duplicates because of the effect of the group by.

So then I went to look up the data function in Doc K's book and it says

"Atomization is a process that is invoked implicitly when a sequence
containing nodes is used in a context where atomic values are expected".

And I thought - that fits what I am doing. I have  (thanks to group by) a
sequence that contains nodes and I am using it in a context where (to my
understanding) atomic values are expected - because it is going to end up
(by whatever process) as an attribute node. Therefore I should have had the
benefit of implicit atomization. Unless I did not read down far enough Doc
K's book, it doesn't say anything about any distinction in how these
attribute nodes are created. Anyway the data() function which I now know is
characterised as explicit atomization did the trick - I was all fine and
dandy.

I decided to check the spec because from reading Doc K I it looked like I
should have had a slam dunk implicit atomization. When I did so it looked
like it was saying (and still does to me) the opposite to what Doc K was
saying in his book. So the primary motive for the thread was - I've solved
my problem but think I should be getting implicit atomization here. Sub
motives were clarification of the perceived discrepancy between Doc K's
book which I understood and the spec which I didn't.  I also hinted at
concern over the circumstances  of the  error message (because that for me
lies at the root of it).

I should note  that Section 2.4.2 of the spec that deals with atomization
doesn't say anything about any of the distinctions mentioned in this
thread. What it does says is

Atomization is used in processing the following types of expressions:
................................................................................
................................................................................

   -

   Constructor expressions for various kinds of nodes

and there are no footnotes or superscripts directing you or advising you of
a need to  read anything else on the subject.

All the while I was posting examples I had already gotten a working
solution - maybe I should have just gotten on with my work.

Hopefully that only leaves the Chinese burn as possible source of confusion
for those who may have had a different cultural childhood. Better to give
than to receive.











On Wed, Jan 8, 2014 at 2:06 PM, Ihe Onwuka <ihe.onw...@gmail.com> wrote:

> We were having an orthogonal conversation.
>
> He didn't care about the effect and context of the resulting error message
>  and I didn't care about the distinction between attribute constructors and
> attributes created as part of element constructors.
>
>
> On Wed, Jan 8, 2014 at 1:59 PM, Andrew Welch <andrew.j.we...@gmail.com>wrote:
>
>> > I don't care David, because you miss the whole point.
>>
>> Has DC misunderstood something?  If so we should print and frame this
>> thread for posterity.
>>
>
>
_______________________________________________
talk@x-query.com
http://x-query.com/mailman/listinfo/talk

Reply via email to