Monrai Blog

News about Cypher, Semantic Web, Natural Language Processing, and Computational Linguistics

Sunday, June 07, 2009

Razorbase Safari Bug

UPDATE: The Safari bug is now fixed.

There is currently a bug in the xslt stylesheet for Razorbase which prevents Safari from displaying the main results page. No resolution is availbile yet, but I'm working on it. I apologize for this inconvenience to Mac/Safari users. I'll post once the bug is fixed.

Labels: , ,

Saturday, June 06, 2009

Razorbase Examples Part 5

If the litmus test for a killer app is the ability for users to create fun, ad-hoc games with it, then linked data is the Semantic Web's killer app. Here's an example of a variation of the Kevin Beacon game using razorbase.

If you discover any new games using razorbase, please post the rules as a comment.

Labels: , , , , ,

Friday, June 05, 2009

Razorbase Examples Part 4

In these slides, I walkthrough the use the file system metaphor in the razorbase UI.

Labels: , , , , ,

Razorbase Examples Part 3.5

I've added "type actions" which allow you to do multiple-step walks through the database with one click. Currently, actions have been added for types: Category and Person. More will follow soon.

As a side announcement, a re-crawl of the LOD is expected to be complete between today and mid-next week. This means less errors in the data, more current data, and less mal-formed characters.

Thursday, June 04, 2009

Razorbase Examples Part 3

There is a ReadWriteWeb article about Google Squared, a new labs product that gives structured results to keyword search. It's Google's version of razorbase. The article expresses some of the services shortcomings using a search for dog breeds as an example. In response, I've created some slides that shows how a lookup for dog breeds works in razorbase. It's a great example of the universe of Linked Data vs. the closed world of Google's document web.

Labels: , , , ,

Tuesday, June 02, 2009

Razorbase Examples Part 2

I've released a second presentation on razorbase, this time showing the alternative ids action in action. I also give a demonstration of what isn't allowed to happen when people don't adhere to the Principles of Linked Data.

The world is refining how it consumes, people are demanding goods and services to be delivered in ever decreasing sizes that allow the consumer tighter control and choice over exactly what is consumed and how much of it. Cell phone billing went from long-term service contracts that spanned years, to pay-as-you-go plans and the concept of more grainular roll-over minutes gained popularity. Amazon has figured out how to break the whopping utility bills of their server centers into small, per-usage units which the consumer pays for as they go. Youtube turned the world of media on its head by allowing users to instantly share bit-sized video clips that can be consumed faster than it takes to clean your email inbox. The notion of buying a record album has been usurped by a iTunes feature that allows for purchases at the level of a single track of the user's choice. One could refer to this trend as the atomization of goods and services, and it's about to happen in the realm of the WWW (and data in general), and in a very big way.

I've created and used many Linked data/Semantic Web demos over the last decade, and each has taken a level of... imagination, in order to feel where this is going. Razorbase is the first time I've been able to really sit back and see our destination physically on my computer screen. The single most revolutionary feature of this service is the Information About page, which lists all properties of the subject in focus. If the subject contains a list of things, then you'll see all the properties belonging to all the results. Most linked data browsers I've seen attempt to push the entire description of a URI resource into the UI at once (or at least as much as one results page can hold). This is a very pre-atomization approach, akin to how a Wikipedia article is displayed. If you look up WWII on Wikipedia, you could easily spend an hour scanning the article and taking notes. The user would benefit more by having this information sliced and diced into bit-sized, labeled chucks, and placed on a platter for them to choose freely from... in a word, atomized. As long as the user has a general notion of what properties are (probably) availible, and what they can expect to be on the other end of those properties, then the user is able to (in most cases) easily build a mental map or strategy of how to get to the exact information they're interested in, no matter how complex or esoteric the connections involved, no matter how heterogenous the sets of data are standing between the user's start and end point. Once the user has a mental map, they only need 1) paved roads and 2) the right sign posts to keep them on their track. Razorbase provides sign posts by displaying blue arrows that take the user back and forth through the dataspace. It provides paved roads by e.g. using collaborative-filtering-esque techniques for exposing the most worn paths through the dataspace.

Labels: , , ,

Saturday, May 30, 2009

Razorbase vs. Parallax

For those who don't know, David Huynh, most noted for his work at the Similie Project, released a faceted browser for Freebase (now part of the LOD dataset) earlier this year. Much of my work on facets/set-based browsing is based on his. Here's a compare/contrast (see presentation below) of his Parallax browser with razorbase that may be useful.

There are now two new buttons/actions that came out of earlier observations of how people interact with the razorbase UI: mutual connections and descendants.

Mutual Connections: allows you to view the mutual connection of a certain type linked to the subject, with one click. E.g., if you were viewing Someone's friends, this button will take you to their friends.

Descendants: allows you to view the descendants of a connection. If you were viewing People who influenced someone, this button will take you to people who they influenced. Use to pull friend of a friend, a person's ancestry, etc.

Initial experiences:
I've found that what folks discover is most useful about the service is the ability to develop their own strategy for finding the information they need. By refining my criteria through trial and error browsing, I was able to find valuable Web resources about an esoteric research topic: "Recommendation Engines/technology". The results were several orders of magnitude more precise than Google and Wikipedia yielded.

I began my looking for things named Recommendation Engines, which returned all things with that title in its name. I then drilled into the Documents and Articles category. From there, I examined each article in the list, and manually collected a list of companies that I found to interest me. After pulling a list of companies that develop said technology, I was able to go to the Websites that published stories about those companies, e.g. by looking up Companies named Using the mutual connections button, I found the other stories published by those sites (because in most cases, the site containing the story were sites dealing specifically about my topic). From there, I figured that those stories probably contain links to stories/companies/web services related to my topic, so using the Information Explorer, I pulled all links referenced by those documents, and got a great list that yielded more companies in that space. Then I figured, the links in those documents may also be related. The descendant button allowed me to pull the links two-degrees out from the original list, yielding a list that was less relevant, but which did contain a few precious nuggets. In the poverty of data regarding my esoteric topic, the ability to locate those few nuggets by 1) defining a criteria based on Category and other information about my topic, and 2) drilling through and cutting the results, delivered value that I truly can not find anywhere else on the Web. This was my first real-world experience with the value proposition of the linked data web. The resulting presentation was one which I would not have been able to compile otherwise within the time constraints I was given.

Labels: , , ,

Tuesday, May 19, 2009

How to use Razorbase

Razorbase is a browser for discovering and exploring connections between things (people, places, movies, shoes, food, etc). It does this by querying not the World Wide Web (a global network of websites), but the burgeoning Linked Data Web (a global network of databases). Try it for yourself and see whether you can discover the difference between the two.

This is a tutorial for the service. My goal is that the browser be so intuitive, that you could beam a caveman right in front of it, and he could figure out what it's for and how to use it without being told. Well, so much for that :) (Update: Slides are now available here)

Homepage: There are two controls there of interest, named link, and the query text field. Click the named link modifies the type of query to perform, options:
  • things named... (e.g. things with "Bill Clinton" in its name or title or label)
  • things connected to... (e.g. things connected to fencing)
  • things known by the URI http://... (i.e. things known by the URI
Filters: Razorbase allows you to define complex filters to restrict the items in your results (see Navigation and Zooming below). Click the Your query link to view all filters. The Your query section contains a breadcrumb list/trail so that you never get lost while browsing. Click any node that appears there to go to that subject. Access all nodes by summoning the filters (click 'Your query'). The last breadcrumb in the trail is what you are viewing, it's called the subject.

Group results: You can view the categories for results by clicking the Category Explorer icon (magnify glass), if you want to see all results ungrouped, click the Back to Results icon (blue left arrow)

All info about something: If you want to know what all information is available about the items in the results, click the Information Explorer icon (blue circle with exclamation mark). There is a other info link that appears on the blue bar, click that if you want to see further types of information, then click main info link to go back to main information about the results.

Navigation: You navigate through the dataspace by clicking the blue right arrows, clicking one will take you into whatever it's marking (so Friends >> takes you to the friends of the subject).

Zooming: Zoom in and out of categories by clicking the magnifying glasses next to category names under the Category Explorer icon.

Add filter: The blue plus sign creates a filter on your search by binding the item as the value of a connection (e.g. all people whose email is Be aware that Navigating and Zooming also add filters (but the values in the case of Navigation are unbound). So basically, the blue plus sign does what the blue left arrow does, but instead of being taken to that item, you're taken back to the subject you just left.

No text please: Don't want to have any text search in your query? For example, your viewing Presidents connected to Marilyn Monroe, and you want to drop the criteria that they be connected to her, resulting in all Presidents. To do this, click the Your query link to summon the filters, then next to the text field, click the blue minus sign. This sets your text to anything. Click the blue plus sign to add some text.

Little or no results? Razorbase's novelty is enabled by the fact that OpenLink has figured out how to give SPARQL query access to a quad store of over 4.5 billion triples. In layman's terms, this means we have to ration out how much time the server can use to perform your query. The default is 2 seconds (i.e. the server gets all results it can find in 2 seconds or less). So increasing the time can potentially increase the number of results you get. To increase the time, click the clock button when it appears. Each time you click, the time increases by 2 seconds (up to 12 seconds for now).

Side notes: The power of this UI approach is two-fold, faceted-browsing, which allows you to navigate large set sets by filtering data as you go. The second is set-based browsing, which allows you to see information about multiple results simultaneously.

Hope that helps :) Next, some strategies I've found in my interactions with razorbase.

Labels: , , , , ,