Wednesday, November 28, 2012

Semantic Software



I remember in hey hay days of web 2.0, there was lot of talk about semantic web. But it seems that just like many other fads, semantic web fashion (sic!) is also evaporated. 

But still, Semantic web makes lot of sense as web is becoming things oriented from human focused.  In the core of semantic web, lies semantic software.

Before going further, let’s pick some argument which provides differentiation between syntactic and semantic.
Syntax is what the grammar allows, semantics is what it means (http://c2.com/cgi/wiki?SyntaxVsSemantics)

But this differentiation does not provide any clue about, how to make software more semantic.  As per the above statement, every software is semantic.

But, does  this full fill the fully automated internet of things? I do not think so. Then what are the THINGS/CONCEPTS make a software semantic. In my view software which can evolve by itself in an ecosystem is truly semantic. Does our computer have reached that level of maturity where software can evolve by itself? NO.

So, how to make a software self evolve.? I do not know but I think usage of following concepts in software will push in right direction.
1.       Pattern matching
a.       Text  --> Regular expression --> To parse any input text, stored text
b.      Data àstored, real time (Complex Event processing)
2.       Pattern discovery
a.       Text (unstructured data)
b.      Data à stored
3.       XSLT and Schematron
4.       Rule engine
a.       Rules are defined at design time
b.      Rules are defined at run time
5.       Glossary/ontology/taxonomy/data dictionary à not on the piece of paper but in code. Data dictionary usage can be seen in usage of combo box instead of free text, option buttons, 
6.       Choreography (not orchestration)
7.       Understanding of meta data of various constructs and giving handle to user to manipulate them to alter behavior of that construct under the eco-system of given computer ( hardware and/or software)
8.       Artificial Learning (AI) and machine Learning (ML)

1 comment:

  1. Semantic Web has to use the existing web data as input for sematics as the existing web is so heavily manifested and has grown to huge proportion that Semantic web may not be able to replace it in entirety. RDF and OWL have jump started Sematic Web, but sematic web's biggest hurdles are 1) Unstructured and Huge exisiting web data (regular links which need to be converted to semantic links 2) Fuzzy States of entities which make semantic meaning difficult
    DBPedia and SPARQL have been started as Semantic Web Projects.

    ReplyDelete