OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

sdo message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: SDO-148 (revised proposal)


Hi,

 

Following our last meeting here is a revised proposal for SDO-148:

 

Add these paragraphs to the core spec, section 10.2 after first paragraph. 

When serializing list of consecutive references to DataObjects an SDO implementation MAY use the sdo:range attribute in addition of sdo:ref. In this case the sdo:ref value MUST be a XPath and an implementation MUST throw an exception if IDREF is used as sdo:ref value [COR1002xxxx]. The following two examples are equivalent:

 

<departments sdo:ref=”#/company:company[1]/departments[1]”>

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees” sdo:range=”1 5”/>

</departments>

 

<departments sdo:ref=”#/company:company[1]/departments[1]”>

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[1]” />

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[2]” />

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[3]” />

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[4]” />

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[5]” />

</departments>

 

The sdo:range value contains two numeric values separated by a white space character: a positive start index and a positive end index in the referenced collection. Both sdo:range indexes are inclusive. An SDO implementation MUST throw exception if:

·         A negative value is specified for any of the sdo:range indexes. [COR1002xxxx]

·         One of the index is larger than the size of the referenced collection. [COR1002xxxx]

·         The sdo:ref attribute value does not reference a collection. [COR1002xxxx]

·         First index is larger than the second one. [COR1002xxxx]

 

A change summary can combine sdo:range values with deleted data objects. The following two examples are equivalent:

 

<changesummary delete=”#/changesummary/departments/employees[3]”>

<departments sdo:ref=”#/company:company[1]/departments[1]”>

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees” sdo:range=”1 2”/>

       <employes name=”John”>

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees” sdo:range=”4 5”/>

</departments>

</changesummary>

 

<changesummary delete=”#/changesummary/departments/employees[3]”>

<departments sdo:ref=”#/company:company[1]/departments[1]”>

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[1]” />

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[2]” />

       <employes name=”John”>

<employes sdo:ref=”#/company:company[1]/departments[1]/employees[4]” />

       <employes sdo:ref=”#/company:company[1]/departments[1]/employees[5]” />

</departments>

</changesummary>

 

An SDO implementation MUST correctly deserialize sdo:range information [COR1002xxxx] but is not required to produce the same XML when ChangeSummary is serialized back to XML. It is allowed to use sdo:range on all change summary children elements:

 

<changeSummary create="#/company:company[1]/departments[1]/employees[3]" delete="#/changeSummary/departments[1]/employees[3]">

<departments sdo:range="#/company:company[1]/departments[1] #/company:company[1]/departments[4]">

<employees sdo:range="#/company:company[1]/departments[1]/employees[1] #/company:company[1]/departments[1]/employees[4]"/>

</departments>

</changeSummary>

 

Add a sentence (here in bold) in first paragraph in section 10.4

If the property's type is not a dataType, an SDO implementation MUST render unaltered elements [COR10040003]. An SDO implementation MAY use the sdo:ref attribute to indicate the corresponding objects in the final document. An SDO implementation MAY render unaltered elements using sdo:ref and sdo:range attributes to indicate a range of corresponding objects in the final document.

 

Thanks,

 

cid:3297350850_825347

François Huaulmé


O. +33 (0)1 46 14 13 08 | E. francois.huaulme@datadirect.com  | F. +33 (0) 1 46 14 13 01

DataDirect Technologies | 21 rue des Trois-Fontanot | 92000 | Nanterre | France
www.datadirect.com


This electronic message contains information from DataDirect Technologies Ltd. which may be privileged or confidential. The information is intended to be
for the use of the individual(s) or entity named above. If you are not the intended recipient be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. If you have received this electronic message in error, please notify us by telephone or email (to the numbers or address above) immediately.

 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]