Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

TeeJay (2309)

TeeJay
  (email not shown publicly)
http://www.aarontrevena.co.uk/

Working in Truro
Graduate with BSc (Hons) in Computer Systems and Networks
pm : london.pm, bath.pm, devoncornwall.pm
lug : Devon & Cornwall LUG
CPAN : TEEJAY [cpan.org]
irc : TeeJay
skype : hashbangperl
livejournal : hashbangperl [livejournal.com]
flickr :hashbangperl [flickr.com]

Journal of TeeJay (2309)

Monday March 31, 2003
05:13 PM

parsing argouml files

[ #11350 ]
I am still bravely soldiering on in my effort to unite all the worlds open source UML tools with autodia.

My current target is argouml, it has caused me much grief, as you would have noticed if you were subscribed to the dia mailing list

Anyway, seeing how the XMI is fugly:

=================================>
<XMI.content>
<Model_Management.Model xmi.id="xmi.1" xmi.uuid="10-1--127--8-881cb3:f3b940a050:-8000">
<Foundation.Core.ModelElement. name>untitledModel</Foundation.Core.ModelElement.name>
<Foundation.Core.ModelEl ement.isSpecification xmi.value="false"/>
<Foundation.Core.GeneralizableElement.isRoot xmi.value="false"/>
<Foundation.Core.GeneralizableElement.isLeaf xmi.value="false"/>
<Foundation.Core.GeneralizableElement.isAbstract xmi.value="false"/>
<Foundation.Core.Namespace.ownedElement>
<Foundation.Core. Class xmi.id="xmi.2" xmi.uuid="10-1--127--8-881cb3:f3b940a050:-7ffe">
<Foundation.Core.ModelElement. name>ClassB</Foundation.Core.ModelElement.name>
<Foundation.Core.ModelElement.i sSpecification xmi.value="false"/>
<Foundation.Core.GeneralizableElement.isRoot xmi.value="false"/>
<Foundation.Core.GeneralizableElement.isLeaf xmi.value="false"/>
<Foundation.Core.GeneralizableElement.isAbstract xmi.value="false"/>
<============================

and some of the pgml is equally nasty :

=============================>
<group name="Fig2"
       description="org.argouml.uml.diagram.ui.FigGeneralization"
       href="10-1--127--8-881cb3:f3b940a050:-7ffa"
       stroke="1"
       strokecolor="-16777216"
  >
<private>
sourcePortFig="Fig0.0"
      destPortFig="Fig1.0"
      sourceFigNode="Fig0"
      destFigNode="Fig1"
    </private>
<path name="Fig2.1"
      description="org.tigris.gef.presentation.FigPoly"
      fill="0"
      fillcolor="-1"
      stroke="1"
      strokecolor="-16777216"
    >
<moveto x="113"
              y="177" />
<lineto x="113"
              y="97" />
</path>
</group>
<==========================================

ouch! did you see those key pairs - in XML ! why ?

You can see why progress hasn't been fun or fast - I have tried XML::XPath but at the moment XML::EasyOBJ seems to be doing the trick.

Anyway I have made some progress and reckon I will be able to get all the information I need out of arguml by next weekend.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.