Archive for February, 2006

Hopes and Fears for the Semantic Web and the Enterprise

Sunday, February 12th, 2006

The semantic web, being many things to many people, promises to enable cross domain knowledge exchange in such a way that is compatible with current World Wide Web architecture and assumptions. The enterprise computing environment, defined here as inter-departmental or even inter-organizational information and service integration, can certainly benefit from some of the semantic web’s visions and goals. For example, most of the work done at the enterprise level is integration between disparate data sources and services. This integration is performed at two levels; the first is characterized by building data warehouses, extract/transform/load (ETL) procedures, and generally combining data repositories to create more complete data sets. The second level of enterprise integration is concerned with defining and mapping the semantics of the information sources in order to integrate knowledge across the enterprise more efficiently. It is this second level of integration that the semantic web technologies promise to help bring to fruition, because up to now this effort has not been formalized or standardized in the enterprise. However, the semantic web has seen very little adoption in the enterprise, thus causing a general lag in adoption of the semantic web in general. If the enterprise can benefit from implementing semantic web technologies, why is adoption so slow? What has caused the stall, and what can be realistically hoped for in the future?

Continue to full post…
(more…)

Hopes and Fears for the Semantic Web and the Enterprise

Sunday, February 12th, 2006

The semantic web, being many things to many people, promises to enable cross domain knowledge exchange in such a way that is compatible with current World Wide Web architecture and assumptions. The enterprise computing environment, defined here as inter-departmental or even inter-organizational information and service integration, can certainly benefit from some of the semantic web’s visions and goals. For example, most of the work done at the enterprise level is integration between disparate data sources and services. This integration is performed at two levels; the first is characterized by building data warehouses, extract/transform/load (ETL) procedures, and generally combining data repositories to create more complete data sets. The second level of enterprise integration is concerned with defining and mapping the semantics of the information sources in order to integrate knowledge across the enterprise more efficiently. It is this second level of integration that the semantic web technologies promise to help bring to fruition, because up to now this effort has not been formalized or standardized in the enterprise. However, the semantic web has seen very little adoption in the enterprise, thus causing a general lag in adoption of the semantic web in general. If the enterprise can benefit from implementing semantic web technologies, why is adoption so slow? What has caused the stall, and what can be realistically hoped for in the future?

From the perspective of an enterprise systems developer, there are at least two causes for a general lack of adoption of semantic web technologies. The most important reason is that there isn’t a good large scale deductive database capable of integrating with standard RDBMS packages like Oracle and able to reason across millions and millions of triples . The second reason is one of marketing; the message needs to be one of “show, don’t tell”.

Enterprises have been traditionally built around large relational databases, and there are enormous amounts of investments in tools, training, and technologies that make replacing how the data is stored impossible. Therefore, for semantic web technologies to enter into the enterprise, they must integrate with these large databases to extend their functionality in ways that are easier and more efficient than traditional means.

For instance, to achieve the enterprise wide knowledge sharing that I argue the enterprise would find enticing, relational databases need to be able to directly import ontologies and rules just as easily as the standard INSERT, UPDATE, and DELETE statements from SQL. Ontologies can act as the glue between multiple information sources, providing a consistent view of all the information, augmenting it and filling in the gaps. To efficiently do this, however, requires direct integration with the data source because it is impossible to perform enterprise wide reasoning in memory only. Much like why a relational database doesn’t load up all tables into memory before doing a search, performing ontology driven reasoning efficiently requires intelligent integration with the data on disc as well as in memory.

Another reason why the semantic web hasn’t been accepted in the enterprise yet is one of marketing. So far, most of the message of the semantic web has been in the form of “what might be possible in the future.” What’s lacking is what we can do right now with these technologies to help us integrate and assimilate information. There needs to be more emphasis on showing the enterprise what it can do, instead of telling it what it could do.

To be fair, that message of “show, don’t tell” is difficult now because much of the exploratory work is still being performed. The issues of ontology authoring and reasoning across very large databases are still being worked out.

There are some other practical issues that are keeping the semantic web from being widely adopted. One issue is the awful RDF XML syntax, which is cryptic and does not integrate with existing XML tools. Creating a new XML serialization of an RDF graph, one that can slip seamlessly into existing XML processing pipelines, would do wonders to help RDF integrate with the rest of the document processing systems in use today.

Another practical issue is that RDF does not have a formal or standardized integration point with XHTML. While not directly related to the goals of knowledge integration at the enterprise level, it is certainly a restraining factor against RDF mindshare. It should be very easy to insert a RDF triple into an XHTML document, and until then, RDF adoption will be stalled. If more documents on the Web had RDF triples embedded in them, then awareness for RDF would increase, thus helping overall adoption.

In summary, there are both large scale issues and practical issues involved in holding back semantic web technologies from general adoption in the enterprise. The main issue is the lack of efficient integration with existing relational databases. The second issue is one of marketing, where the message is muddled with too much speculation and not enough concrete problem solving. Practical issues continue to plague general RDF adoption, such as the antiquated and difficult to process RDF/XML syntax, and the lack of a standard RDF in XHTML procedure.

With those large issues looming over head, what can those that still have an optimistic view of the semantic web landscape hope to expect? The good news is enterprise application providers such as Oracle recognize the potential for technologies like RDF and RDF Schema. Oracle 10g includes a native RDF store, built upon their Spatial products. Oracle 10g even supports rules, including built-in RDF Schema rules, although only in a read-only, data warehouse type of usage. While not sufficient for OLTP type applications, Oracle’s RDF support is an important first step at putting semantic web technologies into the enterprise. We can continue to hope that this support increases, included support for OWL, and that other database manufacturers include RDF and rule support in their RDBMS’s.

We can also hope that RDF gets a new XML syntax, in order to allow it to be processed by the enormous amount of XML toolkits that already have been accepted by and integrated into the enterprise. Work has been done here as well, most notably by Dave Beckett’s RXR format . A new XML serialization needs to be described by XML Schema, human readable, and most importantly utilizing modern XML techniques in order to ease integration with other XML formats and tools.

To summarize, the semantic web technologies promise easier and formal knowledge integration to ease enterprise information integration. Significant barriers exist, although there are glimmers of hope on the horizon. Through combined efforts of enterprise software vendors delivering real products, and new marketing campaigns that stress what is possible now, the semantic web can deliver on some of its promises. One thing is for certain, and that’s no towel has been thrown in quite yet.

Native to a Web of Data

Sunday, February 12th, 2006

Native to a Web of Data is a great presentation on what makes a good Web 2.0. This is Web 2.0 without the marketing hype, this is the Aggregate Web. A web of services and data, available for mashups and remixing. As Dave Beckett points out, the goals of the Aggregate Web are very similar to the Semantic Web’s goals.

Web Systems Invited Article: Semantic Web Technology — Bringing Meaning to Distributed Systems

Sunday, February 12th, 2006

Web Systems Invited Article: Semantic Web Technology — Bringing Meaning to Distributed Systems

> With the increasing size of the web and the availability of new technologies such as mobile applications or smart devices, there is a strong need for making the information on the World Wide Web accessible to computer programs which search, filter, convert, interpret, and summarize the information for the benefit of the user. The Semantic Web is a synonym for a World Wide Web whose accessibility is similar to a deductive database where programs can perform well-defined operations on well-defined data or even derive new information from existing data.

Towards Semantic Middleware for Web Application Development

Sunday, February 12th, 2006

Towards Semantic Middleware for Web Application Development

> In this paper we try to remedy the problems by applying semantic technology, i.e. ontologies and inference engines, in the middleware itself. After providing a short introduction to Web-based middleware and detailing some of its problems in sections 2 and 3, we propose an ontology as harmonizing conceptual model covering aspects from the heterogeneous areas of component and service descriptions (section 4). The ontology is leveraged to support developers and administrators in their complex tasks during development-, deployment-, and runtime in our prototypical Application Server (section 5). We discuss related work in section 5 and conclude in section 6. Finally, we provide a useful compilation of references and links.

Knowledge Management and the Semantic Web: From Scenario to Technology

Sunday, February 12th, 2006

Knowledge Management and the Semantic Web: From Scenario to Technology

> In 2001, Tim Berners-Lee, James Hendler, and Ora Lassila wrote a seminal article in which they envisioned the Semantic Web.1 The article’s general tenor, and particularly their scenario demonstrating how the Semantic Web might be used, was directed toward identifying and using services on the Web. The pursuit of this vision continues.This article describes a complementary vision—a vision of the Semantic Web as a knowledge management environment.

Expert Spring MVC and Web Flow

Sunday, February 12th, 2006

Expert Spring MVC and Web Flow is my first book, soon to be published by APress. The official book page has been updated with the correct book description and cover thumbnail. If I were you, I wouldn’t wait for the movie version, so go buy a copy! The contract negotiations with Natalie Portman are still in the works.

> Expert Spring MVC and Web Flow provides in-depth coverage of Spring MVC and Spring Web Flow, two highly customizable and powerful web frameworks brought to you by the developers and community of the Spring Framework. Spring MVC is a modern web application framework built upon the Spring Framework, and Spring Web Flow is a new project that compliments Spring MVC for building reusable web controller modules that encapsulate rich page navigation rules. Along with detailed analysis of the code and functionality, plus the first-published coverage of Spring Web Flow, this book includes numerous tips and tricks to help you get the most out of Spring MVC, Spring Web Flow, and web development in general.

Flickr Filesystem

Wednesday, February 8th, 2006

Flickr Filesystem

> Flickrfs is a virtual filesystem based upon FUSE for Linux. It can be mounted on your computer and then can be accessed using the standard commands. But, here are the twists. The filesystem uses threads, and hence, improves usability and speed. When you mount the filesystem, it will create 2 directories automatically: ‘tags’ and ’sets’. ’sets’ will automatically retrieve your sets and will show you all the photos available in your sets. You can then easily copy images on your hdd. If you want to add some more photos to these sets, just copy them to the folder, and they will be uploaded to the respective set.

Programmable Web: The Web As Platform

Tuesday, February 7th, 2006

Programmable Web: The Web As Platform has a great listing of APIs, Mashups, and even a Make Your Own Mashup Guide.

Mashups, in this case, are web applications that combine the functionality, or simply change it up, of one or more existing web applications.

Rails Best Practices, Tips and Tricks

Tuesday, February 7th, 2006

Rails Best Practices, Tips and Tricks

> Because Rails is a young framework, I thought it would be helpful to write up what I consider best practices when coding with it both for my new coworkers and the web at large. Here’s my current draft. Feel free to critique and comment. I’m very open to suggestions.