Applications, Demonstrators

Semantic Web meets RSS meets students

Over the Summer I wrote some code as part of a project with Dr. Louise Platt and Jackie Fealey here at LJMU. We were fortunate to be able to draw on the talents of a very enthusiastic and hard-working student intern by the name of Daniel Blunt. Danny — with help from Louise and Jackie — designed a useful HTML5 application (web app) for locating and sharing online resources between students, for Louise’s “Policy, Politics and Events” module. I implemented his ideas using some experimental code I’d written a while back to translate RSS feeds into Semantic Web pages.

Here’s a very quick guide to the tool, and how it was created…

Start with RSS feeds

RSS feed page

Figure 1: A spreadsheet of over 120 RSS feeds was translated into an Semantic Web page.

First, Danny drew up a list of RSS news feeds appropriate to the module in an Excel spreadsheet, over 120 in total (told you he was enthusiastic!)

For those not familiar with RSS, the technology can loosely be described as a data format that allows internet sites to publish their recent activity in a way that other software can read and utilise. The format typically contains a list of time coded entries, each with a title, abstract (short description) and a web link to the actual full content. To give a couple of examples: RSS allows smart phones and computers to know when a new episode of a podcast you listen to has been published, or a web site to show the latest stories published by BBC Sport.

The app’s main page presents the student with list as clickable links (see figure 1), with the bottom part of the page consisting of filter boxes for category (business, arts…) and media type (broadsheet, blog…) Clicking entries in the filter boxes reduces the list to just those RSS feeds that conform to the chosen entry or entries. So, to see just the arts feeds for broadsheet newspapers, the student would click Arts from the Categories box and Broadsheet from Media type box; the list in the top part of the page would automatically collapse to just the relevant entries.

(Keen eyed readers may also have noticed from the screenshot that the main page contains a special link to something called a Course Feed — this will be explained later.)

Semantic Web meets RSS

Semantic RSS: Unfiltered feed

Figure 2: The BBC Politics RSS feed, processed to turn its abstracts into semantic data.

Semantic RSS: Filtered feed

Figure 3: The same RSS feed as figure 2, but filtered.

Clicking one of the RSS feed links opens that feed. The top part of the page now displays each entry in the feed, while the lower part displays more filter boxes that allow the student to quickly find entries that relate to particular themes and ideas addressed by the Policy, Politics and Events module. Clicking an entry opens its web page in a new browser tab.

The filter boxes were designed by Danny to reflect the kinds of themes and topics he felt were important to the module. For example, Danny decided that being able to filter on Ideology was important, so I asked him to draw up a list of keywords that the web app could look for that corresponded to the ideology theme. Behind the scenes my aforementioned experimental Semantic Web code scans the titles and abstracts of each RSS entry in the chosen feed, looking for the keywords Danny has indicated and formulating them into filters (as shown in figures 2 and 3.)

From figure 2 we can see the BBC Politics feed (on the day checked) contained 12 entries with words that suggested the related news story dealt with left wing issues, and 13 entries with words suggesting the news story dealt with right wing issues. Because the data the page creates is Semantic Web data, when a filter is selected the other filters automatically update their counts. In figure 3, when Protest is selected in Ideology, the user can clearly see neither of the two related entries deal with Media and National Identity (their filter boxes are empty), and one of the stories relates to NATO. These totals, in themselves, may present interesting and useful information hinting at how a given news source may bias its coverage of events.

The little orange RSS logo in the corner of each entry is used to add the entry to the Course Feed, which we’ll look at next…

Semantic Web meets students


Figure 4: The course feed is created by the students themselves.


Figure 5: Entries can be manually added to the Course Feed.

The Course Feed is another RSS feed — except this one is populated by the students themselves. It’s a place to store and share useful resources, filterable by the same means as RSS feeds from other sources. If a student clicks the orange icon on an RSS entry, its details are copied into the Course Feed. Alternatively, to manually add an interesting page or other web resource, the Course Feed page has a form, accessible via the orange icon in the lower part of the page (see figure 5.)

The Course Feed acts a little like a web browser’s bookmarks or favourites, in that contains only those few articles or resources that are most useful to students — but with the added benefit of being semantically filterable.

Although the software was written for Louise’s Policy, Politics and Events module, the code was written in a generic way. It would be possible to easily create a separate, independent, tool for a different module, with its own list of RSS feeds and its own Course Feed.

As a parting act, Danny produced a couple of videos showing the tool in action …



Comments are closed.

Previous Posts

%d bloggers like this: