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-872) Consider defining structure of bound actions/functions


    [ https://issues.oasis-open.org/browse/ODATA-872?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=61097#comment-61097 ] 

Ralf Handl commented on ODATA-872:
----------------------------------

We could add this definition to edm.json;

        "odata.actionFunctionAdvertisement": {
            "description": "Marker in responses that a collection or instance allows invocation of a bound action or function",
            "type": "object",
            "properties": {
                "target": {
                    "type": "string",
                    "format": "url"
                },
                "title": {
                    "type": "string"
                }
            }
        },

Services that want to explicitly advertise actions or function can do this via

    "properties": {
        ...,
        "#My.SpecificFunction":{
            "$ref":"http://docs.oasis-open.org/odata/odata-json-csdl/v4.0/edm.json#/definitions/odata.actionFunctionAdvertisement";
        }
    }

or more generic via a patternProperty for pattern "^#".

> Consider defining structure of bound actions/functions
> ------------------------------------------------------
>
>                 Key: ODATA-872
>                 URL: https://issues.oasis-open.org/browse/ODATA-872
>             Project: OASIS Open Data Protocol (OData) TC
>          Issue Type: Bug
>          Components: OData JSON CSDL
>            Reporter: Michael Pizzo
>            Priority: Minor
>
> Bound functions and actions appear in json payloads as properties that start with "#" and may contain target, url, etc.  These are not advertised as properties in JSON Schema, because such bound actions/functions can be "externally defined". This is okay because we specify additonalproperties=true, but we lack validation that the contents of a bound function or action is valid. Also, we prevent a service that knows it will never return additional properties from publishing that fact.
> We could use patternproperties to enforce that the value of a property that starts with "#" is a valid payload for a function or action.
> There is concern that adding this pattern property everywhere a bound function/action could appear might be heavy weight.  
> I would like to at least define the shape for an action/function, so that services that want to advertise actions/functions (either through pattern properties or by explicitly advertising actions/functions) can do so.



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