[Bug 27001] Terminology: identity

https://www.w3.org/Bugs/Public/show_bug.cgi?id=27001

Ghislain Fourny <g@28.io> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |g@28.io

--- Comment #8 from Ghislain Fourny <g@28.io> ---
The way I am looking at identity, in this case, is purely from a query/result
perspective, that is, about what is visible or exposed to the user. As opposed
to any kind of physical identity/address in memory. That is, I define identity
not in absolute terms, but "axiomatically", like you can define what a line and
point are in geometry, only by expressing axioms using these words (two points
unique describe a line etc). I remember from my childhood a book in which
Euclidian axioms were reformulated with camels and asparagus rather than lines
and points, to illustrate the separation between words and meaning :-)

In other words:

1. For XML nodes, I view identity in terms of the "is" operator's returning
true or false (and document order operators).

2. If you include updates (be it copy-modify-return or scripting), identity is
also exposed, in that two nodes are identical if, applying updates to the one,
you see them on the other node as well.

3. If you include a persistent layer, you might notice identity exposure via a
change of behavior w.r.t. the above definitions ("is" was returning true and
now returns false, or applying updates had and no longer has an effect at
several places in the structure, etc).


In the case of maps/arrays, there is no "is" or document order comparison
operators, so only updates and persistence reveal the "identity". I think that
in that case the definitions above apply as well.


I'm not 100% sure whether staying at the language semantics level is
sufficient, but at least it was to me so far. I am unsure where invoking
physical-level or OO-programming-level machinery helps or makes the matter more
complicated here.

To put it simply, my feeling is that the specifications should still be
implementable if we used the word "asparagus" instead of "identity" everywhere
:-)

Just my naive perspective. I hope it helps.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Monday, 13 October 2014 09:55:12 UTC