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

 


Help: OASIS Mailing Lists Help | MarkMail Help

odata message

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


Subject: [OASIS Issue Tracker] Issue Comment Edited: (ODATA-406) Attribute ContainsTarget (public comment c201305e00009)


    [ http://tools.oasis-open.org/issues/browse/ODATA-406?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=33565#action_33565 ] 

Ralf Handl edited comment on ODATA-406 at 5/24/13 12:49 PM:
------------------------------------------------------------

It seems that containment is a bit underspecified, and the parts that we did specify need reworking.

Part 1: Protocol mentions in 11.5.2 and 11.5.2.2 that

The navigation property MUST contain the related entities (ContainsTarget="true") or have an associated navigation property binding to specify the target set of the related entity or entities.

The latter seems a bit over-restrictive. In fact the service only needs to know on a per-instance basis into which entity set it will put each entity. There's no need for the service to tell clients on a per-type basis which entity set this will be. Our StandardCustomers and PreferredCustomers example shows that: when inserting a new order for a new customer, the server will use some magic to figure out into which customer segment that customer is initially placed. No way for the client to guess it, and still no reason to forbid deep inserts here. The metadata URL of the result will tell the client where the new customer went.

I removed the unnecessary restriction. 

      was (Author: ralfhandl):
    It seems that containment is a bit underspecified, and the parts that we did specify need reworking.

Part 1: Protocol mentions in 11.5.2 and 11.5.2.2 that

The navigation property MUST contain the related entities (ContainsTarget="true") or have an associated navigation property binding to specify the target set of the related entity or entities.

The latter seems a bit over-restrictive. In fact the service only needs to know on a per-instance basis into which entity set it will put each entity. There's no need for the service to tell clients on a per-type basis which entity set this will be. Our StandardCustomers and PreferredCustomers example shows that: when inserting a new order for a new customer, the server will use some magic to figure out into which customer segment that customer is initially placed. No way for the client to guess it, and still no reason to forbid deep inserts here. The metadata URL of the result will tell the client where the new customer went.
  
> Attribute ContainsTarget (public comment c201305e00009)
> -------------------------------------------------------
>
>                 Key: ODATA-406
>                 URL: http://tools.oasis-open.org/issues/browse/ODATA-406
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Improvement
>          Components: OData CSDL
>    Affects Versions: V4.0_CSD01
>         Environment: [Proposed]
>            Reporter: Stefan Drees
>            Priority: Minor
>             Fix For: V4.0_CSD02
>
>
> The public comment [c201305e00009](https://lists.oasis-open.org/archives/odata-comment/201305/msg00009.html) with title "Attribute ContainsTarget" states:
> """
> In section 7.1.5 Attribute ContainsTarget  of [OData-Part3]  the semantics is unlclear.
> The following wording is used:
> If the value assigned to the ContainsTarget attribute is true, entities of the entity type that specifies the navigation property contain the entities referenced by the navigation property.
> What does "contain" mean? Does it impose any additional restriction?
> """

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://tools.oasis-open.org/issues/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


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