Situational Software Blog      by NetMesh and partners [XML] Home

Semantics and Situational Software

Back in 1993, when I first encountered people who thought that explicit semantics were essential for software development (a view that I quickly adopted), publicly stating this view would quickly mark one as the odd one out even among many software professionals. Since, this has changed so dramatically that it is now supposedly common knowledge that the future of the web is the "Semantic Web" (what exactly that is supposed to mean is very fuzzy still, even among professionals, but I digress).

The basic idea behind semantic software is pretty clear, however: semantic software has an explicit idea of the types of things that it deals with. For example, it not just has forms and a submit button and a database, but also the concept that these forms allow the display of, and the database allows the storage of a concept called a Customer, and that Customers can place Orders, and that Customers are either Individuals or Companies. Similarly for the web: a semantic web page would not just consist of a bunch of HTML and some GIFs, but also state that the information shown on this page actually represents a customer.

Why would that be advantageous? There are many different scenarios, but if we compare software with an automated secretary, say, it is very clear that a secretary who understands what a customer is and that customers can place and cancel orders is a much more useful secretary than one who only understands file, folder, and yellow sticky. In short: semantic software can make software much more useful because it can take knowledge of the application domain into account. (It also has substantial cost advantages during system development, and in particular for system integration and maintenance)

For situational software, semantics will be essential: if a physician enters a patient's room, but the electronic situation that is assembled for him has no concept of the semantics of the information that is being shown, it's likely going to be not very useful. However, if it knows what an ECG is and an X-RAY, and that the patient had a stroke while being on a medication that was dangerous for stroke victims, it can represent that situation much much better, and provide much more value to the physician.

I'll be writing more about this in the future, as this insight has broad ramifications.