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] [OT] Difference between an extensible versus an evolvable

[ Lists Home | Date Index | Thread Index ]

Title: Message
That's good and I agree. 
On the other hand, if we use the biological definition for evolution,
one could say that an XSLT program that makes a mistake when copying
is evolving the input to an output form that may or may not be viable. 
This is similar to alleles.  If one construes copying to be a form of
inheritance, then in the next generation as the mistake is copied into
the next output, the trait is passed on.
The definition of evolution is messy in the scientific senses.  A quick google
reveals the debate.  It's casual use seems to create controversy.

From: Alessandro Triglia [mailto:sandro@mclink.it]
In my opinion, if we refer to interfaces (or languages/syntaxes) rather than, generically, to "information systems", the distinction between evolution and extension becomes clearer and more useful.
My concept of "extensible" interface is that the interface supports certain rigorously-defined extensions to it with the following property:
- an implementation that exposes the base (non-extended) interface B;
- an implementation that exposes an extended interface E1;
- an implementation that exposes another extended interface E2,
a program written to use interface B is guaranteed to work (as expected) when using any of these three implementations, "thinking" that it is using an implementation of interface B.
The same concept of extensibility would also apply to languages/syntaxes.
On the other hand, if an interface or a language "evolves", one cannot expect that the condition above is satisfied (although it could be).
In other words, while I expect to be able to use an extended interface as if it were the corresponding base interface, I don't expect to be able to use an evolved interface as if it were the corresponding unevolved interface.  Same thing for a language/syntax.
I think "evolvability" in this context means simply that an interface or a language can be modified easily, inexpensively, and nicely, in order to meet new requirements - without implying that a user can ignore that there has been a modification.
If we refer to a system, I would say that it is possible for a system to *evolve* while some of its interfaces are simply *extended* (while others evolve).
Alessandro Triglia
-----Original Message-----
From: Bullard, Claude L (Len) [mailto:len.bullard@intergraph.com]
Sent: Wednesday, June 02, 2004 09:23
To: 'Roger L. Costello'; xml-dev@lists.xml.org
Subject: RE: [xml-dev] [OT] Difference between an extensible versus an evolvable information system?

If you define evolution as the accretion of new features, sure.  If you mean adding new
instances of those features, no.  In any layered system, one must be careful to specify
which layer is evolving vs one that is merely accreting.
If you define evolution as 'change' one *might* say this is evolution.  Amazon added categories
so the addition of the categorical function is evolution (a new feature) but adding categories
is extensibility. 
In a biological system, evolution is a feature that is inheritable.  Comparing that to Amazon,
those are not evolution unless adding categories or search to Amazon adds it to any
descendant of Amazon or any system derived from Amazon.   If Amazon cannot have
decendants, it cannot evolve.   In this sense, evolution is an observable process of
populations as they adapt to their environment, shape their environment, and then
adapt to those changes (mediated feedback).    So my question to you is, what
is the equivalent of Amazon.com genes?  Adding categories could mean the
information is evolving, but Amazon evolved only when the categorical function
was added, and then it accretes categories.
My position would be that XML evolution is in the addition or deletion of features
of a schema (at any metalevel one cares to work) because it defines the system.
So one might look at how instances acquire new elements and attributes that are
then added to their schemas as definitions.  For example, aggregation:  why would
one relax constraints such that composite documents become homogenous?
One might do that if working on one product in isolation and fits HTML elements into
say SVG applications.
Is XML an evolution of SGML or simply an adaptation (it lost features, so
maybe it is devolution)?

From: Roger L. Costello [mailto:costello@mitre.org]

Hi Folks,
I am interested in hearing your thoughts on the differences between an information system that is extensible versus an information system that is evolvable.
For example, suppose that Amazon.com gives users the ability to do a keyword search.  Further, suppose that Amazon empowers its users to create new keywords (and map the new keywords to information at the Web site).  Is this support for new keywords an example of extensibility or evolution?  By adding new keywords has Amazon merely been extended, or has it evolved? 
Let's take another example.  Suppose that Amazon gives users the ability to search by book category (e.g., Fiction, Non-Fiction, etc.)  Further, suppose that Amazon empowers its users to create new categories (and map the categories to information at the Web site).  Is this support for new categories an example of extensibility or evolution?  By adding new categories has Amazon merely been extended, or has it evolved?
If adding new keywords and adding new categories are merely examples of extension, then can you give an example of evolution?   /Roger


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

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