[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Dia-list digest, Vol 1 #802 - 4 msgs



On Mon, 31 Mar 2003 dia-list-request@gnome.org wrote:

> My take on the XML vs. SVG issue: I'd need to see very good reasons to
> change our file format.  XML has worked well so far, there's many documents
> out there in our current format, and there are many programs that work on
> our current format.  If it ain't broke, don't fix it -- especially if it's
> holding up the building.

Actually something that would work very well would be stylesheets - you
could specify things like, colours, fonts, etc without breaking the
current xml.

This would prove very helpful indeed I believe and stick to a nice
seperation of content and presentation (something that seems very alien to
some XML writers *cough*IBM,argouml*cough* .

here is an example of why I dislike argouml's pgml so much :
=============================>
     <group name="Fig1.5"
         description="org.tigris.gef.presentation.FigGroup[40, 78, 146, 19]"
         fill="1"
         fillcolor="-1"
         stroke="1"
         strokecolor="-16777216"
    >
      <private>
      </private>

      <rectangle name="Fig1.5.0"
        x="40"
        y="78"
        width="146"
        height="19"
        fill="1"
        fillcolor="-1"
        stroke="1"
        strokecolor="-16777216"
      />
      <text name="Fig1.5.1"
        x="41"
        y="79"
        fill="0"
        fillcolor="-1"
        stroke="1"
        strokecolor="-16777216"
        font="Dialog"
        textsize="9"
      >get_foo(foo: char)</text>
    </group>

<============================

which is the equivilient to dia's :

============================>

        <dia:composite type="umlattribute">
          <dia:attribute name="name">
            <dia:string>#seqfeature_location_id#</dia:string>
          </dia:attribute>
          <dia:attribute name="type">
            <dia:string>##</dia:string>
          </dia:attribute>
          <dia:attribute name="value">
            <dia:string/>
          </dia:attribute>
          <dia:attribute name="visibility">
            <dia:enum val="2"/>
          </dia:attribute>
          <dia:attribute name="abstract">
            <dia:boolean val="false"/>
          </dia:attribute>
          <dia:attribute name="class_scope">
            <dia:boolean val="false"/>
          </dia:attribute>
        </dia:composite>

<===========================

A few things to note here :
- the dia XML tells me what I need to know
  - its an UML attribute in the dia namespace
  - its visibility, type, etc
- it is very easy to parse
- there isn't loads of graphical cruft about the shape of how the text
should be rendered
- in another piece of pgml there is even a <tag>foo="aaa" bar="bbb"</tag>
in the generalisation tag - yuck! yuck! yuck! why use name=value pairs in
XML for pities sake!

don't get me started on the XMI - its even less pleasent to deal with.

anyways - getting back to the point, if you want cool extra graphical
information in dia, xml use a) stylesheets (it works for HTML) b) a new
namespace that isn't required so 'legacy' xml works fine and legacy
applications can just ignore your graphics.

> And besides, we have more important things to look at right now, like
> improving the UI.  Now that 0.91 is out, we're open for patches.

c'mon c'mon!

where is auto-routing and 'smart lines' ?

I've only been waiting a couple of years for them ;)

(I am giving serious thought to eating^w writing some perl that does dia
layout based on dot or vcg)



-- 
Aaron J Trevena - Perl Hacker, Kung Fu Geek, Internet Consultant
AutoDia --- Automatic UML and HTML Specifications from Perl, C++
and Any Datasource with a Handler.     http://droogs.org/autodia




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] Mail converted by Mofo Magic and the Flying D

 
All trademarks and copyrights are the property of their respective owners.

Other Directory Sites: SeekWonder | Directory Owners Forum

GuideSMACK