Uploaded image for project: 'OASIS Open Data Protocol (OData) TC'
  1. OASIS Open Data Protocol (OData) TC
  2. ODATA-406

Attribute ContainsTarget (public comment c201305e00009)

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: V4.0_CSD01
    • Fix Version/s: V4.0_CSD02
    • Component/s: CSDL XML, URL Conventions
    • Labels:
      None
    • Environment:

      [Applied]

    • Proposal:
      Hide

      Entities are members of at most one set, and are identified within their entity set by their key property values. Typically the entity set is a declared entity set that is declared within an entity container.

      Contained entities are members of undeclared entity sets that are implicitly defined by their containing entity.

      Consequently an entity can be contained by at most one other entity, and it is identified by its key values only within the undeclared, implicit entity set.

      Also a contained entity cannot be a member of a declared entity set within an entity container, because it is already a member of an undeclared, implicit entity set.

      Consequently navigation properties specifying ContainsTarget="true" MUST NOT have any navigation property binding, removing several confusing sentences from section 7.1.5.

      This also means that GET requests to declared entity sets will never return contained entities.

      These statements apply to recursive as well as non-recursive containment.

      Accepted: https://www.oasis-open.org/committees/download.php/49325/odata-meeting-38_on-20130523-minutes.html#odata-406

      Show
      Entities are members of at most one set, and are identified within their entity set by their key property values. Typically the entity set is a declared entity set that is declared within an entity container. Contained entities are members of undeclared entity sets that are implicitly defined by their containing entity. Consequently an entity can be contained by at most one other entity, and it is identified by its key values only within the undeclared, implicit entity set. Also a contained entity cannot be a member of a declared entity set within an entity container, because it is already a member of an undeclared, implicit entity set. Consequently navigation properties specifying ContainsTarget="true" MUST NOT have any navigation property binding, removing several confusing sentences from section 7.1.5. This also means that GET requests to declared entity sets will never return contained entities. These statements apply to recursive as well as non-recursive containment. Accepted: https://www.oasis-open.org/committees/download.php/49325/odata-meeting-38_on-20130523-minutes.html#odata-406
    • Resolution:
      Show
      https://www.oasis-open.org/committees/download.php/49354/odata-v4.0-wd02-part2-url-conventions-2013-05-28.docx https://www.oasis-open.org/committees/download.php/49277/odata-v4.0-wd02-part3-csdl-2013-05-28.docx Accepted: https://www.oasis-open.org/committees/download.php/49557/odata-meeting-41_on-20130613_14-F2F-minutes.html#odata-406

      Description

      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?

      """

        Attachments

          Activity

            People

            • Assignee:
              handl Ralf Handl
              Reporter:
              sdrees Stefan Hagen
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: