comp.lang.ada
 help / color / mirror / Atom feed
* ANNOUNCE: Avatox 1.8 is now available
@ 2007-09-01  1:10 Marc A. Criley
  2007-09-01  7:46 ` Martin Krischik
  0 siblings, 1 reply; 7+ messages in thread
From: Marc A. Criley @ 2007-09-01  1:10 UTC (permalink / raw)


Avatox (Ada, Via Asis, To Xml) is an application that traverses Ada 
compilation units and outputs their ASIS representation(s) as XML 
document(s) in the Avatox XML Format, AXF, file extension "axf". The 
format of the XML in the document can be configured, and supplemental 
source annotations can be generated.

Changes since version 1.7:
- Fixed a problem with private parts of various kinds of units not being
   recognized as private.

- Fixed a letter casing problem with rep specs.

- Numerous upgrades to the AXF2Ada stylesheet.

In this release is the in-work version of axf2ada.xsl, an XSLT 
stylesheet that converts AXF into Ada source code. It is a work in 
progress, and currently can regenerate the Avatox and DTraq dtqserver 
source code from their AXF representations. For more information about 
axf2ada, see the Avatox web page.

Avatox 1.8 is available at www.mckae.com/avatox.html.

-- Marc A. Criley
-- McKae Technologies
-- www.mckae.com
-- Avatox - DTraq - XIA - XML EZ



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: ANNOUNCE: Avatox 1.8 is now available
  2007-09-01  1:10 ANNOUNCE: Avatox 1.8 is now available Marc A. Criley
@ 2007-09-01  7:46 ` Martin Krischik
  2007-09-01 12:43   ` Marc A. Criley
  2007-09-04 17:57   ` vgodunko
  0 siblings, 2 replies; 7+ messages in thread
From: Martin Krischik @ 2007-09-01  7:46 UTC (permalink / raw)


Marc A. Criley wrote:

> Avatox (Ada, Via Asis, To Xml) is an application that traverses Ada
> compilation units and outputs their ASIS representation(s) as XML
> document(s) in the Avatox XML Format, AXF, file extension "axf". The
> format of the XML in the document can be configured, and supplemental
> source annotations can be generated.

Interesting - I still wonder why not XMI - With XMI we could feed the output
into tools like umbrello [2] which would be the first step towards an Ada
UML tool with round trip engineering.

Apart from the Rational Rose / Rational APEX combo - But Rational Rose is
dead, Rational APEX on live support and both to expensive for hobby use.

Martin

[1] http://www.omg.org/technology/documents/formal/xmi.htm
[2] http://uml.sourceforge.net/index.php

Martin
-- 
mailto://krischik@users.sourceforge.net
Ada programming at: http://ada.krischik.com



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: ANNOUNCE: Avatox 1.8 is now available
  2007-09-01  7:46 ` Martin Krischik
@ 2007-09-01 12:43   ` Marc A. Criley
  2007-09-01 15:10     ` Martin Krischik
  2007-09-04 17:57   ` vgodunko
  1 sibling, 1 reply; 7+ messages in thread
From: Marc A. Criley @ 2007-09-01 12:43 UTC (permalink / raw)


Martin Krischik wrote:
> Marc A. Criley wrote:
> 
>> Avatox (Ada, Via Asis, To Xml) is an application that traverses Ada
>> compilation units and outputs their ASIS representation(s) as XML
>> document(s) in the Avatox XML Format, AXF, file extension "axf". The
>> format of the XML in the document can be configured, and supplemental
>> source annotations can be generated.
> 
> Interesting - I still wonder why not XMI - With XMI we could feed the output
> into tools like umbrello [2] which would be the first step towards an Ada
> UML tool with round trip engineering.

That's a fair question.

AXF is seen as a first step--First let's get the Ada into a more 
malleable form that can be processed by XML tools and technologies. 
Then it becomes more amenable to content extract and transformation, 
with Avatox generating "AXFPoint" (AXF Points Of INformation for 
Transformation) elements to to assist with transformations by providing 
information beyond that of the basic ASIS-derived semantic information.

In other words, AXF -> UMI would be easier than Ada -> UMI because 
you've lessened the "impedance mismatch" between the source and target. 
  In addition, if you want to change the way Ada constructs are mapped 
to UMI (or any other target), or if you need to adapt to a revised UMI, 
it's almost always going to be much simpler to alter an XML 
processor--especially if it's stylesheet based--than the Ada-to-XML 
generator.

-- Marc A. Criley
-- McKae Technologies
-- www.mckae.com
-- Avatox - DTraq - XIA - XML EZ Out



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: ANNOUNCE: Avatox 1.8 is now available
  2007-09-01 12:43   ` Marc A. Criley
@ 2007-09-01 15:10     ` Martin Krischik
  2007-09-01 20:33       ` Marc A. Criley
  0 siblings, 1 reply; 7+ messages in thread
From: Martin Krischik @ 2007-09-01 15:10 UTC (permalink / raw)


Marc A. Criley wrote:

> Martin Krischik wrote:
>> Marc A. Criley wrote:
>> 
>>> Avatox (Ada, Via Asis, To Xml) is an application that traverses Ada
>>> compilation units and outputs their ASIS representation(s) as XML
>>> document(s) in the Avatox XML Format, AXF, file extension "axf". The
>>> format of the XML in the document can be configured, and supplemental
>>> source annotations can be generated.
>> 
>> Interesting - I still wonder why not XMI - With XMI we could feed the
>> output into tools like umbrello [2] which would be the first step towards
>> an Ada UML tool with round trip engineering.
> 
> That's a fair question.
> 
> AXF is seen as a first step--First let's get the Ada into a more
> malleable form that can be processed by XML tools and technologies.
> Then it becomes more amenable to content extract and transformation,
> with Avatox generating "AXFPoint" (AXF Points Of INformation for
> Transformation) elements to to assist with transformations by providing
> information beyond that of the basic ASIS-derived semantic information.
> 
> In other words, AXF -> UMI would be easier than Ada -> UMI because
> you've lessened the "impedance mismatch" between the source and target.
>   In addition, if you want to change the way Ada constructs are mapped
> to UMI (or any other target), or if you need to adapt to a revised UMI,
> it's almost always going to be much simpler to alter an XML
> processor--especially if it's stylesheet based--than the Ada-to-XML
> generator.

So:

.adb ==Avatox==> .axf ==XXX==> .xmi ==xmi2code==> .adb

is easier then 

.adb ==Avatox==> .xmi ==xmi2code=> .adb

Only we would need XXX ;-).

Martin

xmi2code: http://xmi2code.sourceforge.net/
-- 
mailto://krischik@users.sourceforge.net
Ada programming at: http://ada.krischik.com



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: ANNOUNCE: Avatox 1.8 is now available
  2007-09-01 15:10     ` Martin Krischik
@ 2007-09-01 20:33       ` Marc A. Criley
  2007-09-02  0:15         ` Jeffrey Creem
  0 siblings, 1 reply; 7+ messages in thread
From: Marc A. Criley @ 2007-09-01 20:33 UTC (permalink / raw)


Martin Krischik wrote:
> Marc A. Criley wrote:
> 
>> AXF is seen as a first step--First let's get the Ada into a more
>> malleable form that can be processed by XML tools and technologies.
>> Then it becomes more amenable to content extract and transformation,
>> with Avatox generating "AXFPoint" (AXF Points Of INformation for
>> Transformation) elements to to assist with transformations by providing
>> information beyond that of the basic ASIS-derived semantic information.
>>
>> In other words, AXF -> UMI would be easier than Ada -> UMI because
>> you've lessened the "impedance mismatch" between the source and target.
>>   In addition, if you want to change the way Ada constructs are mapped
>> to UMI (or any other target), or if you need to adapt to a revised UMI,
>> it's almost always going to be much simpler to alter an XML
>> processor--especially if it's stylesheet based--than the Ada-to-XML
>> generator.
> 
> So:
> 
> .adb ==Avatox==> .axf ==XXX==> .xmi ==xmi2code==> .adb
> 
> is easier then 
> 
> .adb ==Avatox==> .xmi ==xmi2code=> .adb

Actually, yes :-)

The reason is that adb => AXF is an almost mechanical translation, AXF 
being an XML representation of the ASIS-derived structure of the source 
program. And not least, Avatox is pretty much done.

Going directly from Ada to XMI, however, is a much more analytical 
problem, requiring the mapping of Ada constructs to XMI equivalents. 
And from what I've experienced with Source Code 2 Design Model 
converters (for any language) they don't do a great job.  I mean, what 
comes out is a pretty prosaic representation of the _code_ as UML (or 
whatever) artifacts.  You would not have diagrammed the system this way, 
and to try to employ some higher level intelligence in the converter to 
recognize programming idioms and abstractions and then map _those_ to 
"better" XMI requires a lot more work (and the fact that I don't see it 
in commercial tools tells me that it requires a LOT more work).  Also, 
AXF retains _all_ the information in the original source, including 
comments, line/column extents (which gives you the original whitespace), 
etc.  Going from source code to model you tend to start omitting things 
because of the differing levels of abstraction.

> Only we would need XXX ;-).

Yes, which could be built incrementally.  Instead of trying to go 
straight from AXF (or Ada source) to XMI, you can do some filtering, 
some simple transformations, some more filtering, some pattern 
recognition, some transformations, and eventually end up with XMI.

In this case you then have:

   .adb ==[Avatox+AXF2XMI]==> .xmi ==xmi2code=> .adb

And there you go!  Have at it!  :-)

-- Marc A. Criley
-- McKae Technologies
-- www.mckae.com
-- Avatox - DTraq - XIA - XML EZ Out



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: ANNOUNCE: Avatox 1.8 is now available
  2007-09-01 20:33       ` Marc A. Criley
@ 2007-09-02  0:15         ` Jeffrey Creem
  0 siblings, 0 replies; 7+ messages in thread
From: Jeffrey Creem @ 2007-09-02  0:15 UTC (permalink / raw)


Marc A. Criley wrote:
>> Martin Krischik wrote: 
>> So:
>>
>> .adb ==Avatox==> .axf ==XXX==> .xmi ==xmi2code==> .adb
>>
>> is easier then
>> .adb ==Avatox==> .xmi ==xmi2code=> .adb
> 
> Actually, yes :-)
> 
> The reason is that adb => AXF is an almost mechanical translation, AXF 
> being an XML representation of the ASIS-derived structure of the source 
> program. And not least, Avatox is pretty much done.

And in the end, the "pretty much done" is one of the more important things!

It's open source. People do what they think is interesting or fun.
Avatox is an interesting project but not (largely) useful for the xmi 
crowd. Heck, I wish it would create XML that described data types such 
that it would allow for an easy XSL-FO creation of an interface design 
document. The fact that it does not do this does not take away from its 
current job and even if it did XMI, it would not help with what I want.

Wait till I create a few of my silly little ASIS projects. Then you will 
really have something to point at :)



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: ANNOUNCE: Avatox 1.8 is now available
  2007-09-01  7:46 ` Martin Krischik
  2007-09-01 12:43   ` Marc A. Criley
@ 2007-09-04 17:57   ` vgodunko
  1 sibling, 0 replies; 7+ messages in thread
From: vgodunko @ 2007-09-04 17:57 UTC (permalink / raw)


On 1     , 11:46, Martin Krischik <krisc...@users.sourceforge.net>
wrote:
>
> Interesting - I still wonder why not XMI - With XMI we could feed the output
> into tools like umbrello [2] which would be the first step towards an Ada
> UML tool with round trip engineering.
>
What do you mean by XMI?

XMI - XML Metadata Interchange - like XML is information independent
format. XML consists from tags, attributes etc; XMI - from class
instances and object's properties values. Structure of XML docement
may be defined by schema, XMI document _requires_ its metamodel. UML
is just a metamodel for data intrchange in XMI format, another
wellknown example is UML DI - metamodel for UML diagram
interchange. ;-)

So, if you want to represent Ada program as XMI document you need
first to have Ada language metamodel. Development of such metamodel is
a very complex task, but this metamodel may be reused in many tools
from IDE syntax highliter and semantic navigation to MDA
transformations.




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2007-09-04 17:57 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-09-01  1:10 ANNOUNCE: Avatox 1.8 is now available Marc A. Criley
2007-09-01  7:46 ` Martin Krischik
2007-09-01 12:43   ` Marc A. Criley
2007-09-01 15:10     ` Martin Krischik
2007-09-01 20:33       ` Marc A. Criley
2007-09-02  0:15         ` Jeffrey Creem
2007-09-04 17:57   ` vgodunko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox