incubator-annotator icon indicating copy to clipboard operation
incubator-annotator copied to clipboard

Web Annotation Protocol Server

Open BigBlueHat opened this issue 5 years ago • 5 comments

This has come up a few times, but I'd like us to discuss building a Web Annotation Protocol server implementation as part of this project.

It was part of the original project proposal.

The application mention in the Proposal was MangoServer which is JavaScript-based (required MongoDB), but hasn't really been maintained since 2017--not a blocker, per se, but something to consider.

The Web Annotation Protocol, based on the Linked Data Platform (LDP) is fairly lightweight and ostensibly could be built upon existing LDP code.

A handful of LDP implementations exist in and around Apache land:

  • https://www.trellisldp.org/
    • active and probably the most up-to-date LDP and @ajs6f (a community member) is committer
  • http://marmotta.apache.org/
    • Apache Marmotta is an Apache project, but looks like it's gone a bit quite in recent years

It would also be very possible to build an implementation that uses a JSON document database (like Apache CouchDB).

If we ignore authentication--pushing that to a different layer of the application--then creating this server code should be fairly minimal work, and complete our "stack" for those wanting to do front-to-back annotation stuff.

Anyone interested? 😁

BigBlueHat avatar Apr 02 '20 16:04 BigBlueHat

I removed a couple original suggestions. Calimachus looks abandoned (sadly) and Virtuoso is a GPLv2 project--so harder for us (as an Apache project) to contribute to directly.

BigBlueHat avatar Apr 02 '20 16:04 BigBlueHat

Hello! I've been lurking here a while, so now to pop in! I came across elucidate via the w3c's implementation test results. It could be a short to medium term storage solution. Not sure how it would play out in the long run.

vrish88 avatar Dec 03 '20 05:12 vrish88

Hello! I've been lurking here a while, so now to pop in!

Welcome! If you are interested in getting involved in some way, or just curious, feel free to join the mailing list and/or a weekly call (next one is in ~2 hours!).

I came across elucidate via the w3c's implementation test results. It could be a short to medium term storage solution. Not sure how it would play out in the long run.

Thanks for the pointer! As you may realise, we have so far been focussed on the front-end technicalities of annotation selectors, but this is certainly worth looking into.

Treora avatar Dec 03 '20 14:12 Treora

@Treora Actually, I may take you up on that. I've got a side project that I'm really looking to use the whole annotation ecosystem for and I've got some time off work now. I'll plan on attending the one next week!

vrish88 avatar Dec 03 '20 21:12 vrish88

I recently looked what’s around, and found this simple-annotation-server look possibily useful for a start, by virtue of being simple. We may however want something more LDP-savvy, to open the way to support different serialisations and use other powers of linked data (signatures, notifications, …).

I made a fork of it (converting it to TypeScript and using Express instead of hapi) for the web-annotation-discovery-server.

I added both of these to our Other Web Annotation Projects wiki page.

Perhaps something of/like this could be included in Apache Annotator; but it would be quite a separate project from what we are currently making, and that already is getting too little love. So, while this situation continues, to me it feels wiser to keep focus and do one thing well.

Treora avatar Nov 16 '22 10:11 Treora