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

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   RE: [xml-dev] Semantics, Complex Systems, (XSLT) Programs which W rite

[ Lists Home | Date Index | Thread Index ]

Hi Roger,

Roger said:
BTW John, I really liked your paradigm shift on the telephone operator
story.
Can you think of a similar shift with programming?  /Roger

Didier replies:
I think that one similar shift programming paradigm is potentially "adaptive
Object Models". In classical OO environments like java, C++ a class is
specified and instances created from this class. When the program is
running, no way Jose, you can't modify it until the next round of design,
write, compile, debug cycle. Adaptive Object Model environments allow
classes definition to be modified without going through the cycle again.
Said differently, the classes can be modified at run time. 

Yoder and al. (see http://adaptiveobjectmodel.com) used XML as a declarative
programming environment to define these classes. However, XML is not the
permanent storage for these declarations only the expression language. The
permanent storage for these definitions is either stored in relational
tables or as objects in an OO DB. The basic trick is to package the class
definition into an instance and store it as an instance: more precisely, to
make it as flexible as a prototype (as in prototype programming). You can
then add, modify, remove slots or attribute/methods of a particular class. 

This kind of system allows clients to modify themselves the class
definitions or for more formal people, to modify the application's ontology.
This has been used with success in the insurance and telecom industry.

So, when we think of adaptive systems, if our basic entity is an object,
then we can modify
a) its definition or its properties/methods set.
b) the constraints we created between these objects

If end users can modify these elements without the need of a developer or
going through the infernal cycle of design, write, compile, debug, then you
have something similar to what john mentioned.

As an example, in the insurance industry, some object properties are
changing on the basis of events and therefore on potential risks. Events
that occurred rarely in the past may increase because of environmental or
social changes. The end users can add a new property to these classes
without the need of developers. Hence, end users can modify the model or the
ontology.

Some of these systems allow the automatic creation of forms based on the
ontology, a bit like Protégé is doing. Thus, the UI closely follows the
model and is therefore "model driven".

Off course all these techniques are not "mainstream" and are practiced by
few specialists. Nonetheless, the success realized by some applications just
show us that users can be empowered by dynamic tools.

Cheers
Didier PH Martin
http://didier-martin.com







 

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

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