OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help



   COLAG Version 2.0

[ Lists Home | Date Index | Thread Index ]

I invite your feedback on second version of COLAG. This includes major 
changes and there is a new document containing examples, illustrating all 
aspects of the technology.

COLAG (Conversation Oriented Learning And Growing software) is an XML based 
environment for writing software with the unique feature that the execution 
logic (behavior) of the running COLAG program can be dynamically changed at 
runtime using XML based messages without any need for re-compilation. COLAG 
software is a collection of XML documents, where each document (called 
'specification file') specifies the data and behavior of an entity (class 
in OOLanguage). An entity instance (similar to 'object') is represented by 
an XML element called its 'instance element', and its data is represented 
by an XML tree called 'instance tree'. COLAG introduces a new concept of 
'global data tree', which refers to a run-time XML tree that will contain 
the instance trees of the instances created at run-time, i.e. instance 
element of an instance will be added to the global tree after its creation. 
The equivalent of a method in  COLAG is called a 'conversation', but unlike 
method, a conversation is capable of 'self-instantiation'. A conversation 
will specify via XPath expression, the nodes in the global tree whose 
update will instantiate it. A conversation will execute by constructing an 
XML tree, called its 'conversation tree', and update the global tree by 
transferring the content from the conversation tree to the global tree, 
which might start other conversations and so on. COLAG  also defines 
concept of a 'message conversation, which will start in response to receipt 
of an appropriate external message, as given by its start condition. An XML 
based message format is also defined in COLAG that can be used to interact 
with instances in a running COLAG program by instantiating their message 
conversations. This can also be used to dynamically introduce new 
conversations or modify/delete existing conversations of the instances, 
there by changing the program logic.

Please refer to the Primer document at colag.com for complete description 
of the technology. Any comments are welcome.
Rahul Jain


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS