Closed azaroth42 closed 8 years ago
One example of an Open Annotation based annotation search specification: http://search.iiif.io/api/search/0.9/
If the data is provided using Triple Pattern Fragments (http://www.hydra-cg.com/spec/latest/triple-pattern-fragments/) then no additional specification is needed because SPARQL can be used on the client.
Unless I've missed something, TPF is still just a single author draft associated with a community group and has no formal standing. So we can't normatively refer to it.
And requiring SPARQL in a browser app ... if we were working that deep in the RDF stack, we wouldn't be having all these discussions! :)
Proposal: Review the IIIF Search API (http://search.iiif.io/api/search/0.9/) down to section 3.4.1 as it follows the same patterns as ActivityStreams Paged Collections. If we can bootstrap from that, then we have a starting point. If not, we should discuss whether we can reasonably deliver anything in the search space before the end of the charter.
@azaroth42 (in response to your proposal).
I am not yet in position to say yay or nay to your original question, just musing here to, hopefully, add arguments to the issue for further discussions.
search:Hit
object, so to say, i.e., an additional information in the returned annotation that gives, essentially, the selector that lead to that particular response. Other than that, we should not have a different response to a query than what we already have for direct request. (We may have to add some additional parameters in the response header via Link
, I am not sure.) role
argument alongside the motivation (well, whatever the the name of that thing will be as an outcome of issue #112)user
and the box
arguments have a role to play for usIf we adopt this, there are questions that we will have to answer, though. Some that come to my mind:
One aspect is not clear to me in IIIF. The spec suggests that the value of the q
argument could be a regular expression (there is a b*
example somewhere down the line). Which would be fine, but this is not what the spec says:
A space separated list of search terms. The search terms may be either words (to search for within textual bodies) or URIs (to search identities of annotation body resources).
What is exactly the situation in IIIF? (B.t.w., why space separated? Shouldn't it be comma separated for a URI?) What would be the useful thing for us, i.e., would we want regex or something else?
q
parameter, having something like t
for targets, searching either to the target's URI or word in case a selector is used.@azaroth42 will provide a straw version
The WG will consider a separate document defining a non-exclusive search interface to be published at least as a Note and potentially part of Protocol
First version would come around 15th of January, '16
Telco: http://www.w3.org/2015/12/16-annotation-irc#T16-57-30
Hi all,
I'm working on implementing a serch api based on lucene/solr (http://lucene.apache.org/solr/) which is a kind of de facto standard for text/metadata search.
3) If it is about the design of the API interface, I find the freebase MQL to be the easiest to use, json based, query language https://developers.google.com/freebase/v1/mql-overview?hl=en . unfortunately ... the freebase development was discontinued through wikidata project and the MQL interface is not accessible anymore ... Still, I find very good the idea of using Json input and Json output, where the properties of the query language are the same as those of the model ..
Br, Sergiu
@iherman Some feedback from my experience with (metadata) search engines:
BR,
Sergiu
The protocol should support search and retrieval of annotations according to user/client specified criteria (a query).
This is a tracker issue for progress, which will involve at least the following steps: