Consider defining structure of bound actions/functions

    • Type: Bug
    • Resolution: No Action
    • Priority: Minor
    • V4.0_CSD02
    • Affects Version/s: None
    • Component/s: CSDL JSON
    • None
    • Hide

      1) Define the structure of a function or action advertisement
      2) Define an bindableStructuredType that includes property patterns for:functions/actions (that uses the structure above)
      3) Define an annotatableStructuredType that includes property patterns for annotations

      Show
      1) Define the structure of a function or action advertisement 2) Define an bindableStructuredType that includes property patterns for:functions/actions (that uses the structure above) 3) Define an annotatableStructuredType that includes property patterns for annotations

      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.

            Assignee:
            Unassigned
            Reporter:
            Michael Pizzo (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: