Ben Adida wrote:
Ian Hickson wrote:

Why would it scale any less than URIs? That's basically all URIs are.

Why would you reinvent URIs in a way that they can't be de-referenced?
Is that really a good design, in your opinion?

and it's extremely web-unfriendly, since you can't look up a concept to figure out what it might mean.
Sure you can. Just search for it on a search engine.

That's sort of good for humans, and that's assuming there's no bug in
the search engine algorithm where you get, say, Google-bombed. I'm not
sure a web design should be predicated on the existence of Google,
especially when it's not clear that Google will always be able to index
the entire web (it's not clear Google indexes the entire web even today.)

We can reasonably assume the existence of large search engines covering a good part of the public Web. Google being a well known example. But we can't necessarily assume their owners will offer reliable machine-friendly APIs to that data, with terms of service that are sufficiently unconstrained.

Google for example switched off machine access via SOAP in favour of an AJAX-based approach back in 2006:

http://code.google.com/apis/soapsearch/
[[
Google Code Home >   Google SOAP Search API
As of December 5, 2006, we are no longer issuing new API keys for the SOAP Search API. Developers with existing SOAP Search API keys will not be affected. Depending on your application, the AJAX Search API may be a better choice for you instead. It tends to be better suited for search-based web applications and supports additional features like Video, News, Maps, and Blog search results.
]]

We went backwards, from a situation where machines could do lookups against the Google index, to http://code.google.com/apis/ajaxsearch/ which seems really much more focussed on customisation of human-facing Web content. That's really cool but doesn't help with "Just search for it on a search engine" if you're building things outside the browser.

Now it turns out we can still do programatic searches, because the AJAX API does offer a json interface, see http://code.google.com/apis/ajaxsearch/documentation/#fonje

eg.: curl -e http://www.my-ajax-site.com 'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=Paris%20Hilton'

...however http://code.google.com/apis/ajaxsearch/terms.html warns that "The API is limited to allowing You to host and display Google Search Results on your site" ... "The API may be used only for services that are accessible to your end users without charge." ... "You agree that you will not, and you will not permit your users or other third parties to: (a) modify or replace the text, images, or other content of the Google Search Results, including by (i) changing the order in which the Google Search Results appear, (ii) intermixing Search Results from sources other than Google, or (iii) intermixing other content such that it appears to be part of the Google Search Results; or (b) modify, replace or otherwise disable the functioning of links to Google or third party websites provided in the Google Search Results."

...the constraints are significant. And may change at any time (just as things changed for users of the old SOAP API).

Perhaps the miscommunication we have here is that when Ian says "Sure you can. Just search for it on a search engine." he's assuming a human "you", but RDFa people are thinking of this as a scripted operation too, because we know that machine-readable RDF/RDFa vocabulary descriptions exist that make it easier to find equivalencies between the classes and properties used in our data.

cheers,

Dan

--
http://danbri.org/

Reply via email to