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] (ODATA-979) Recursive containment navigation properties and Partner attribute


     [ https://issues.oasis-open.org/browse/ODATA-979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ralf Handl updated ODATA-979:
-----------------------------

    Environment: Proposed
       Proposal: 
Relaxed prose text:

Containment navigation properties MAY specify a Partner attribute. If the containment is recursive, the partner navigation property MUST specify a single entity type and MAY be nullable. If the containment is not recursive, the partner navigation property MUST NOT be nullable.


Current prose text:

Containment navigation properties MAY specify a Partner attribute. If the containment is recursive, the partner navigation property MUST be nullable and specify a single entity type. If the containment is not recursive, the partner navigation property MUST NOT be nullable.

An entity type hierarchy MUST NOT contain more than one navigation property with a Partner attribute referencing a containment relationship.

> Recursive containment navigation properties and Partner attribute
> -----------------------------------------------------------------
>
>                 Key: ODATA-979
>                 URL: https://issues.oasis-open.org/browse/ODATA-979
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Bug
>          Components: OData CSDL
>    Affects Versions: V4.0_ERRATA03
>         Environment: Proposed
>            Reporter: Ralf Handl
>             Fix For: V4.01_WD01
>
>
> An entity cannot be referenced by more than one containment relationship, and cannot both belong to an entity set declared within the entity container and be referenced by a containment relationship. 
> Current rules around recursive containment and partner navigation properties seem to be sufficient to achieve this goal. but may not be necessary, i.e. seem overly restrictive.
> A counter-example to the current rules can be constructed by redefining a partner navigation property with a more specific type, which is allowed now:
> - EntityType Name=FileSystemEntry
>   - NavigationProperty Name=Parent Type=this.FileSystemEntry Nullable=true
> - EntityType Name=Folder BaseType=this.FileSystemEntry
>   - NavigationProperty Name=Children Type=Collection(this.FileSystemEntry) Partner=Parent
> - EntityType Name=File BaseType=this.FileSystemEntry
>   - NavigationProperty Name=Parent Type=this.Folder Nullable=false



--
This message was sent by Atlassian JIRA
(v6.2.2#6258)


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