[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-kuml-devel
Subject:    KUML and Argo : xml & OCL issues
From:       p_george <p_george () club-internet ! fr>
Date:       2000-02-19 9:52:00
[Download RAW message or body]

Jason Elliot Robbins wrote:
 
> ArgoUML uses IBM's xml4j parser implementation of the SAX API.
> There is also a C++ implementation of this available at
> alphaworks.ibm.com.

I will check it.
 
> To generate XML files, ArgoUML uses a set of textual template files
> and a class called OCLEvaluator.  That name is a bit of wishful
> thinking, we have not implemented a full OCL evaluator, it can only
> handl expressions of the form "self.attribute.attribute... "  This
> kind of evaluation is very easy to implement in Java because of
> introspection.  It may be harder to implment this in C++.
> 
> Actually, working thtough the details of a true OCL evaluator would be
> another great idea for collaboration between ArgoUML and KUML.

OCL is really important but is so complex that I believe we'd better use
OCL as constraints written in natural language or pseudo-code, without
any kind of intelligent engine to use it (for automatic code generation
for example). We already had a short discussion about it on this list.

My first idea is the user writes :

pre-constraints : "i is > 0"

Code generation does :

Class A {
// pre-constraints : "i is > 0"
}

and it is up to the programmer to write something like 

  ASSERT(i>0);

(So he can decide to bail out, show a dialog box, return immediatly ...)

OCL seems so complex to me that I would concentrate first on more
ordinary (and urgent) issues.

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic