- From: Kuno Woudt <kuno@frob.nl>
- Date: Sun, 03 Nov 2013 18:06:50 +0100
- To: public-hydra@w3.org
Hello, I'm trying to understand hydra:expects and hydra:returns, some help would be appreciated :) Let's say I have a database of information about music videos. I can use a musicbrainz identifier to refer to a particular music video, as they already capture links to e.g. youtube and keep track of whether a particular recording is just an audio stream or is audio + video. MusicBrainz is only interested in the audio part, so my hypothetical database is intended to capture things about the video part, e.g. the director of the music video. A document at https://example.com/musicvideos/murio.jsonld contains something like: { "@context": "https://example.com/context.json" "@id": "mbrec:95dd147c-71ba-48b1-91f3-0bf2916e9ec4#_", "@type": "mo:Signal", "foaf:isPrimaryTopicOf": [ { "@id": "mbrec:95dd147c-71ba-48b1-91f3-0bf2916e9ec4" }, { "@id": "https://example.com/musicvideos/murio.jsonld" } ], "dbpedia:Director": { "foaf:name": "Ray Cuts", "sioct:microblog": { "@id": "https://twitter.com/RayCuts" } } } Requesting the collection of data about music videos returns a link to that document: { "@context": "https://example.com/context.json" "@id": "https://example.com/musicvideos/", "hydra:members": [ { "@id": "https://example.com/musicvideos/murio.jsonld", "@type": "ex:MusicVideo" } ] } So, if I understand correctly ex:MusicVideo in this case describes the actions I can perform on that resource: ex:MusicVideo a hydra:Class ; hydra:supportedOperations [ hydra:method "GET" ; hydra:statusCodes [ hydra:statusCode 200 ] hydra:returns ... ] . It isn't entirely clear to me what hydra:returns is supposed to be in this case. It would perhaps be mo:Signal if that request returned an .mp4 video file containing the music video, but this returns a document about the music video, not the music video itself. I see in the demo issue tracker that the hydra:returns for a GET request is often the same as the class on which the GET request is a supported operation. So perhaps hydra:returns should be ex:MusicVideo here. If so, is there a way to express that an ex:MusicVideo resource always returns information about a mo:Signal? Similarly, can I express that a PUT or POST request expects information about a mo:Signal? -- Kuno. ps. context.json: { "dbpedia": "http://dbpedia.org/, "ex": "https://example.com/vocab#", "foaf": "http://xmlns.com/foaf/0.1/", "hydra": "http://purl.org/hydra/core#", "mbrec": "http://musicbrainz.org/recording/", "mo": "http://purl.org/ontology/mo/" }
Received on Sunday, 3 November 2013 17:07:14 UTC