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] Updated: (ODATA-258) Advertise function imports in service document


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

Ralf Handl updated ODATA-258:
-----------------------------

        Summary: Advertise function imports in service document  (was: Advertise parameter-less function imports in service document)
       Proposal: 
In addition to entity sets and named entities also top-level function imports (i.e. that don't require a binding parameter) from the default entity container are advertised in the service document. These use the new kind "Function".

Examples:

{
  "odata.metadata": "http://host/service/$metadata";,
  "value": [
    { 
      "name": "Orders",
      "kind": "EntitySet"
      "url": "Orders"
    },
    {
      "name": "TopProducts",
      "kind": "Function"
      "url": "TopProducts"
    },
    {
      "name": "Contoso",
      "kind": "Entity"
      "url": "Contoso"
    }
  ]
}

  was:
In addition to entity sets and named entities also top-level function imports (i.e. without parameters) from the default entity container are advertised in the service document. These use the new kind "Function".

Examples:

{
  "odata.metadata": "http://host/service/$metadata";,
  "value": [
    { 
      "name": "Orders",
      "kind": "EntitySet"
      "url": "Orders"
    },
    {
      "name": "TopProducts",
      "kind": "Function"
      "url": "TopProducts"
    },
    {
      "name": "Contoso",
      "kind": "Entity"
      "url": "Contoso"
    }
  ]
}


    Description: 
The service document is an entry point for hypermedia-driven clients, so function imports that can be called "directly from the service root" should also be advertised.

Function imports that require a binding parameter don't fall into that category.

Ideally the advertised function imports would require no parameters to be passed, i.e. only have parameters with default values or no parameters at all, so they behave to GET requests similar to named entities and entity sets.

As in real life we also encounter entity sets that e.g. respond with errors if queried without a sufficiently selective $filter query parameter, I hesitate to make "only parameters with default values" a requirement for being advertised.

> Advertise function imports in service document
> ----------------------------------------------
>
>                 Key: ODATA-258
>                 URL: http://tools.oasis-open.org/issues/browse/ODATA-258
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Improvement
>          Components: OData ATOM Format v1.0, OData JSON Format v1.0
>    Affects Versions: WD01
>         Environment: [Proposed]
>            Reporter: Ralf Handl
>             Fix For: WD01
>
>
> The service document is an entry point for hypermedia-driven clients, so function imports that can be called "directly from the service root" should also be advertised.
> Function imports that require a binding parameter don't fall into that category.
> Ideally the advertised function imports would require no parameters to be passed, i.e. only have parameters with default values or no parameters at all, so they behave to GET requests similar to named entities and entity sets.
> As in real life we also encounter entity sets that e.g. respond with errors if queried without a sufficiently selective $filter query parameter, I hesitate to make "only parameters with default values" a requirement for being advertised.

-- 
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]