I've updated the Jangle connector to include Collections. It
unearthed a bug in the Connector framework that affected paging (Atom
feeds of 7K entries make Firefox hurt *really* badly), but that's
fixed. Theoretically the Connector framework should be ORM-agnostic
(Model agnostic, actually).
The Jangle core has been updated to reflect the connector's Opensearch
support and general changes in the way the JSON is returned.
You can try out the demo version the the Project Gutenberg data at:
Service document:
http://anvil.lisforge.net:6767/services/
OpenBiblio:
http://anvil.lisforge.net:6767/openbiblio/actors/
http://anvil.lisforge.net:6767/openbiblio/resources/
http://anvil.lisforge.net:6767/openbiblio/items/
http://anvil.lisforge.net:6767/openbiblio/collections/
The OpenSearch description document is available:
http://anvil.lisforge.net:6767/openbiblio/resources/search/description/
One will be available for Collections "real soon now".
Also, I've been working on meeting DLF ILS API functionality (well,
today I did). I will *probably* be able to finish this some time
tomorrow or Thursday. The thing that's taking most of my time is
writing the OAI-PMH provider.
Speaking of the DLF recommendation, they've released the final draft.
They've also released an XML schema for their 'enhanced records'
including a simple availability spec.
http://onlinebooks.library.upenn.edu/schemas/dlfexpanded.xsd
The availability response they've come up with *very* similar to the
one currently in Jangle... but better. Better because it's simpler
because I overengineered the one in Jangle by including an iCal
document in the <atom:content> tag whereas they just use an xsd:date
or xsd:dateTime. So much simpler!
If *anybody's* ready and willing to try and take the plunge with the
simple Jangle connector framework, let me know and I'll help walk you
through what would be necessary.
Now for the cry for help. Good news! The article proposal to the
Code4lib Journal has been accepted! It would be really nice if I
could have a co-contributor for this article. After all, it's been
hard enough to shake the Talis ownership of Jangle, an article written
about it by a Talis employee isn't going to help that. As an
incentive to help, I will do whatever is needed to help you get
minimal Jangle functionality out of whatever library system you
choose. Don't make me beg :)
There is a caveat, however. The article is due by July 18th
(basically this means if you want your Innovative catalog Jangle-fied
by then, please lose my number), so it needs to be a low-hanging fruit
type project.
The editorial board did make a suggestion: include a comparison of
Jangle to OAI-ORE. This would also be an excellent contribution to
the article if anybody has any thoughts or opinions on this.
Thanks, everybody.
-Ross.
This returns:
<?xml version="1.0" encoding="utf-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<shortname>Bibliographic records</shortname>
<longname>Search Bibliographic records in OpenBiblio</longname>
<description>Bibliographic records search. Defaults to keyword
anywhere.</description>
<tags>catalog library</tags>
<syndicationright>open</syndicationright>
<Url type="application/atom+xml" template="/openbiblio/resources/search/?"/>
<Query role="example" searchTerms="thomas"/>
</OpenSearchDescription>
which is missing a {searchTerms} place to stick the search terms.
Am I missing something?
- Godmar
> which is missing a {searchTerms} place to stick the search terms.
> Am I missing something?
>
Nope, this is a bug. Thanks for pointing this out.
Since you asked, though... It actually raises a bit of a limitation
with OpenSearch query syntax.
It should be:
query={searchTerms?}&count={count?}&from={jangle:from?}&until={jangle:until?}&field={jangle:field}&type={jangle:type?}&startIndex={startIndex?}
All fields are optional but one must exist (sort of like Dublin Core,
I guess). If anybody knows how to specify this, please chime in!
-Ross.
Service document:
http://demo.jangle.org/services/
OpenBiblio:
http://demo.jangle.org/openbiblio/actors/
http://demo.jangle.org/openbiblio/resources/
http://demo.jangle.org/openbiblio/items/
http://demo.jangle.org/openbiblio/collections/
The OpenSearch description document is available:
http://demo.jangle.org/openbiblio/resources/search/description/
Godmar has pointed out that the feeds don't validate, I'm working on that.
The OpenBiblio connector is:
http://connector.jangle.org/actors/
http://connector.jangle.org/resources/
http://connector.jangle.org/items/
http://connector.jangle.org/collections/
Also, Level 1 support of the DLF ILS API can be found here:
HarvestBibliographicRecords:
Identify: http://dlf-api.jangle.org/openbiblio/OAI/bibliographic?verb=Identify
ListMetadataFormats:
http://dlf-api.jangle.org/openbiblio/OAI/bibliographic?verb=ListMetadataFormats
ListRecords: http://dlf-api.jangle.org/openbiblio/OAI/bibliographic?verb=ListRecords&metadataPrefix=marcxml
GetAvailability:
http://dlf-api.jangle.org/availability/?id=http://demo.jangle.org/openbiblio/resources/5878+http://demo.jangle.org/openbiblio/items/000006418
GoToBibliographicRequestPage:
http://dlf-api.jangle.org/goto/?uri=http://demo.jangle.org/openbiblio/resources/5974
HarvestExpandedRecords is doable, it just requires shmushing together
Resources and Items and I haven't gotten to that, yet.
-Ross.