Re: [Specifications] Should we introduce a property to associate operations and their target directly to an entity?

> I prefer to make things explicit than to require each client to 
infer such information

I agree. Explicit is better. But I haven't found an elegant way anyway
 when processing supported operations. Consider

``` json
{
  "@id": "some:collection",
  "member": [
    { "@id": "member:one", "@type": "Person" },
    { "@id": "member:two", "@type": "Person" }
  ]
}
```

and

``` json
{
  "@type": "ApiDocumentation",
  "supportedClass": [{
    "@id": "Person",
    "supportedOperation": [{
      "@id": "PokePerson"
    }]
  }]
}
```

In this example each `Person` has a supported operation but it will be
 invoked on the Person's URI. 

In Heracles, I process supported operations and return an `Operation` 
object which has the correct target URL. This way the `Operation` can 
be then passed to other code detached from the actual `Person` object.
 It's just one step away from allowing explicit targets

-- 
GitHub Notification of comment by tpluscode
Please view or discuss this issue at 
https://github.com/HydraCG/Specifications/issues/3#issuecomment-268830176
 using your GitHub account

Received on Thursday, 22 December 2016 16:01:36 UTC