AW: ACTION-87

Hello,

I've nothing to add on Joakim's analysis of the Data API protocol, but I've looked at two specific APIs based on it, namely the YouTube and Picasa data APIs.

The sets of properties for both APIs are drawn together from different vocabularies, both proprietary and open ones (list of elements for YouTube [1] and Picasa [2]). Both use elements Media RSS, and both add specific sets of properties. The proprietary Picasa properties [3] seems to contain more media-related properties (although the Picasa API uses additionally a set of Exif elements), while the proprietary YouTube set [4] seems to focus more on profile and organisational properties.

The structure and complexity issue for metadata of a collection of media items is partly solved by using different feeds and links between feeds. For example, a feed describing a list of videos will contain the following element for each video:

<gd:comments>
    <gd:feedLink href='http://gdata.youtube.com/feeds/api/videos/VIDEO_ID/comments'/>
</gd:comments>

The referenced feed contains the list of comments for a video. The feeds and links between them are used to partly flatten a hierarchical structure into lists. However, as Joakim pointed out, properties can still have structured content, e.g. a comment has the attributes: author, a title, content, and an in-reply-to link to another comment. For some properties controlled vocabularies are used, e.g. for the list of categories in YouTube [5], of which also localised versions exist.

Best regards,
Werner
	

[1] http://code.google.com/intl/de-AT/apis/youtube/2.0/reference.html#API_Request_XML_Element_Definitions
[2] http://code.google.com/intl/de-AT/apis/picasaweb/reference.html#Elements
[3] http://code.google.com/intl/de-AT/apis/picasaweb/reference.html#gphoto_reference
[4] http://code.google.com/intl/de-AT/apis/youtube/2.0/reference.html#YouTube_elements_reference
[5] http://gdata.youtube.com/schemas/2007/categories.cat


> -----Ursprüngliche Nachricht-----
> Von: Joakim Söderberg [mailto:joakim.soderberg@ericsson.com]
> Gesendet: Sonntag, 08. März 2009 15:22
> An: public-media-annotation@w3.org; Bailer, Werner
> Betreff: ACTION-87
> 
> Hello,
> I had a look at the protocol used by the Google Data API.
> 
> 1) It uses either Atom syndication format for read and write, or the
> RSS format for read only
> 
> 2) They share a basic data model; a container that holds global data.
> The format is defined by a base schema that can be extended using
> foreign namespaces.
> 
> 3) Atom is the default format, but it can be changed by setting the
> /alt parameter; alt=[atom,rss,json]
> 
> 4) As far as I can see they use, a simple structure for query
> responses, ex:
> 
> <?xml version='1.0' encoding='utf-8'?>
> <feed xmlns='http://www.w3.org/2005/Atom'
>     xmlns:gd='http://schemas.google.com/g/2005'
>     gd:etag='W/"S0wCTlpIIip7ImA0X0QI"'>
>   <title>Foo</title>
>   <updated>2006-01-23T16:26:03-08:00</updated>
>   <id>http://www.example.com/myFeed</id>
>   <author>
>     <name>Jo March</name>
>   </author>
>   <link href='/myFeed' rel='self'/>
>   <entry gd:etag='"CUUEQX47eCp7ImA9WxRVEkQ."'>
>     <id>http://www.example.com/id/1</id>
>     <link rel='edit' href='http://example.com/myFeed/1/'/>
>     <updated>2006-01-23T16:26:03-08:00</updated>
>     <author>
>       <name>Elizabeth Bennet</name>
>       <email>liz@gmail.com</email>
>     </author>
>     <title type='text'>Entry 1</title>
>     <content type='text'>This is my entry</content>
>   </entry>
> </feed>
> 
> Maybe Werner wants to add something?
> 
> Regards
> Joakim
> 

Received on Monday, 9 March 2009 17:58:56 UTC