Thank Frank very much for opening spec issue 120 and proposing sdo:unset
which solves 3-2 (unset attribute) and 3-3 (empty many) as well.
Here describes 3-1 (qualified Path) in more details in the case to open a
spec issue:
<publisher>
<p:product .../>
</publisher>
<retailer>
<r:product .../>
</retailer>
<changeSummary delete="p:product/item r:product/item">
<p:product sdo:ref="#../../publisher/p:product">
<item .../>
</p:product>
<r:product sdo:ref="#../../retailer/r:product">
<item .../>
</r:product>
</changeSummary>
The "delete" attribute value "p:product/item r:product/item" may need to use
qualified (X)Path to reference target accurately.
That above example 1 is quite possible since Change Summary collects
elements from anywhere.
Another qualified (X)Path example is "publisher/p:product",
the qualification is useful especially when "publisher" has same-name local
element (and other same-LocalPart global element) at the same time:
<publisher>
<p:product .../>
<r:product .../>
<product .../>
</publisher>
That above example 2 may be rare, however it's valid and some people do
that.
(Although name based getter/setter can't access all of them, SDO
still provides Property based accessors.)
On 9/25/06, Frank Budinsky <[EMAIL PROTECTED]> wrote:
Hi Yang,
3-1 - SDO XPaths have this limitation.
3-2 and 3-3 - The SDO 2.0.1 ChangeSummary format has no way to distinguish
between an old value that is unset vs. set to default/empty.
This is why I've said that I don't think that it's currently possible to
implement a fully functional interoperable ChangeSummary serialization.
Our noncompliant EMF CS serialization is the only one that will not lose
information in some of these corner cases.
Maybe you would like to write up a clear description of scenarios that
break with the current design so that we can open issues against the 3.0
spec. If you do this soon, I may still be able try to push something
simple into the 2.1 spec, but this week is the deadline for final
discussion/resolution of 2.1 issues.
Thanks,
Frank.
"Yang ZHONG" < [EMAIL PROTECTED]> wrote on 09/24/2006 11:10:04
PM:
> I'm working on exporting ChangeSummary as XML whose format is specified
by
> SDO specs.
> There're some deatils that seem not clarfied yet and are kind-of
blocking
> me.
> Please help to clarify; all issues are programming language neutral.
>
> 3-1. This one is less SDO specific and more XML generic.
> Even if you are not familiar with SDO specs, please help with XPath
> experience.
>
> To reference such element as
> <p1:product ...
> the XPath can be "p1:product"
> and such element as
> <p2:product ...
> the XPath can be "p2:product"
>
> The SDO specs use (X)Path like "product",
> is it referencing "p1:product" or "p2:product" or both or neither (it
> references *local* element <product>)?
>
> 3-2. Attribute old value can be ! isSet, how to represent that if no
default
> value defined.
> Not present will lose the info that the property was changed.
> "" or other const is not exclusive since users may use them too.
>
> 3-3. isMany element old value can be empty, how to represent that?
> Not present will lose the info that the property was changed.
> Any appearance will make the old collection *not* empty.
>
> Appreciate any help at your early convenience.
>
> --
>
> Yang ZHONG
--
Yang ZHONG