Potential of Semantic Web integration into Web browser
I am Hitoshi Uchida, researching at W3C/MIT as W3C Fellow. I introduce my latest research to integrate Semantic Web technology into actual web browser and what can be achieved. Not only Semantic Web but also HTML5, privacy issue current web has are also addressed.
I am developing Semantic Web Chrome Extension "Semantic Spider" which enables Chrome to be ready for 'Semantic Web Technology' and become more intelligent and personalized. The base of architecture is to store semantic data from your visited sites into your Chrome automatically and utilize them for your daily web browsing experience.
Semantic Spider is a research oriented open source project. You can see the source codes from here.
TriplestoreJS was also developed to store semantic data like RDFa/microdata into HTML5 Web Storage.
What this Chrome Extension wants to achieve
Eliminate silo of current web services
Though our daily life became more productive and communicable with friends and family thanks to diverse convenient web services and SNS, current web system doesn't have enough options to mashup and utilize personal data which are distributed among services.
Thanks to authorization protocol like OAuth, we can securely share private data between services by granting permission to access private data. However, if our favorite services don't support it, we can't reuse personal data on other services without migrating / copy-and-pasting manually.
In addition, the authorization protocol itself is complicated not only for developers but also site users because normal users can't understand where they are staying at during the redirection (at least 2 times) between OAuth client and server.
Depart from user data centralization on servers
Web browser is becoming more functional with not only rendering rich graphical web page but also Device API, Web Storage, Real-time transfer protocol support.
However, we depend on 3rd party services to control personal data on the web because current web browser itself doesn't have any functionality for us to control personal data. By disclosing our privacy to services, we get the ability to control them on the current web system.
Though Web Storage stores user data into web browser itself, it is for web applications, not for web browser users. We are always tied up with the architecture of current web system that web browser mainly works for web application execution engine.
Web browser is personal consumer application and we should have more control for personal data on the web without depending on 3rd party services.
Provide more consumer use cases for web developers to use Semantic Web
Everybody understand that Semantic Web and metadata has advanced potentials to make their web services more functional. However, it is used especially for enterprise industry, life science and search engine. General web developers don't feel the benefit to use Semantic Web on their services except for found by crawlers, because there are few use cases and challenges to use Semantic Web for consumer applications. Because it is tough work for web developers to integrate metadata into their sites, we require more use cases for consumer application area which apply Semantic Web.
This effort and challenge would be a promising bridge between HTML5 developers and Semantic Web ones.
Auto-Save annotated contents
Any web contents annotated with W3C Semantic Web can be stored into your Chrome automatically / manually and your Chrome works with your stored personal semantic data. If your stored semantic data have something relationship with each other, then they starts to be inter-linked automatically and organize item groups in your Chrome.
Your database of semantic data will grow up based on your daily web browsing, and this Chrome Extension can provide more personalized behavior for you, and becomes understandable your interest with your stored semantic data.
Suggest related items
When you visit web sites and the sites have any relationships with your stored semantic data, then related items are suggested on UI and you could discover relationships and knowledge you didn't realize so far.
Simple use case is a personal wishlist among online stores without disclosing user's interest to online retail stores. For example, let's assume that you would like to buy a Apple product in somewhere online stores. If you find out a favorite product on Bestbuy.com and store it into this Extension, when you visit Apple online store, this Extension shows the Apple product stored in Bestbuy.com during you stay at Apple store without disclosing your wishlist for Apple products to both Bestbuy.com and Apple store because this Extension already knows your stored favorite product on Bestbuy.com. You can compare the spec and price on any retail stores you visit if you stored favorite products on somewhere sites. This Extension calculates the similarity and detects related stored items with inference algorithms. Additional algorithms will be researched to improve the accuracy.
Assist media sharing
This Chrome Extension assists you to share personal data like photo/video with your friends and support your SNS activities by utilizing stored contact information.
For examples, when you want to send photos stored in Picasa to new friend whose contact list isn't registered yet to Gmail, if you visited his homepage or SNS page including his contact information as FOAF and stored into this Extension beforehand, this Extension works like contact list manager without depending on and disclosing the private information to Gmail.
Suggest search keywords
When you are inputting a search keyword into text field, this extension suggests candidates from stored semantic data. Though general services also suggest frequent used keywords or your prior input histories, keyword suggestion of this extension is independent of any 3rd party services and derived from your personal semantic data representing your concrete interests which latest services are trying to collect.
If the search field is annotated with @itemtype (microdata) or @typeof(RDFa) attribute which constrains the type of items, only keywords of the specified category are suggested in the text field.
<input type="text" title="Search" value="" itemtype="http://schema.org/Event">
In case of retail stores, if you visited Apple store and semantic data of your favorite Apple products were stored into the extension, the product names stored at Apple store are suggested in search field on Amazon.com.
In another case of photo albums, because the extension supports Google login and stores your several months schedules from Google Calendar as your semantic data, if you would like to find out the locations of your album folders on SkyDrive whose names are based on the schedule titles, the schedule names retrieved from Google Calendar are suggested in a search field on SkyDrive and you can reduce the waste time to find the locations.
Synchronize stored contents among browsers
You can easily synchronize your favorite contents among your Chrome.
If you would like to copy stored favorite contents into another Chrome, you can indicate which items you would like to synchronize. Synchronization will complete less than 1 minute.
Auto-Remove stored contents
If a stored content has own expiration, they will be removed automatically from local database like cache.
When a user visits a web site, this Chrome Extension monitors HTTP traffic and find out Expires header in HTTP response. When the annotated content is stored, the expiration information is also stored at the same time. Even if the auto-save option is validated, auto-remove option prevents the increase of stored contents.
Let's try describes how you can play above features with this extension.
I introduced the potential to apply Semantic Web technology to actual web browser with Semantic Web Chrome Extension named "Semantic Spider".
I will research / integrate additional ideas to utilize the stored personal contents. Any suggestions are always welcome!