Tuesday, September 05, 2006

Potential for the Semantic Wiki

location based services

Semantic MediaWiki was installed on the Case Wiki last week. Since then, about 150 relations and 50 attributes have been defined. There is still lots of room to grow.
We have yet only covered the basics of what the semantic wiki can do. So far, the most popular semantic in use is the located in relation. This relation allows you to define that one article is located in another article. Take a look at Yost Hall, Nord Hall, or many of the building articles. These articles now look at the semantic relationships and automatically display a list of articles that have the "located in" relation set to that building. Cool! Brian Beck already has a geolocating tool for Case that follows this relation to find the location of something on campus.
Anyway, we have barely scratched the surface of what is possible with the storage of semantic data. Here are a few ideas I have thought of:
Event information - Per-event articles could be created in the wiki. Each article would have attributes defining the event date, time, location, sponsors, etc. It would be possible to query the wiki for all events in a given day, building, with free food, etc. It would also be possible to write a wiki "bot" or web service that allowed others to remotely publish event information to the wiki. A calendar bot could scour the Case network, parsing calendar information and publish event info to the wiki. The Case Wiki could automatically import feeds from USG or Case Life. The Case Wiki could also provide an API for publishing event info (Atom Publishing Protocol or CalDAV perhaps). The Case Wiki could easily be a calendar aggregator for the university. Of course, this is a stretch from the purpose of the Case Wiki, but it is possible. We could always set up a specialized "Events Wiki" whose sole purpose is to track events across campus.
Location-based services - We have already seen how the "located in" relation works. We can do much more. Imagine if every building on campus had the subnetwork attribute defined. One could easily parse the XML output from the wiki and match an IP address to a building. This could be used on numerous web sites across campus to dictate web site behavior. The location information could also be used to building a virtual tour of the university. You could be walking around with your GPS-enabled phone and your phone will be able to find all restaurants within 500 ft.
Finding businesses - The semantic extension comes with a very powerful query tool. It is possible to dynamically search for articles matching a given criteria. Currently, we can do things like "find all places in Little Italy" or "find all bars in Coventry." Imagine what happens when articles have attributes defining their hours of operation. "Find all pharmacies currently open" or "Find a grocery store open Friday at 11 pm."
Establish detailed history of events - Imagine if all the buildings on campus had attributes defining their history (construction date, tear-down date, etc). It would be possible to construct interesting queries about the university. For example, "Find all buildings existing in the Case Quad in 1954" or "Find the oldest restaurants in Little Italy."
Crime log - The Case Wiki could be used to record crime events around campus. Attributes such as severity, suspect description, location, etc, could be recorded for each. It would be possible to query for "All bikes stolen in 2005" or "All crime in the Case Quad in May though August". It would make Brian's campus crime parser a lot easier.
Because there are no restrictions on what relations and attributes can be defined in the Case Wiki, there are limitless possibilities for ways it can be used. However, we must always keep in mind that the Case Wiki is a wiki and that it is meant to be an encyclopedic reference about the university. We shouldn't be shoving everything in the Case Wiki just because we can. There comes a time where a large or unrelated data set requires its own wiki. This is where a wiki farm comes in and another reason why MediaWiki with its semantic extension is a compelling choice for the software to power it. Actually, the more I think about it, there should be multiple wiki farms on campus. People should be able to chose between MediaWiki (for compatibility with the Case Wiki and the semantic extension) or from something else. This topic is for another post, though.
So, I hope I've given you a taste of what is possible with the semantic Case Wiki. If you have an idea, leave a comment, or start adding semantic content to the Case Wiki!

No comments: