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-882) Mismatch between 11.2.6 Requesting Related Entities and 11.2.7 Requesting Entity References

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

Michael Pizzo updated ODATA-882:

    Environment: [Proposed]
1)  /entity(exist)/null_nav_prop/$value – 404 (for nav to media entity)
2)  /entity(exist)/null_structuralmedia_prop - 204
3) Define: non_media_entity/$value should return 400 (or 404) whether null or not null

Note: /entity(exist)/null_nav_prop/$ref currently defined to return 404. Arguably this should have been 204, but not worth changing at this point

If we want to handle as an errata, I would suggest wording along the lines of:

"Services SHOULD return 204 but MAY return 404 or another more specific result code."

> Mismatch between 11.2.6 Requesting Related Entities and 11.2.7 Requesting Entity References
> -------------------------------------------------------------------------------------------
>                 Key: ODATA-882
>                 URL: https://issues.oasis-open.org/browse/ODATA-882
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Improvement
>          Components: OData Protocol
>    Affects Versions: V4.0_ERRATA02
>         Environment: [Proposed]
>            Reporter: Ralf Handl
>             Fix For: V4.0_ERRATA03
> 11.2.6 defines that requests to nullable single-valued navigation properties return 204 No Content if no entity is currently related.
> 11.2.7 defines that all requests for references to a single entity return 404 Not Found, not distinguishing between "direct" resource paths and resource paths to related entities.
> This leads to:
> GET Employees('TheBigBoss')/Manager --> 204 No Content
> GET Employees('TheBigBoss')/Manager/$ref --> 404 Not Found
> Clarify whether this is intentional:
> A) Of course, the related Manager is empty, so the reference does not exist, or
> B) Ooops, of course both requests should return the same response code because /$ref is just a briefer representation of the non-existing related entity
> Also clarify what happens if other path segments are added, e.g. properties or navigation properties:
> GET Employees('TheBigBoss')/Manager/Name --> ???
> GET Employees('TheBigBoss')/Manager/Department --> ???

This message was sent by Atlassian JIRA

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