digress.it site wins Whitehouse award for Leadership, Governance, and Culture Change

Good news! We’ve just heard that the US Department of Transportation has won a Leading Practices Award for Leadership, Governance, and Culture Change. Why is this interesting to us? It’s because the DOT won the award based on their work with Cornell’s Regulation Room, a site that Eddie Tejeda has built using digress.it, the WordPress plugin that the JISCPress project bootstrapped and continues to work on.

Regulation Room is a collaborative project between Cornell University and a number of US federal agencies to solicit comments from the public on draft legislation.

The site is a pilot project that provides an online environment for people and groups to learn about, discuss, and react to selected rules(regulations) proposed by federal agencies.  It expands the types of public input available to agencies in the rulemaking process, while serving as a teaching and research platform.

We’re really pleased to see what Eddie and Cornell continue to do with digress.it and it’s rewarding to see that the Whitehouse recognise the significance of the project and, implicitly, the underlying technologies, too. From the Whitehouse press release:

These Awards recognize those agencies, as selected by their peers, that have outlined the best and most innovative strategies for promoting open government over the next two years. There are four categories of awards corresponding to each of the major goals of the Open Government agenda:

  • Leadership, Governance, and Culture Change
  • Transparency
  • Participation and Collaboration
  • Flagship Initiative

Awards were determined on the basis of evaluation of the plans against the definition of “Leading Practice” by the agencies themselves. Leading Practices are meant to inspire a “race to the top” among government agencies for greater openness and innovation. These awards represent the very best of the best in Open Government Plans — exemplary of the high levels of creativity and innovation that can be found in the open government activities of our Federal agencies today.

Hopefully, this US example, will inspire a similar initiative in the UK. We recently applied for funding to work with a couple of UK government departments on ‘commentable document’ platforms, but our Expression of Interest was declined by the EPSRC.

For those of you who are following the development of digress.it, the Regulation Room site is running the latest digress.it code, which will be available in the next update to the open source plugin. The next release will be more modular and allow developers to lay their own styling over a digress.it site. The Regulation Room site is an example of this, with Cornell’s design sitting on top of the digress.it base. We’ll be testing the new code over the next couple of weeks.

Who are our users?

Yesterday, Alex, Tony and I went to the University of Bath to meet with staff from UKOLN, who have agreed to be our proxy users for developing the supporting materials for the JISCPress project. Tony has just blogged a few thoughts ‘On the Different Roles Documents and Comments May Take in a Commentable Document’ and here are a few of my own.

The recent funding we received was to help ensure the sustainability of our initial project. We were awarded funding based on the proposal to address an accessibility review that had been commissioned on the digress.it plugin and to develop supporting materials for users of the WordPress/digress.it platform, which JISCPress is a version of.

At yesterday’s meeting, we introduced the project to people that knew very little about JISCPress and most of whom had not used it. Throughout the two hours of the meeting, a number of ideas about the use of the platform were discussed, some of which Tony has just blogged about. Whereas Tony’s reflections concentrate on the types of documents, I came away with a better understanding of the type of users the platform has, and when developing supporting materials, who they should be aimed at.

I can identify three type of user and therefore three areas of documentation that need to be developed:

  • Site administrators
  • Document Authors
  • Document Readers/Commenters

In essence, the ‘benefits and realisation’ funding is concerned with ensuring the sustainability of the digress.it plugin through the uptake and sustained use of the plugin by these three types of users. For site administrators, guidance on how digress.it can work well with other WordPress plugins to assist with the efficient set up of a new site would be useful. For authors, advice on document construction, authoring tools (i.e. pros and cons of desktop clients vs. copy and paste from Word), guidance on comment moderation and suggestions on how to engage readers and sustain their engagement, came across as important from yesterday’s meeting. Likewise, document readers may need clear guidance on how a document site is constructed and can be navigated, but might also want advice on how to quote paragraph sections from the document on their own websites, or circulate references to a paragraph in an email to alert other people to a point in a document, for example.

Everyone felt that the documentation should be written so that it shows how the authoring and reading of a document using digress.it, can be embedded in the work flow of each type of user. It may be that certain changes must be made to that work flow, but as long as the plugin doesn’t rupture the work flow, it remains potentially useful to some people and some use cases.

In general, what do we need to try to ensure that the use of digress.it is sustained? Here’s my list:

Some items on this list are already in place; the rest will be in place by the end of September. In the meantime, Alex has addressed the accessibility review in his new theme, Eddie has nearly completed the next version of digress.it which has been significantly refactored and is now much quicker, leaner and easier to adapt, based on work he’s doing for regulationroom.org. There will also be a relaunch of the digress.it community site where the documentation and videos will be posted.

I’m on leave now until the end of August but will draft the documentation and plan the video tutorials as soon as I return to work. I’ll post them here and on the digress.it mailing list for comment, as well as seek detailed responses from staff at UKOLN before completing them at the end of September.

If you have any suggestions to add to the list above, do leave a comment. Thanks.

Digress.it accessibility

Back in March, the Department for Business Innovation and Skills completed an accessibility audit of the Digress.it plugin for us. UK law states that all public service websites should be accessible which means that the website should be implemented in ways that users of a website who have a visual impairment, hearing disabilities, or those who have limited manual dexterity are not disadvantaged. This could mean providing alternative style sheets for improve contrast, ensuring that HTML is written in a semantic way so screen readers and text-to-voice software are able to parse content, and ensuring controls are not spread out across the page so someone with limited movements has to constantly move their mouse.

If you didn’t see the report then an embedded copy is below:

Bis Digress It Plugin Accessibility Audit Report 2010-03-25

The report tested the Digress.it plugin against the Web Content Accessibility Guidelines (WCAG) 2.0 guidelines. These guidelines are considered the de facto standard for ensuring online content is accessible and are endorsed by the UK Government.

Here is what the report summary said:

Overall the Digress-it plug-in did not perform well in terms of accessibility. Nine Single-A and four Double-A accessibility issues were identified which failed to meet the requirements set by the WCAG 2.0.
However, many of the Single-A issues, such as the lack of alternative text and skip links should be straight forward to address. Achieving Single-A accessibility should be part of a quick win strategy.
By far the biggest issue to address relates to the accessibility for keyboard users. Several elements such as the commenting icon and add/expand comment icon elements were not keyboard accessible which means it would be very difficult for a keyboard user to access the content and post their reply.
Although JavaScript support is given more flexibility under the WCAG 2.0 guidelines, Nomensa still recommends that progressive enhancement techniques are used to ensure that users with JavaScript disabled or unavailable are still able to perform actions on the site. Testing of the Digress-it plug-in found that when JavaScript was disabled, the user was unable to read or post comments on the site, preventing them from carrying out a core component of the Digress-it plug-in.

Not a great outcome however as mentioned many of the basic issues (the so called “single-A” issues) can be taken care of with by sticking to good HTML coding practises. I’ll go through the main issues and identify how we’re going to overcome them for the future version of Digress.it (and also JISCPress).

1. All non-text content that is presented to the user has a text alternative that serves the equivalent purpose.

In order to overcome this issue we need to ensure that all images have ‘alt’ attributes, and videos and embedded audio have captions. Whilst we can ensure we do this for the Digress.it theme, we can’t ensure that document authors (and WordPress users in general) will do this.

2. Create content that can be presented in different ways without losing information or structure

Like the issue above we will ensure that the Digress.it theme is made using good semantics, such as using H1 elements for titles for areas of content where the context changes and H2 elements for sub-areas, rather than increasing font size to represent headers or other elements which be understood by a sighted person but someone with a visual impairment may not. Again actual content on the pages will end up being structured by users and so in the training videos which we plan on creating for this round of JISCPress development we will make sure we cover good markup of pages.

3. Make it easier for users to see and hear content including separating foreground from background.

The future Digress.it theme will clearly promote the content over the branding of the site to improve readability. Additionally the colour palette will be updated with more contrasting colours used and also alternative stylesheets will be included so users can decide what is best for them. Further implementations such as buttons that change the size of text can be included as well.

4. Make all functionality available from a keyboard

I’ve put a bit of thought into this one and I think we should take a leaf from Google’s applications such as Gmail and Reader. I’m proposing the following for navigating a document by the keyboard:

N – next document page
P – previous document page
Up key – move up a paragraph
Down key – move down a paragraph
Left key – move to the comments
Right key – move back to the document

I’ve recorded a short video to demonstrate this:

As well as keyboard navigation we will ensure there are skip links throughout the document to reduce scrolling.

From the beginning of July we will be working on the new Digress.it theme (as well as Digress.it version 2.0) and will additionally improve the JISCPress website with a new design and a number of help videos too.

If you’re interested in accessibility issues on the web I would highly recommend watching the two videos below which are talks by Robin Christopherson, a severely visually impaired Internet user and speaker for AbilityNet. The first is from a session at Future of Web Apps London back in November 2009 that I attended where he shows the audience how someone with his disability uses the web. The second video is a full session from Future of Web Apps Dublin from earlier this year where he goes over the main problems with websites today.

Eddie talks about digress.it and JISCPress

It’s long, it’s a bit rough, but if you’re interested in the development of CommentPress, digress.it and a major part of the JISCPress project, you might want to set an hour aside…

Questions

  1. Can you tell us a bit about CommentPress and why the move to digress.it? (00:10)
  2. What design decisions have you made for digress.it? Is there anything that other developers should be aware of? (06:00)
  3. What single area of work on the JISCPress Project has been the most time-consuming (and therefore expensive)? (10:45)
  4. What’s been the biggest challenge for you on the JISCPress Project? (20:40)
  5. Paragraph-level trackbacks and remote embedding of paragraphs which also provided a trackback, were two requirements we kept pushing for. What problems still remain with these features? (23:50)
  6. What software tools or productivity methods do you use and how do you use them? (34:40)
  7. What was the most important thing that brought value to your work? (52:40)
  8. What’s the future of digress.it? How will it be sustained now the JISCPress project has finished? (55:16)
  9. Any more plans for digress.it? (01:02:15)
  10. You’ve started writing a digress.it server, right? (01:04:56)

Eddie Tejeda talks about digress.it and JISCPress from University of Lincoln on Vimeo.

The JISCPress Prototype Demonstrator Platform

Well, here’s what we’ve managed to pull together over the last six months. Many thanks to freelance developers, Eddie Tejeda and Alex Bilbie who developed the WordPress plugins and theme which we discuss below. [This post was written by Joss with help from Tony].

In our original bid, we proposed a ‘prototype demonstrator platform’ for JISC’s Funding Calls and Final Project Reports. We outlined 11 deliverables:

  1. A WordPress Multi-User based platform for authoring and publishing JISC funding calls in a form that allows paragraph-level comment and discussion either locally or remotely.
  2. A meta-site that aggregates all document data into a single site for search, navigation by categories and tags and can syndicate searches, tags and categories.
  3. Develop CommentPress to meet WCAG 2.0 accessibility guidelines, meeting public sector requirements.
  4. Evaluation and integration of “related content” utilities to dynamically link related project calls and reports based on content and/or semantic analysis.
  5. Evaluation and possible integration of remote, realtime messaging services such as Twitter and XMPP integration.
  6. Evaluation and possible integration of enterprise authentication services such as LDAP and Shibboleth.
  7. Evaluation and possible integration of OpenCalais, a semantic tagging service.
  8. Documentation on how to exploit the benefits of AWS and clone the project instance for other uses.
  9. A documented suggested workflow for document authors
  10. Documented examples of how to fully exploit the platform for data extraction and syndication.
  11. Documented ‘user stories’ for the JISC funding call process. Note that we do not guarantee fulfillment of all user stories.

I’ll go through each of these one by one with illustrations where relevant. A more informal reflection is also available (Thoughts on JISCPress ):

Paragraph level commenting and discussion of JISC funding calls

This was achieved through the development of the digress.it plugin. digress.it is a rewrite of the original CommentPress WordPress theme which we used on WriteToReply (which JISCPress is based on). I’ve posted a video interview with Eddie Tejeda, developer of the original CommentPress and digress.it, where he discusses the move from CommentPress to digress.it. In terms of local and remote paragraph commenting, the same feature set found in CommentPress has been retained. Remote, document section level comments are possible through the use of trackbacks.

We spent quite some time looking at remote paragraph level remote commenting and Eddie expects to support this with digress.it in the near future. We discovered that the use of trackbacks and pingbacks is an unreliable method of guaranteeing ‘comments’ from remote websites. It depends on the CMS being used and the settings of both the remote and local site. Sometimes, test comments we made never arrived, other times they did. So for example, whilst internal links within a WordPress domain may be recognised by other sites on the same platform, links from posts on other blogging platforms may not be. Link tracking using third party services (e.g. Google, Google blogsearch, BackType) rely on links being hardcoded in third party web pages (rather than being added dynamically to a page via Javascript, or within an embed object) and even then are not detected reliably (it depends on the crawler). Commercial tracking/monitoring services  were not explored.

WordPress provides a robust commenting system, with excellent spam filtering and comment moderation features. digress.it leverages this locally to allow commenters to respond at the paragraph, rather than the section (i.e. blog post) level. For more on digress.it, Eddie talks in length about his work in a previously posted video interview.

Paragraph level comments

An aggregated meta-site

Alex has been working on this, which can be seen in the screenshot below (and until we take the server down, can be browsed at http://jiscpress.org )

JISCPress Home Page

What you see here are a number of ways of finding documents on the site. The large tag cloud uses tags generated from Alex’s Open Calais/Yahoo Term Extractor related tags plugin. This plugin uses both these third-party APIs to tag each document and then create intelligent relationships between documents on the site. More on that later. The tags are held in a separate database table to the human created, native WordPress tags, but are equally a source of information that can be used by theme designers and plugin authors. Here the tags are simply being used to display a cloud, similar to the one on http://en.wordpress.com/tags/ and marked up with the rel=”tag” microformat.

Clicking a tag lists the documents by title

Clicking on a tag

As you can see, each result for a tag has an RSS feed, which can be found at the top right of the results. So if you’re interested in watching for key words in JISC documents, this would be a useful way of doing that. RSS feds can be monitored from feed readers such as Google Reader, or via web desktops, such as Netvibes (e.g. An Example Netvibes Dashboard). You don’t have to use the tag cloud to do that. You can construct your own and wait for the results to come in. i.e. http://jiscpress.org/?jiscpress_tag=MY_KEYWORD&feed

(Note that WordPress also offers the option of subscribing to a free text search using the default WordPress search utility, e.g. http://jiscpress.dev.lincoln.ac.uk/feed/?s=jiscpress )

Similarly, you can do this with ‘Topics’ (otherwise known as WordPress categories), which are aggregated from across all documents and displayed on the right side of the home page. For JISC’s purposes, there is a controlled list of about 40 Topics that are used by the organisation. Our example shows the use of a few of those. Again, if you’re interested in Funding Calls for Data & Text Mining, then you can subscribe to a feed for that Topic.

The main thing to point out about the use of WordPress categories on the Home Page, is that it assumes a controlled list and not a publishing environment where authors make up their own taxonomy. The list would get very very long and unmanageable. It need not use JISC’s Topics. Their Themes and Programmes would also work.

You’ll see that it displays the document title and author’s name. The use of author’s names is worth considering too. While WordPress is a multi-user CMS, it may be that each Programme decides to publish under their Programme’s name rather than the individual’s name. This is just a matter of changing the settings in WordPress, so that all the IE Team publish under their Programme’s name. The choice is up to JISC.

Above the ‘Topics’, is a list of the latest funding calls. It’s just a text box which some HTML links pointing to the latest documents. Nothing fancy nor difficult to maintain either.

In the backend, Alex has provided some options for the Tag Cloud (otherwise known as the JISCPress Browser widget). You can see that we have the option of using User, Open Calais and Yahoo tags, as well as blacklisting the display of certain tags, too. You can also decide how many tags you want to display.

JISCPress Browser widget options

The Topics are listed using a simple WPMU Site-wide categories widget that Alex wrote. It looks at the categories across all documents/blogs and displays them in alphabetical order.

For searching, we’re using the built in BuddyPress search (did I mention we’re using BuddyPress?). It simply allows you to search document titles from the front page or, on the Authors page, you can search authors by name, too.

Each Author has a profile page.

Author profiles

We looked at full-text search and it’s quite possible using this lucene-based plugin, which indexes all document text and all comments, too. It could be integrated into the theme to allow site-wide full text search but we chose not to because of time constraints and are simply using the built-in BuddyPress search. If JISC would like full-text search, it’s something that Alex could do. Of course, full-text search is possible on each document site and constructing searches derived from the Open Calais and Yahoo Term Extraction plugin is also possible as I’ve shown above. Full text search could end up returning more results than are useful. I’ve no strong opinions about this either way.

Finally, you can see in the menu bar on the front page that there’s an ‘About JISCPress’ page and a JISCPress blog. Nothing fancy going on there. We’re just using basic BuddyPress features.

Accessibility

Well, we haven’t ignored accessibility requirements but then again, they haven’t been a driving factor in the development of JISCPress either. I think we’ve improved on CommentPress and have had useful feedback from the British Computer Association for the Blind on the accessibility of digress.it. At one point Eddie included the jQuery.accessible plugin in digress.it but it’s not currently being used. Along similar lines, much time was spent on IE6 compatibility, which has been achieved at some cost to the project. The user experience in IE6 is not as nice as using Chrome, for example, and I wonder whether it was worth the effort in a project such as this that was about producing a ‘prototype demonstrator’. Nevertheless, because digress.it is now in widespread use elsewhere, IE 6 & 7 compatibility was one of the first requests that came through on the mailing list. We did a quick survey of browser use in HEIs and Andy Powell followed this up with something more detailed and wide ranging. What both show is IE 6 & 7 can’t be ignored 🙁

I feel that we didn’t manage to do as much toward accessibility as I originally hoped but it is something that can be worked on with digress.it over time and I know it is something that interests Eddie a great deal. Hopefully as he does work for more organisations, like Cornell and the New York Public Library, their accessibility requirements will filter through into the core code. In addition, Eddie has recently been able to employ a designer to work with him on digress.it so the theme should get more close attention over the next few releases.

Related content utilities

Alex did a lot of work on this and has released his wpmu-related-blogs-and-posts plugin on the official WordPress plugin repository.

Here’s an overview:

The WPMU Site Admin options look like this (click the image to see it full size):

WPMU Related posts admin options

You can see that both or either the Open Calais and Yahoo Term Extraction APIs can be used. The plugin provides a background service which runs via a cron job, which can be set to daily, twice daily or hourly. The cron job can be started manually and the entire platform can be re-tagged at any time. The relationships between document sections and documents can be re-established at any time, too.

Both the relevance of the tags (using features of the APIs) and the relevancy of the posts (when showing related document sections), can be adjusted.

Finally, you can opt to ignore certain blogs/documents, so test sites and the main site don’t mess up the weighting of the relationships made.

As we’ve seen with the JISCPress Browser widget, those tags can be used to provide a way to navigate the entire platform. However, the principle intended use of the Open Calais/Yahoo services is to display related document sections or, optionally, related documents while reading any given document. One potential issue with the auto-tagging services relates to the variable quality and usefulness of the tags they return. One possible way of addressing this would be to limit the range of tags used on the site by filtering the automatically generated tags via a whitelist, blacklist, or based on semantics (e.g. ignore placenames).

Here’s the widget options:

WPMU Related Posts widget

Here’s the widget as displayed to the reader. In principle, it works and should work better as the number of documents on the site grows.

Related documents/blogs:

Related Documents

Related document sections/blog posts:

Related Sections

Realtime messaging

This deliverable has been tackled in two ways. Eddie developed realtime alerts for digress.it so that if someone comments on the site while you’re reading it, the comment will ‘pulse’ in the Comment Box. For remote realtime messaging, things have been taken care for us. As realtime on the web is becoming very much mainstream, it’s getting easier to push content out through a variety of ways. For example, since the start of our project, WordPress now has RSSCloud and Web Hooks plugins. The latter provides a relatively simple framework for developers to push any notification from WordPress to external services, as I’ve discussed on my blog. There are also SUP (FriendFeed) and PubSubHubbub plugins, too. In addition, Google is now indexing in realtime and Google Alerts are showing up via RSS almost immediately, too. XMPP PubSub is also in use on WordPress.com and that work is due to be released as  plugin for WordPress once it has been well tested. Likewise, their work on a Twitter compatible API for WordPress will also be released. Given all of this, we didn’t think we needed to reinvent the realtime wheel for WordPress.

Authentication Services

I can confirm that LDAP works well with WPMU. I know this because I run WPMU with this plugin at the University of Lincoln. It is a feature rich plugin and well supported. If anyone wants to integrate LDAP with WPMU and is running into problems, please get in touch. Note that there is no reason why much of JISCPress couldn’t be used as a private platform for document discussion and annotation, internal to an organisation.

Shibboleth support was not tested because we don’t use it at Lincoln and I never got around to trying to convince someone to help me test it. However, I have been told by the plugin developer that it is in use at other universities and it too, is well supported by Will Norris, the developer of the WordPress Open ID plugin. I would be very grateful if someone running a Shibboleth service at their institution would help me test the plugin. I’m pretty confident that it will work.

Open Calais

See above!

Amazon Web Services

I documented our use of Amazon Web Services on our Google Code site. I had intended to leave an image of the JISCPress server on AWS so that anyone could clone it for use or play. However, unless asked, I’m not going to do that now. If you want to use such a system, you can use http://digress.it or http://writetoreply.org or and if you’re skilled enough to work on AWS, then you’re skilled enough to install WPMU and our plugins on your own server for testing purposes. I’d be happy to advise anyone wanting to create their own version of JISCPress and even work on your server if you want me to. Leaving an Amazon Machine Image lying around for testing means that it will soon go out of date as new versions of WordPress are released and need rebuilding anyway.

Workflow for authors

I have begun writing documentation for authors on our Google Code site. I’d be grateful for feedback. This documentation is also used on the http://digress.it site. I also intend to provide documentation for Administrators, too. Although if you are running WPMU, then you will be familiar with much of what you need to know. One of the great things about this project is that we’re using one of the most popular pieces of publishing software on the web and there is already a lot of familiarity with it.

Data extraction and syndication

A lot of work went into developing digress.it with this in mind and Alex has also developed a plugin that posts RDF triples to the Talis Platform from WPMU. I’ll say more about that below, but here’s a post I wrote recently about JISCPress and Open Data. I hope you’ll agree that we’ve made good progress in this area.

A demonstration of how paragraph level content from JISCPress can be transcluded (that is, embedded) on a third party site is available here: Paragraph Embedding from JISCPress. The post includes a Javascript snippet that can pull in a random paragraph from a contiguous set of paragraphs on a single JISCPress page. Such a utility might be used to rotate through headline pargraphs on a JISCPress document fron page, for example.

On the subject of web analytics, we reviewed how to collect JICWEBS recommended metrics using Google Analytics (Measuring Website Usage With Google Analytics, Part I , how to monitor traffic coming in from University networks, and how to exploit Google Analytics campaign tracking codes from shared links and via Feedburner. We did intend to look at Piwik, too, as we’ve tinkered with it on WriteToReply, but I’m afraid it didn’t happen. I do want to highlight Piwik to anyone interested in open source analytics software. It allows you to expose the analytics for any given site to the public and provides a number of ways to access the data, via CSV, JSON, XML, RSS. Have a play around on the WriteToReply site to see what I mean. Naturally, there is a WordPress plugin for Piwik, too. Google Analytics has also recently opened up an API that would support the development of custom reporting dashboards. Steph Gray at Helpful Technology has recently described an “ultimate dashboard” built around free tracking/monitoring services – Minding the shop – and is willing to share the code. Such a dashboard could be used to provide a useful overview of document related discussion on the wider web.

Documented user stories

This is an area where I wonder how we might have improved things. As I’ve written about before, the project team has worked virtually, hardly ever meeting and we worked very much in public, with digress.it having a fairly broad range of users mid-way into the project. For some of our work, we were not short of user feedback but for other areas, we received hardly any. I set up a UserVoice site early on and we’ve asked people to use it and linked to it from our blog, but it’s never seen any use. Feedback on the project in general has been quite low, although we receive informal feedback on how WriteToReply might be improved quite regularly and similarly, there has been a lot of feedback on digress.it over Twitter.

I have tried to document some of the uses of JISCPress that I could think of. They’re not really User Stories or even complete scenarios, but it does sketch out some of the uses that I could think of and I’ll add to them as I think of them. It will be interesting to demonstrate JISCPress to JISC and be able to respond to their feedback now we have a working platform. JISC staff have started using digress.it on WriteToReply (the #jisclms Call was re-published by two JISC staff) and I anticipate there being more opportunities for us to work with JISC staff on using some of the work we’ve done in the near future.

Other work

I mentioned the work that Alex has done on connecting WPMU to the Talis Platform. Using Triplify, he’s developed a plugin that runs a service which posts RDF Linked Data to Talis. It can be downloaded from the WordPress repository.

The plugin has some global options, available to the platform admin, which are pretty self-explanatory (click to enlarge)

Talis Global Options

Each site owner also has the option to participate, too. First you agree:

Talis T&C

and then you set your license:

Talis site options

The RDF data is available at both the http://example.jiscpress.org/triplify endpoint and for query on Talis. This is what you get back, for example:

Talis Platform query result

The configuration file for WPMU is available here. Be sure to check it over to ensure that it exposes the data you want it to expose and no more! Also, do read the Triplify documentation. You’ll see that it does more than produce RDF. There’s JSON output, too.

Final reflections

These final reflections are from Joss.

I’m pretty pleased with the way the project has gone. It’s been a real pleasure to work on the project and to work with Tony, Eddie and Alex. Not once have I felt it a chore even at some of the ridiculous hours of the night that we’ve worked. I’m also very grateful to JISC for thinking that it was a project worth funding and the support from JISC in terms of the JISCRI conference/IE Demonstrator and general lack of interference, but steady encouragement, has been really welcome, too.

I think we’ve delivered enough of the original objectives to have made it all worthwhile. There are areas, such as accessibility and more user testing, which I wish we’d been able to do better, but it wasn’t for want of trying. I really wish we’d cracked simple embedding of paragraphs and paragraph-level trackbacks, too. We’re close, but not quite there, yet.

On the other hand, we have produced some pretty nice plugins for WordPress. For WordPress developers, digress.it provides some significant innovations around document publishing and Open Data in WordPress and the code is free to be built on and improved. Likewise, we’ve also produced the first plugin that allows WPMU admins to run a background service for Open Calais and Yahoo Term Extraction across all blogs/documents. Another ‘first’ for the project, is that we’ve joined WPMU to Triplify and the Talis Platform. Huge amounts of data are generated by WPMU installations and now that can be Linked Data hosted on a well known Data Store. It would not be difficult to bring both plugins together so that the Open Calais semantic tags are included as data that is posted to the Talis Platform.

The legacy of the project will hopefully be similar to what we’re trying to achieve with WriteToReply. Not necessarily a wholesale conversion of organisations to using the platform with all its features that I’ve described above, but for people to pick and choose what works best for them. It may be that the project just inspires something better or different on another platform, like Drupal, and that’s good, too. It’s also about trying to demonstrate how publishing and engagement with public documents on the web can still, very much, be improved. In that sense, there is probably as much value in the blog posts that our work has generated as the software itself. We’ll continue to write about this on the WriteToReply blog.

All the code is open source and available under the GPL (digress.it) or Modified BSD license (Calais and Talis plugins). Eddie continues to maintain digress.it and I know that Alex is keen to ensure that any issues identified with his code are dealt with too. If you use the code and improve it in anyway, do tell us as we’re keen to include contributions from other developers.

We’ve had some really useful feedback

We’ve had some really useful feedback from the British Computer Association of the Blind on the accessibility of digress.it. Here’s what they have to say:

***
The website looks as though it has some good accessibility built in, but the
JavaScript it uses isn’t particularly accessible. To fully understand, it would be
worth getting the site audited against a recognised benchmark such as the Web Content
Accessibility Guidelines:
http://www.w3.org/TR/WCAG20/

The JavaScript doesn’t seem to be keyboard/screen reader friendly, particularly
on the comments pages. If the jQuery libraries have been used out of the box, it’s
likely they’ll need adapting.

Form fields will also need text labels associating with them. Guidance on
creating accessible forms can be found here:
http://www.accessify.com/features/tutorials/accessible-forms/

It’s great to see that ARIA landmarks have been used. If the main landmark could
be applied consistently across all pages, it would help people rely on it as a means
of navigation. Adding in more landmarks, particularly for search and navigation,
would also help.

IE6 and IE7 make up an enormous chunk of the browser market. Most IE6 users are
within the corporate and public sectors, where upgrading isn’t an option because of
organisational policy.

Representing the full visual design can sometimes be difficult for these
browsers, particularly IE6. In this case though, that doesn’t look as though it
should be the case.

The general building blocks of the website are good. The separation of
presentation from content has been done well, and the code is reasonably clean.
Headings, lists and other standard elements have all been used well.
***
My notes:

The digress.it theme is based on the default theme for WordPress (‘Kubrick’), which is considered a solid and accessible design which many themes are built on. digress.it has also been consciously developed to be relatively easily styled using CSS.

Accessibility has been a constant, though admittedly secondary, requirement in the JISCPress project and Eddie has made specific efforts to improve the accessibility of the plugin over the original CommentPress. I believe digress.it is partially using the ‘accessible jquery’ library, too. I’ll be looking at the WCAG2 document and reviewing, as best as I can, the areas of improvement that can still be made.

Open Data. What have we got?

I attended the ‘Global Graph’ session at the #cetis09 conference and made a largely failed attempt to demo some of the work we’ve been doing with Triplify and the Talis Platform. (In my defence, it wasn’t a planned demo and jiscpress.org was down while Alex was doing some design work).

Anyway, what I would have shown was how each document site on jiscpress.org uses Triplify to provide Linked Data in the form of RDF/N3 triples, which we store on the Talis Platform using a plugin Alex wrote.

Using Alex’s config file for WordPress MultiUser, we drop the triplify directory into the WPMU root directory, alongside wp-admin, wp-includes and all the other WordPress files. You should take a look at the config file and make sure it’s doing what you want it to do, but it will work as it is.  With this in place, Linked Data in the form of an RDF flat file for each document site (blog) is available at http://document.jiscpress.org/triplify or http://jiscpress.org/document/?triplify

(I should warn you that none of the URLs in this post are genuine URLs. They’re examples of syntax. The server at jiscpress.org will stop running at the end of December).

Now, to get that same data onto the Talis Platform, Alex has written a plugin for WPMU that periodically crawls the documents for changes and pushes the new data to a Talis Platform account.  Here are the WPMU site-wide admin options:

Admin settings

and here are the per document site user settings:

User settings

I won’t explain what the plugin does in detail. Just click on those images above and you’ll see the options that are available and if you’re reading this stuff, you know what it’s all about.  The Talis/Triplify plugin for WPMU will appear on  http://wordpress.org/extend/plugins in the next couple of weeks. It’s been tested and it does what we expect it to do but we want to test it more on sub-directory installs before it’s publicly available. Full documentation will appear soon on http://code.google.com/p/jiscpress/wiki/Documentation

We have also developed a WPMU plugin for Open Calais and the Yahoo! Term Extraction API. This provides a background service which indexes each document section (blog post) and creates relationships between content across the platform. We’ll post here about that very soon.

In addition to the Linked Data, JISCPress, using digress.it on WordPress, provides a long list of other open data (not Linked Data) end-points which might be put to good use. Here you go..

Document paragraphs

These are switches that provide individual paragraph data in different formats.

http://test.jiscpress.org/?p=15&digressit-embed=1&format=xml

http://test.jiscpress.org/?p=15&digressit-embed=1&format=text

http://test.jiscpress.org/?p=15&digressit-embed=1&format=rss

http://test.jiscpress.org/?p=15&digressit-embed=1&format=html

http://test.jiscpress.org/?p=15&digressit-embed=1&format=json

Document sections

This is just the regular WordPress post content in RSS format. In JISCPress terms, it’s the document section which is a single feed item.

http://test.jiscpress.org/2009/07/28/6-how-jisc-invests/feed/?withoutcomments=1

and this is the normal WordPress feed of comments on a particular post/document section.

http://test.jiscpress.org/2009/07/28/6-how-jisc-invests/feed/

We’ve also added the provision of a feed for each document section (‘post’), where each paragraph is a feed item. Note that this makes digress.it a nice tool for building your own feeds out of a single WordPress post.

http://test.jiscpress.org/feed/paragraphlevel/3-jisc-vision-mission-and-objectives/

Per paragraph comments/discussions

For each paragraph, there’s a feed of the comments/discussion.

http://test.jiscpress.org/feed/paragraphcomments/3-jisc-vision-mission-and-objectives,1

Commenter feeds

For each person that comments, there’s a feed of their comments

http://test.jiscpress.org/feed/usercomments/Joss%20Winn

All the other stuff

Don’t forget that the entire document content is also available as a feed

http://test.jiscpress.org/feed/

http://test.jiscpress.org/feed/rss

http://test.jiscpress.org/feed/rss2

http://test.jiscpress.org/feed/atom

http://test.jiscpress.org/feed/rdf

as are all comments from the site, too:

http://test.jiscpress.org/comments/feed

with WordPress, tags also have feeds

http://test.jiscpress.org/tag/tag1/feed

and so do categories

http://test.jiscpress.org/category/category1/feed

You can also combine tags

http://test.jiscpress.org/tag/tag1+tag2+tag3/feed

and you can combine tags and categories

http://test.jiscpress.org/?category_name=category1&tag=tag2,tag3&feed=rss2

Finally, authors have a feed, too

http://test.jiscpress.org/author/joss/feed/

Summary

WordPress is a versatile CMS for organising/designing and publishing data as feeds and therefore a useful source of Open Data. JISCPress has extended this versatility by choosing to develop further data end points using digress.it and offering a simple way of publishing Linked Data to the Talis Platform RDF triple store where is can be queried and mashed up using the platform’s API.

digress.it version 2.3 was released last…

digress.it version 2.3 was released last night and this marks the last major release of this WordPress plugin funded within the time frame of the JISCPress project. It is worth pointing out that our project funding effectively boot strapped the re-birth of CommentPress and paid for Eddie Tejeda, the original CommentPress developer, to rewrite CommentPress from scratch into digress.it. I was recently told that this work has led to Eddie being asked by Cornell University to work on a really interesting and high-profile digress.it-based project for them which we’ll be announcing soon. It’s great to see JISC’s work sustained in this way and hear that digress.it will be properly maintained through additional funding.

This release brings better IE6 & 7 compatibility, a smoother, better Comment Box, a document section level comment view, an option to parse lists into separately commentable points, BuddyPress compatibility, document section level feeds and a bunch of bug fixes. Overall, it feels like stable, feature rich code.

As noted above, we added one more RSS feature which now means digress.it can be used as an RSS feed builder. Each paragraph in any given blog post/document section, can be extracted as an RSS feed ‘item’. See http://writetoreply.org/jiscstrategyreview/feed/paragraphlevel/8-measuring-success/ for an example (and note the /feed/paragraphlevel/post_slug/ syntax used!)

I’ll be writing more in the next day or so about all the other ‘open data’ end points that we’ve developed during the JISCPress project.

A quick update

A lot of development is happening right now, so I thought I’d write a very quick summary to keep people informed.

Firstly, version 2.2 of the digress.it plugin was released yesterday. Remember that the JISCPress project bootstrapped the re-development of CommentPress (which has been at v1.4.1 for over a year now, I think) and we helped Eddie release digress.it v2 back in mid-August.  We’ve had seven releases since then and v2.2 finally brings IE6 compatibility with it (IE7 came in v2.1.7). It’s feels stable now and provides pretty much the same experience across browsers. Performance is superb on a modern browser like Chrome 3, Firefox 3.5 or Safari 4. I’ve found that with wp-super-cache installed, too, pages are rendered in a snap.

I’ve also started to document the features that come with digress.it. Some of the really interesting stuff isn’t immediately obvious, like the incredible range of RSS feeds that are now available and the switches for RSS, JSON, XML, HTML and text. @paulgeraghty asked on Twitter whether this might be ‘micro-content’. I’d be interested to know if there are other CMS platforms that provide a formal method of obtaining document data at the paragraph level.

http://test.jiscpress.org/?p=15&digressit-embed=1&format=xml
http://test.jiscpress.org/?p=15&digressit-embed=1&format=text
http://test.jiscpress.org/?p=15&digressit-embed=1&format=rss
http://test.jiscpress.org/?p=15&digressit-embed=1&format=html
http://test.jiscpress.org/?p=15&digressit-embed=1&format=json

And remember that this is in addition to the full document or document section level RSS feeds that are built into WordPress.We’ve also introduced RSS feeds for each comment author and for the discussion around each paragraph, so if you want to follow one particular person or a discussion around one particular paragraph, you can.

We’re still working on ways to provide an easy way to copy and paste some code and embed a paragraph in your own site, while at the same time giving us a paragraph-level trackback. We’ve been trying various different methods but none of them have worked so far. We’re close though. If you’ve got any ideas for how this might be achieved, please leave a comment 🙂

Alex has been working hard on platform-wide features. He recently uploaded his ‘related documents’ code which looks across the entire platform of documents and makes suggestions for related document sections in the page sidebar. What’s especially interesting about this is the way this is achieved as a background service that runs periodically (you choose how often) and uses the OpenCalais API to provide contextual tags and the Yahoo! Term Extraction API to extract terms from the document. The relevancy of the tags received can be adjusted and author entered tags are also taken into account. These three different methods of mining the document ensure that the document sections that are ‘advertised’ to readers are relevant to the document they are currently reading.

Alex has also been working on integrating Triplify with JISCPress (and WordPressMU).

Triplify is a small plugin for Web applications, which reveals the semantic structures encoded in relational databases by making database content available as RDF, JSON or Linked Data.

In practice, this means that the semantic structures for each JISCPress document are now available as RDF triples. Click here and you’ll get an XML/RDF file for a single document. Alex has also written a plugin for WPMU which will work with Triplify and allow the document author to include a license of their own choice in the RDF. Finally, he’s been testing this with Talis’ Connected Commons triple store and now has the WPMU plugin pushing RDF triples to Talis where they can be queried and mashed up using the Talis API. His work on this should go up on our Google Code site in the next few days.

It all needs testing and tweaking a little more, but the substantial part of the work on these three plugins has been done and now it’s a matter of refining them and integrating the platform as a whole and documenting it thoroughly. We’re always interested in what you would like to see the JISCPress project achieve, so please take a look at our UserVoice site and add any suggestions you might have.  We’re also tracking Issues about JISCPress on Google Code and Issues specifically about digress.it on the digress.it Google Code site. You can also get the development code for digress.it there, too.

More soon!

Introducing digress.it

At the core of JISCPress is WordPress Multi User and CommentPress. CommentPress is now called digress.it. You can read about, test and download the latest version of digress.it from the WordPress plugin repository.

Commenting in digress.it

It should be pointed out that while the JISCPress project is brand spanking new, the CommentPress/digress.it project is officially two years old and the product of much research, development and testing of document publishing and annotation in a networked environment. I have blogged/raved about CommentPress before, and I encourage urge you to read about the background of CommentPress/digress.it over on the Institute for the Future of the Book’s original CommentPress site.

You’ll see how digress.it has evolved from the original GAM3R 7H30RY 1.1 (Gamer Theory) book site, to Mitchell Stephen’s paper, The Holy of Holies: On the Constituents of Emptiness, which was inspired by Jack Slocum’s WordPress system built for the drafts of version 3 of the GNU General Public License. The next iteration of digress.it was the Iraq Study Group Report and The President’s Address to the Nation, January 10th, 2007. These were followed by HASTAC’s draft paper on The Future of Learning Institutions in a Digital Age and finally by Kathleen Fitzpatrick’s paper, Scholarly Publishing in the Age of the Internet (no longer available).

digress.it is a significant rewrite and development of CommentPress and I’m really pleased that the JISCPress project is not only using it as a core technology but also contributing quite heavily to its further development. CommentPress is already popular in Higher Education for the critique of texts by students, the open peer-review of manuscripts, the peer-review of published books and to solicit comment on Institutions’ policy documents. It has also been used by the UK Government looking for feedback on their Innovation Nation strategy. So just as JISCPress benefits from more than two years of open source development of CommentPress, we hope that apart from the JISCPress platform itself, Educators and the public sector will benefit from the improvements we make to digress.it. We know that difficulty meeting WCAG accessibility guidelines has meant that CommentPress couldn’t be more widely used in the Public Sector and this is one of the first tasks that we’ll be addressing in the JISCPress project.

If you want to have a say about the development of digress.it for JISCPress (remember, all code is open source and can be used for any other WordPress-based project), then post your thoughts to our UserVoice site. We’re always open to suggestions.

Testing new site features with the Amazon Kindle License Agreement

We’re really pleased to help promote the launch of digress.it, the evolution of CommentPress which WriteToReply uses to allow you to comment on document paragraphs.

We’ve been in touch with Eddie Tejeda, the original developer of CommentPress, since March, and have been working with him to find funding for a complete rewrite and re-release of the original CommentPress project. You can read more about digress.it on the community website, but here’s a run down of the new features, a bit of a roadmap for forthcoming features and a shout out to anyone that wants to get involved in the project.

New Features

The original features of CommentPress can be summarised as follows:

  • A Table of Contents
  • Paragraph-level URIs
  • Paragraph-level commenting
  • A scrolling comment box
  • Page filters that allow you to read comments by document section or by commenter

CommentPress was a WordPress theme. digress.it is a WordPress plugin and a complete rewrite of the original CommentPress code. It adds the following features:

Floating comment box. You can now resize and position the comment box anywhere on the page.

Threaded comments. Real discussion.

Highly configurable and accepts different stylesheets

RSS feeds for comment authors. Feeds for individual comment authors is a first for WordPress.

Paragraph embedding. You can embed a paragraph on your own site. Paragraphs content is available as HTML, JSON or TXT

Real-time onsite notifications. If someone else comments on a section you are reading, the comment box will ‘pulse’ to alert you.

There still be bugs. We’re still working on browser compatibility issues with the comment box, for example. This is a first release  using the version 2 codebase and we’d really appreciate your feedback from testing it by considering Amazon’s Kindle License Agreement. :-)

RoadMap

To achieve the objectives of the JISCPress project, we’ll be continuing to fund the refinement of digress.it until November.  The features we’re currently considering can be seen on our UserVoice page (please add more as you think of them). Here are some highlights, specific to digress.it:

  • Compatibility with IntenseDebate. This would provide a number of multimedia and reputational features.
  • Compatibility with PollDaddy. The ability to include polls in a document would be useful for consultations.
  • Paragraph and ‘comment here’ links in the RSS feed. Convenient if you read the document in your news reader or embed a feed elsewhere.
  • WCAG Accessibility. Required for use by the Public Sector.
  • Compatibility with XML-RPC clients for remote document authoring. Convenient for document authors to publish from MS Word, etc.