GData - Googles new restful API

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

GData - Googles new restful API

Matthias Steffens
I'm sure you have noticed this already:

Google did introduce its own generic RESTful API protocol, called
"Google data APIs" or short "GData".

 <http://code.google.com/apis/gdata/overview.html>
 <http://code.google.com/apis/gdata/protocol.html>

It uses HTTP as transport layer and returns query results in standard
XML syndication formats (such as Atom and RSS 2.0), which is pretty
similar to OpenSearch (they even use some of the OpenSearch elements
directly, which is nice).

But opposed to OpenSearch, they invent their own query syntax. The API
does not only offer to search/retrieve resources (such as SRU/W+CQL)
but also to ADD, EDIT or DELETE resources. It also introduces other
useful stuff like diagnostics, versioning and authentication.

This sounds promising to me, especially since it comes from a big player
like Google which should foster its adoption. With the right element
extensions, wouldn't this be something to let OOo update remote
databases? Or is the lack of RSS 1.0 the deal breaker here?

Thanks, Matthias

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: GData - Googles new restful API

Bruce D'Arcus
On 4/21/06, Matthias Steffens <[hidden email]> wrote:

> But opposed to OpenSearch, they invent their own query syntax. The API
> does not only offer to search/retrieve resources (such as SRU/W+CQL)
> but also to ADD, EDIT or DELETE resources. It also introduces other
> useful stuff like diagnostics, versioning and authentication.
>
> This sounds promising to me, especially since it comes from a big player
> like Google which should foster its adoption. With the right element
> extensions, wouldn't this be something to let OOo update remote
> databases? Or is the lack of RSS 1.0 the deal breaker here?

Am not sure. I like that we're seeing some engagement between the SRU
and Opensearch communities, and clearly we'll have to watch all this,
but this all seems rather chaotic right now. Am actually mildly
disappointed in Google.

That said, Atom can be used to transport RDF too, even if they should
have made it RDF all along.

Bruce

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: GData - Googles new restful API

Matthias Steffens
On Fri, 21-Apr-2006 19:13 -0400, Bruce D'Arcus wrote:

> > With the right element extensions, wouldn't this be something to let
> > OOo update remote databases? Or is the lack of RSS 1.0 the deal
> > breaker here?
>
> Am not sure. I like that we're seeing some engagement between the SRU
> and Opensearch communities

Yes, I agree and this is quite cool.

> and clearly we'll have to watch all this, but this all seems rather
> chaotic right now. Am actually mildly disappointed in Google.

Actually, I thought they'd do worse and I was positively astonished that
they try to make use of existing things such as Atom, RSS and
OpenSearch. I think they could have at least mentioned SRU, though.

That said, I fully agree, that SRU + OpenSearch feels more comfortable.
Regarding refbase, we are actually thinking of using CQL universally as
our main query language, i.e. not only in connection with the SRU
webservice but also for the interface. I was emailing with Rob yesterday
and he pointed me to his latest playground, a Google query -> CQL
converter:

 <http://www.csc.liv.ac.uk/~azaroth/gocqle.html>

which is pretty nice! One option for refbase would be to mimick a
Google-like search syntax (which has the benefit of being simple and
familiar to most of the users) and convert this into valid CQL
internally. Then, everything would be based on these CQL queries (which
could be also modified manually).

But IMHO, the main thing that is attractive with the Google API is that
it allows for PUT, POST and DELETE actions, not only GET. I'd rather
like to adopt their API then struggle with inventing my own.

Matthias

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: GData - Googles new restful API

Bruce D'Arcus

On Apr 21, 2006, at 7:33 PM, Matthias Steffens wrote:

> But IMHO, the main thing that is attractive with the Google API is that
> it allows for PUT, POST and DELETE actions, not only GET. I'd rather
> like to adopt their API then struggle with inventing my own.

Let us know if you guys think it's the right way to go, and if it's
better than the draft SRU update stuff.

There's just a lot of stuff going on in this space; would be nice to
bring some rationality to it. The CiteULike people have also talked
about an API.

Bruce

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: GData - Googles new restful API

Bruce D'Arcus
In reply to this post by Bruce D'Arcus

On Apr 21, 2006, at 7:13 PM, Bruce D'Arcus wrote:

> That said, Atom can be used to transport RDF too, even if they should
> have made it RDF all along.

Here's a simple example, that is valid Atom, where the embedded content
is also valid RDF:

http://www.users.muohio.edu/darcusb/feeds/test.xml

Interestingly, the examples in that google page were not even valid XML!

Bruce

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: GData - Googles new restful API

Bruce D'Arcus
In reply to this post by Matthias Steffens
Actually, this is also valid:

<feed xmlns="http://www.w3.org/2005/Atom"
       xmlns:foaf="http://xmlns.com/foaf/0.1/"
       xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
       xmlns:dc="http://purl.org/dc/elements/1.1/">
   <id>http://www.example.com/feed/1234.1/posts/full</id>
   <updated>2005-09-16T00:42:06Z</updated>
   <title type="text">Test</title>
   <link rel="self" type="application/atom+xml"
     href="http://www.users.muohio.edu/darcusb/feeds/test2.xml"/>
   <author>
     <name>Jane Doe</name>
     <email>[hidden email]</email>
   </author>
   <generator version="1.0"
     uri="http://www.example.com">Example Generator Engine</generator>
   <entry>
     
<id>http://www.example.com/feed/1234.1/posts/full/4521614025009481151</
id>
     <published>2005-01-09T08:00:00Z</published>
     <updated>2005-01-09T08:00:00Z</updated>
     <category scheme="http://purl.org/net/biblio#" term="Document"/>
     <title>The National Security Strategy of the United States of  
America</title>
     <foaf:maker>
       <foaf:Organization>
         <foaf:name>National Security Council</foaf:name>
       </foaf:Organization>
     </foaf:maker>
     <dc:title>The National Security Strategy of the United States of  
America</dc:title>
     <dc:date>2006</dc:date>
     <content>text</content>
   </entry>
</feed>

Bruce

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]