This is a read only archive of pad.okfn.org. See the
shutdown announcement
for details.
openlit-sprint
Open Literature Sprint, 25th January 2014
https://docs.google.com/a/okfn.org/forms/d/12YQ6_PFFktcpf8W3JfvRODYfGAybnTVTEEsrlFAv2ts/viewform
https://github.com/okfn/openliterature.net/
stripped html from Gutenberg of Dickens' uncommercial traveller: https://www.dropbox.com/s/8b6ektjlpdgm04d/Dickens-Gutenberg-html.html
wifi: 3F4133C3DE
Agenda
- set up
- story of project
- aims for the day
- get into teams & begin work
- Prepare workflow for sourcing, cleaning and converting texts to Textus: boot as a spreadsheet in Labs/Open Literature in GoogleDocs
- Putting up existing Open Shakespeare texts as wordpress pages (with a view to putting them as files into media library)
Create 'members page on WG:
What do you get in the WG:
- representation, administration
What you give to WG:
- attend 1/3 of all WG events (calls and IRL)
- contribute by writing for blog, running events, adding to projects....
Populate with info about current members
Say how to become members: join mailing list, join call, contact JHS
lunch
- work
tea
- report back
##Tasks for Literati
- Write a workflow for getting texts to open literature: put it in the google documents folder
- Find texts / evaluate them as sources
- Strip and clean texts
- Write introductions for remaining shakespeare texts:
- Timon of Athens is missing introduction
- Phoenix & Turtle is missing intro
- The Passionate Pilgrim missing intro
- Sonnets missing introduction
- A Lover's Complain missing introduction
- Push prepared texts to Git - ask for this at lunch?
Draft workflow here: https://docs.google.com/document/d/1iBf9sIqV1OeSXa2tVVqNyorQoGJErob63EtB2OIMxWg/edit
## Dev Stuff
Textus shortcode => dumps JS in there ... to boot Textus Viewer
<script src=”textus-viewer.js”></script>
<script type=”text/javascript”>
var textusTypography = typography;
var textUrl = ...
var apiUrl = ...
// now boot textus viewer
var viewer = new Viewer(rawTextUrl, typography, apiUrl);
</script>
### API [Annotation]
http://okfnlabs.org/textus/doc/api.html
Base location: /api/textus/1
The API returns JSON
GET /annotation/text/{text-id}/{start}/{end} # very specific search
GET /annotation/?text=text-id&start=&end= # search
POST /annotation/ # create
POST /annotation/{id} # update
Not sure we need yet
GET ol.net/api/textus/1/annotation/{id} # get annotation
GET
GET ol.net/api/textus/1/text/{id}/
### Data Structure
Database table in wordpress named:
textus_annotation
"start" : 300,
"end" : 320,
"type" : "textus:comment",
"userid" : [wordpress-id]
"private": false
"date" : "2010-10-28T12:34Z",
"payload" : {
"lang" : "en"
"text" : "Those twenty characters really blow me away, man..."
}
"start" : 0,
"end" : 3095,
"type" : "textus:source",
"userid" : [wordpress-id]
"date" : "2010-10-28T12:34Z",
"payload" : {
"type" : "textus:scanned-image",
"url" : "http://my.transcription.site/texts/mytext/pages/1.html",
"data-url" : "http://my.transcription.site/texts/mytext/pages/1/image.png" }
Questions:
- Replace user userid pointing to wordpress id?
- Privacy and wordpress integration
- private: false [default] / true
- Only owner (and site administrators) can view
- permissions
- For later - but more general (so i can share with X people, with a group ...)
### POST /annotation/ # create
POST an annotation object but no userid (wordpress will add that) and type will be auto added as textus:comment
"start" : 300,
"end" : 320,
"date" : "2010-10-28T12:34Z",
"payload" : {
"lang" : "en"
"text" : "Those twenty characters really blow me away, man..."
}
Will write to DB table
### POST /annotation/{id} # update
Check that current user id = id of existing annotation
And check that incoming userid = existing
### GET /annotation/text/{text-id}/{start}/{end} # very specific search
Return all public annotations in that range
Return all private annotaitons in that range where userid of annotation = current user id (or user is adminstrator)
Return format looks like:
{
- status: HTML style codes
- error: 'string'
- total:
- results: [
- "start" : 300,
- "end" : 320,
- "type" : "textus:comment",
- "userid" : [wordpress-id]
- "private": false
- "date" : "2010-10-28T12:34Z",
- "payload" : {
- "lang" : "en"
- "text" : "Those twenty characters really blow me away, man..."
- } & so on
- ,
- {annotation}
- ]
}
## Links
* Open Literature folder on gdrive - https://drive.google.com/a/okfn.org/#folders/0B6R8dXc6Ji4JLVFfNVpQVy1wdkk
##########################################################
Pre-event Skype meeting:
https://github.com/okfn/openliterature.net/issues/3
Iain: update on Textus+Wordpress integration: almost there, just need to work on conflict with 'Add media'
James, John, Sam: find some texts: clean gutenberg' html versions, try and find ECCO/TCP ones in TEI/XML
- here: http://quod.lib.umich.edu/cgi/t/text/text-idx?page=browse&cc=ecco&c=ecco
Saturday
Programmer task: investigate wordpress/annotateit plugin -> are we using this one for annotations or Textus?
Top priority authors:
- Shakespeare
Overview of workflow:
Developer team:
Text Team:
- Finding the text
- Stripping out bits of the text
- Finding material to accompany the text
- Writing an introduction to the text
- Hand material over to developers (or do it oneself) to be converted into textus format and uploaded
Sam contacted:
- - Humanist List (the principal list for DH users - c. 10,000 subscribers)
- - KCL Digital Humanities MA/PhD students
- - UCL Digital Humanities PhD students
- - Promoted tweets via LSE Impact Blog, etc.
-------------------------------------------------------------------------------------------------------------
PREPARATION FOR THE SPRINT
Team Sign-Up (write your name, and contact details below the appropriate heading(s)):
DEVELOPER
Iain Emsley
Rufus Pollock - rufus.pollock@okfn.org
TEXTFINDER
John Levin
EDITOR
James Harriman-Smith
Sam Moore (samuel.moore15@gmail.com)
WEBMINISTRATOR
James Harriman-Smith
Sam Moore (samuel.moore15@gmail.com) - happy to go wherever is best
Other Notes
DRAFT PUBLICITY NOTICE:
Calling all those with an interest in bringing the humanities online:
The Open Knowledge Foundation's Open Literature project is one dedicated sprint away from being ready to go online. This open service will offer anyone the opportunity to upload, analyse, present and annotate public-domain texts; it builds on the functionality of the OKF's recent <a href="http://openliterature.net/2013/03/12/o-brave-new-world-the-future-of-open-shakespeare-is-open-literature/">Open Shakespeare</a> and <a href="http://textusproject.org/">Textus</a> Projects to become a tool of use to a great range of scholars in the humanities.
- When: 25th January 2014, 11am – 6pm (if 11am is too early for you it’s OK to join later!)
- Where: Centre for Creative Collaboration, 16 Acton Street, London, WC1X 9NG
- Who: Anyone interested in literature, philosophy and taking these online
- Signup: http://www.meetup.com/OpenKnowledgeFoundation/London-GB/1070532/
- Mailing list: For updates, please join the Open Humanities mailing list: open-humanities@lists.okfn.org
More details about the day, including an overview of potential activities, are availbale on the Open Humanities Website: http://humanities.okfn.org/open-literature-sprint-jan-2014/
If you have any questions, contact: james.harriman-smith@okfn.org
---------------------------------------------------------------------------------------------------------------------
## 2013-12-11
Goals for the Sprint: Shakespeare + a philosopher + some number of other authors in Open Literature (import from gutenberg)
- Annotations working
- Text API
- Documentation
Primary issue tracker: https://github.com/okfn/openliterature.net/issues
Things to prepare in advance:
* Get current state of Textus/Wordpress clearly documented on issue tracker
* Create a list of tasks and circulate from this https://github.com/okfn/openliterature.net/issues
## ACTIONS
**Make default page for event humanities.okfn one**
- [JHS] Write overview advert
- [JHS] More detailed info on website
- Working google doc / etherpad for the day (??)
- Add teams to the event page
- [JHS + others] Send out notice
- [IE] Pre-event sprints (??) - maybe couple of 1-2h virtual sprints (wed 6-7:30pm)
- [IE+JHS+RP] Get documentation together
Later / on the day
- Sign up people to teams for the day, with team leaders' contact details
- Write timetable
###Contacting people
Sam contacted:
- - Humanist List (the principal list for DH users - c. 10,000 subscribers)
- - KCL Digital Humanities MA/PhD students
- - UCL Digital Humanities PhD students
- - Promoted tweets via LSE Impact Blog, etc.
- British Library Labs (Sam will contact and send blog post round when complete)
- JISC?
- Kings College Digital Humanities?
- Go onto mailing lists, twitter, etc.
- Create overview
- what
- where
- how
- who: online and in person (physically at ...) unhangout
### Roles for the day
Lead and Coordinator: James Harriman-Smith
Literati
What can you do?
- Find good public domain texts to add
- Write introductions
- Find essays and images
What skills do you need?
Editors
Lead: James Harriman-Smith
- Upload and format texts for the site
- Bug Iain and Rufus for info on how to edit
Text Finder General
Lead and coordinator: John Levin
Webministrator (know how to login and admin wordpress)
Developers
Lead: Iain Emsley (@iainemsley or iain_emsley@austgate.co.uk)
What we will work on
- Text API
- Wordpress integration
- Textus viewer and formatter (javascript
PHP - wordpress hacking
Javascript + HTML: lots to do
Textus (Wordpress Extension) Architecture plan: https://github.com/okfn/openliterature.net/issues/3
Next Steps for Textus Slidedeck: http://okfnlabs.org/blog/2013/03/27/next-steps-for-textus.html
Key repos:
Wordpress backend/port
Created a Wordpress backend that stores JSON texts in the Wordpress filesystem.
"Textus" created as a Wordpress slug (content type) where you put in the filename and it calls it back ; i.e openlit.org?text=shakespeare/alls-well and presents the raw JSON
TODO:
Integrate with the textus-viewer (https://github.com/okfn/textus-viewer) (this is issue three)
Integrate back end with astic Search (depends on backend being tidied up)