Saturday, December 30, 2006

Resolutions for the New Year

Its time of the year when we take a stock of what we had planned for the previous year viz a viz what we achieved. What we left on the way and where we gave up. But while on one hand we talk about what happened in the past we also make resolutions for the new year. While the new year eve celebrations are just under 48 hrs away we already have list of things TODO in the new year. While I was looking at what I am planning to achieve in the world of Semantics Database I can see that in the coming year I need to:
- Work on Finding the best way to represent the dynamic data.
- How to get over the problem of merging two different Taxonomies and Ontologies.
- How to represent the Knowledge (we gather over a period of time) and subsequently build a Knowledge Base.
- How to Import the Knowledge from an existing Knowledge Base.
- What logic we need to apply to process the data which is not represented in linear form like we get from a SQL based RDBMS.
- How do we ensure that the Process Result are kind of understood by the computer.
- How do we manage the interaction between two or more agents and define a Trust Relationship among them.

There are lots of things which I am planning at this moment to do.

Recently I was contacted by a someone from other part of the world and he suggested me to have a post on Semantic Approaches from an Industry Vertical Perspective. Same in the line of what ACCORD does. This is one more task I am adding to my list of TODO for the year 2007.

I am not sure how the list will appear one year from now when I am doing the stocktake once again. But I am sure of one thing that the list will not be the same as it is today. There will be few new items added, few removed of become obsolete. But yah the New Year is bringing lots of promises with it and I expect to have a busy year like It was in the year gone by.

Have a Wonderful and Prosperous Year Ahead...

Until Next Time..:)

Saturday, December 23, 2006

Holiday Wishes

Wishing Everyone a Merry Christmas and Happy and Prosperous New Year Ahead.

While this year is about to come to an End. I look back and retrospect what I learnt during this year. While there were ups and downs, rights and wrongs, successes and setbacks. But at the end it was one of those years of my life which brought lots of opportunities to learn something. The new year eve which as per calendar was around 51 weeks ago seems like something which happened yesterday. The Antarctica Flight trip was one of the most memorable experience I had this year. Added to that meeting few wonderful people on this planet. I am not going to put their names here :).

As far as Semantic Database is concerned. Last week I got a new concept of building a Database which supports Semantics rather than making it a business logic of an application. I had an initial discussion about that with few friends and they seemed to have liked it. It is just a concept which I am penning down. If you are interested in knowing what I am talking and also want to be part of that, mail me your gmail id and I will invite you to collaborate on the document.

Until Next Time.. :)

Tuesday, December 19, 2006

Why Semantics?

I was asked once by a friend of mine as what is Semantics? I gave a very short explanation as what I am trying to achieve. But then the flow of question started as:
- Why we need such a thing?
- Why we need semantics?
- Are current technology not good enough?
- Is this going to be just another jargon?

To understand this lets go back to where we started. We refers to human beings. Going few hundred yrs back in time if we look back at where we were. Human beings were living in a closed society, We were not interacting with other culture, countries much like we do today. Only few peoples were able to travel to different places meet different people etc.

The same thing happened to computers as well. When the first computer was invented it was mere a device to perform calculation. Over a period of time it was transformed into a Stand-Alone system. Then came network, followed by internet and world-wide-web. This changed the way computers work, they interact, they collaborate.

Today Human beings are traveling to different places, interacting with different cultures, learning / adapting different environments. We are able to communicate with other cultures, peoples without any boundary or restriction. In a nutshell human intelligence has increased.

Then the question which we need to ask here is what does computers do? They perform our day-to-day tasks. They perform tasks on our behalf.

So for them to keep doing what they were designed for (i.e. performing tasks on behalf of human being), their intelligence level has to be increased. This is not an option anymore. It has to be done otherwise computers will not be able to meet their primary objectives.

The human intelligence has increased, computers intelligence has to be increased. Computer need to understand the human way of interpreting the data, understanding the data. Unless we put this sort of intelligence in computes they will not be able to perform the job on our behalf.

Linking back to one of my earlier post about Semantics, Its the study that relates to signs of things in this world. This is the way we human beings operate. If we make the computers understand the way we do, they can definitely perform the kind of tasks we do.

At the end in my opinion, Semantics is not just another buzzword. It is the way the computers are going to understand the things in future. It is more to do with philosophy than the computer science itself.

Until Next Time...:)

Monday, December 11, 2006

Is World Ready for AI?

Last week I was discussing Artificial Intelligence and the Semantic Web (W3C roadmap) with few friends of mine. Every body started to describe the kind of work they are doing and how they see the whole thing will flow in future.

In the middle of this discussion It just strike in my mind, Is the world ready for that kind of sophisticated technology. We are talking about data being located on internet and one can get complete information about where he/she is located on his/her palmtop.

There were few things which came out during the discussion:

1. There is a need of such a technology which can make use of the data stored on array of servers dispersed geographically.

2. There is a requirement for such an agent who can read those data, especially the sensitive data about an individual.

3. There is a requirement of an authentication mechanism where an individual can gain access to his data and provide controlled access to others. It is desirable to have the customization feature based on an individual user or a group of users (boss, friends etc).

4. There is a requirement of an uniform way to represent the data. Here I see XML as a potential solution. Refer to my earlier post Representing Knowledge Using XML where I've put forward a case to use XML as one of the way to represent knowledge (data).

5. There is a requirement of allowing the agents (Agent of user who requests and Agent of user who processes the request) to choose the best possible algorithm for producing the output. But at the same time the room for human intervention should also be there.

The list goes on and on. But at the end when I ask a question is the world today ready for such a sophisticated computing mechanism? Unfortunately the answer I get is we are not there yet. We might have to wait for few more years before we can start seeing these (listed above) being part of normal human being.

Until Next Time... :)

Wednesday, December 06, 2006

Representing Knowledge using XML

Yesterday I was reading a book on XML and structure of a XML document and then suddenly it striked me that, it can be used for representing any kind of data.

1. XML is a metalanguage that allows user to define markup of their document using tags. User can define their own tags and are not bound by the number of pre-defined tags / keywords as in HTML.

2. Nesting of Tags introduces structures. The structure of documents can be controlled using DTDs or Schemas. This can help in verifying the data before it goes for processing.

3. XML separates content and structure from formatting. XML is meant to carry data only and leaves lots of rooms for programs to present it in a different way. Using appropriate XSLs we can generate from an input XML a PDF, CSV, HTML and many other outputs.

4. XML is the de facto standard for the representation of the structured information on the web and supports machine processing information.

5. XML supports the exchange of structured information across different applications through markup, structure and transformations.

6. XML documents can be queried using XML Query language.


While XML has lots of advantages it also has few drawbacks as described below:

1. Nesting of tags does not have standard meaning. They don't always represent the correct structure.

2. The semantics of XML documents is not accessible to machine, to humans only. Machines just parse the XML documents as Child Nodes or Attributes etc. They do not carry any special meaning for machines to understand.

3. Collaboration and exchange are supported if there is an underlying shared understanding of the vocabulary. XML is well-suited for closed collaboration, where domain or community-based vocabularies are used. It is not so well-suited for global communication. As long as the participating organizations use the same schema they can share the XML document or interpret them. There is no such thing as global representation etc.


While the number of benefits appear to be outweighing the drawbacks. I guess still there is lots of work which needs to be done in order to use XML as a way of representing data in a way which can be understood by machines.

A common semantics or grammar is required to do so. What is your opinion?

Until Next Time :)

Tuesday, December 05, 2006

Today's World-Wide Web

The World-Wide Web (or World-Wide Wait) has changed the way we communicate with other human beings and the way business transactions take place in this today's world. While this has changed the way we see the world. It has also changed our perception towards computers.

When computer was invented first it was mere a computing device used for numerical calculation. But since then they've evolved over a period of time and today they are not limited to numerical calculation. Today they are primarily used for information processing, databases, text processing, games, scientific calculations to name a few.

Coming back to WWW, in its current form it contains informations which can be consumed only by human being. No matter whether we look at a static HTML page or a dynamic web page where the information is retrieved from database, they are presented in a form which can be understood only by human beings. They have no significance for machines or computers.

The typical application of today's web includes surfing and browsing for information, making purchases online, connecting to other peoples etc. But if we look at these processes the main thing which comes out of it is, they are all driven by human although there is a software which supports all these activities. But they are limited to things like saving and retrieving data, establishing connections, routing to different webservers, establishing communication with other servers around the globe etc.

But these all have their own limitations and the biggest limitation is they have the pre-defined set of instruction as and how to do. The highly-sophisticated machines cannot decide their own course of action. They cannot process the information on their own.

In next in the series we will discuss what are the problems faced by the Current Web architecture.

Until Next Time.. :)