We started to refactor ArchGenXML -> Version 3 (complete posting)

22 messages Options
Embed this post
Permalink
1 2
Jens W. klein-2 () We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
Hi all AGX contributors and users out there,

we started ArchGenXML 3. A dream we dreamded for a while is to refactor
the core of AGX.

At the moment AGX is a huge code monster. If you look at the main class,
the ArchetypesGenerator, you'll see 4487 lines of code in one file and
almost in one class. This is anti-architecture. We have procedural
programming by using a class. Also the file does much more than just
dealing with archetypes.

Meanwhile we had lots of improvements. AGX started 2003 and it wont die
in future. I'am sure we will have in some years a 10 year party! But now
its time to make AGX modular. I know some guy from Django a while ago
created a branch for Django code generation. I dont know how useful it
is, but I also know: Its not easy. And also its impossible to do so on
one code-base. It not our primary goal to support django. But our goal is
to make AGX pluggable. And so we may support more (or less!) than Plone
in future.

So whats the plan?
     I. We build upon the ZCA and so the Zope Framework and depend on
        Python 2.5 or 2.6 for AGX;
    II. we want to have a simple core without any logic what is
        generated. Then we want to have a chain of small specialized
        generators. Each generator is a separate package (egg);
   III. a generator consists of several handlers for specific tasks.
    IV. we will start with the following chain:
             1. egg-generator,
             2. archetypes generator
             3. gsprofile generator
             4. dcworkflow generator.
     V. we will have a new more explicit style of uml model. We extend
        the usage of stereotypes.
    VI. the registration of stereotypes and tagged values will be in
        ZCML.
   VII. no more configuration on the command-line, except 1) input file,
        2) output-file 3) debug info/postmortem debugging. Everything
        else will be configured inside the model as tagged value (this
        is already possible in current AGX 2),
  VIII. we target at Plone 3.2+ and later on Plone 4,
    IX. we skip features rarely used or with just historical background.
        If we identify that those are needed we can put them back again.
     X. AGX 2 will be active for a while, since we need it to keep our
        current generated projects alive.

We started with the code. Currently Robert and I did a bunch of stub
work and research. The current code is available at
http://dev.plone.org/archetypes/browser/AGX

And last but not least: Like in past any help is very appreciated!
Contact me (jensens) or Robert (rnix) at IRC (#plone, OPN/freenode) for
more info on how you can help.

Best regards
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Encolpe Degoute-2 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
Hello Jens and Robert,

I am back for some AGX development.
I tried out both agx 2.0 and agx 3.0 buildouts and it
always fails on the zc.recipe.testrunner version:

(agx3.0)encolpe@gosseyn:~/.virtualenvs/agx3.0$ bin/buildout
Develop: '/home/encolpe/.virtualenvs/agx3.0/src/archgenxml'
Develop: '/home/encolpe/.virtualenvs/agx3.0/src/agx.generator.pyegg'
Develop: '/home/encolpe/.virtualenvs/agx3.0/src/agx.generator.gsprofile'
Develop: '/home/encolpe/.virtualenvs/agx3.0/src/agx.generator.archetypes'
Develop: '/home/encolpe/.virtualenvs/agx3.0/src/agx.generator.dcworkflow'
Develop: '/home/encolpe/.virtualenvs/agx3.0/src/xmiparser'
While:
  Installing.
  Getting section testxmiparser.
  Initializing section testxmiparser.
  Installing recipe zc.recipe.testrunner.
Error: There is a version conflict.
We already have: zope.testing 3.5.1
but zc.recipe.testrunner 1.1.0 requires 'zope.testing>=3.6.0'.

I fixed this bug adding these lines in the buildout.cfg:
versions = versions

[versions]
zc.recipe.testrunner = 1.0



PS: IRC and gmane are filtered where I'm working: I will
    not be able to follow the real time discussions
--
Encolpe Degoute
INGENIWEB (TM) - S.A.S 50000 Euros - RC B 438 725 632
Bureaux de la Colline
1 rue Royal
92210 Saint Cloud
web : www.ingeniweb.com - « les Services Web Ingénieux »
Tel : 01.78.15.24.08 / Fax : 01 47 57 39 14


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Martin Aspeli () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
Jens W. Klein wrote:

> And last but not least: Like in past any help is very appreciated!
> Contact me (jensens) or Robert (rnix) at IRC (#plone, OPN/freenode) for
> more info on how you can help.

This is great news! Thanks for picking this up - it is long overdue, and
not a small task!

Could we maybe rename it? Once upon a time, we called this 'genesis'.
What happened to that? :) ArchGenXML is a pretty terrible name, because
(a) it doesn't generate XML, it reads XML and (b) it doesn't work only
with Archetypes. If we're no longer calling it 'genesis', how about just
using the well-known acronym, 'AGX'?

Also, I am very interested in having this stuff work with non-Archetypes
(Zope 3 style) content and other schemata. That basically means we need
to be able to describe a schema using zope.schema.

I've created a package called plone.supermodel which can do two-way
(read/write) XML representations of an interface with zope.schema
fields. This is used in Dexterity to support certain use cases. One of
those uses cases was always meant to be code generation. If you have an
XML file called myschema.xml, then you can do:

  from plone.supermodel import xml_schema
  IMySchema = xml_schema('mymodel.xml')

There's also a grokker to make for a slightly more natural looking
syntax with the option of overriding fields that are in the XML file
with more specific Python code:

  from plone.directives import form

  class IMySchema(form.Schema):
      form.model('mymodel.xml')

In either case, the fields of 'myschema.xml' will be added to the
IMySchema interface. The XML representation is very similar to the way
you'd write zope.schema fields in Python. However, if we keep it in XML
all the way, we have a chance of round-trip editing. In fact, it ought
to be possible to use XSLT to do some of the heavy lifting.

The point of all this is that zope.schema is the de-facto way to
describe any "schema" *except*, of course, Archetypes schemata. For
example, using the newly-developed plone.app.memberschema (which builds
on ore.member), you can get custom member preferences forms and custom
member schemata based on zope.schema easily. I also hope that the very
new plone.registry will evolve into something of a standard place to
store configuration settings, and again it descries its records using
zope.schema.

Thus, I think that this AGX replacement needs to think of zope.schema as
the canonical schema, and AT schemata as the special case, in order to
be future proof and support multiple outputs. zope.schema is very
flexible, so I'd even consider using it in internal data structures
rather than invent a custom schema format if you require something
implementation-agnostic. Creating new field types, for instance, is very
easy.

Cheers,
Martin

--
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Jens W. klein-2 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
Am Mon, 09 Mar 2009 09:17:35 +0900 schrieb Martin Aspeli:

> Jens W. Klein wrote:
>
>> And last but not least: Like in past any help is very appreciated!
>> Contact me (jensens) or Robert (rnix) at IRC (#plone, OPN/freenode) for
>> more info on how you can help.
>
> This is great news! Thanks for picking this up - it is long overdue, and
> not a small task!

Indeed, but we start with manageable amount of work. After this first
step AGX will evolve, then we may refactor agian. Important is to chnage
the architecture - and keep it simple.
 
> Could we maybe rename it?

No. And a deny any naming discussion. I better put my energy in
developing AGX than in renaming it.

> Once upon a time, we called this 'genesis'.

Genesis was a complete different idea: Genesis followed the idea of model-
tranformation.

> What happened to that?

Indeed a good question with a simple answer: It was too complex. A
project doesnt make much sense if an average programmer needs 3 weeks to
read about concepts of model-tranformation and into frameworks used (even
if Coral is still a very good base).

> :) ArchGenXML is a pretty terrible name, because
> (a) it doesn't generate XML, it reads XML and (b) it doesn't work only
> with Archetypes. If we're no longer calling it 'genesis', how about just
> using the well-known acronym, 'AGX'?

The official name will be still ArchGenXML and we will use as often as
possible the acronym AGX (so done already in Archetypes SVN). Also the
namespace for eggs is archgenxml for the core and agx.* for all addons,
such as the generators.

> Also, I am very interested in having this stuff work with non-Archetypes
> (Zope 3 style) content and other schemata. That basically means we need
> to be able to describe a schema using zope.schema.

Exact. After the refactoring settled down the goal is to exchange the
archetypes generator or the other generators. For 3.0 our goal is to make
it work again, prepared for changes. In 3.1 then we may have it fully
pluggable.

> I've created a package called plone.supermodel which can do two-way
> (read/write) XML representations of an interface with zope.schema
> fields. This is used in Dexterity to support certain use cases. One of
> those uses cases was always meant to be code generation. If you have an
> XML file called myschema.xml, then you can do:

[.. details ...]

> The point of all this is that zope.schema is the de-facto way to
> describe any "schema" *except*, of course, Archetypes schemata. For

Indeed.

> example, using the newly-developed plone.app.memberschema (which builds
> on ore.member), you can get custom member preferences forms and custom
> member schemata based on zope.schema easily. I also hope that the very
> new plone.registry will evolve into something of a standard place to
> store configuration settings, and again it descries its records using
> zope.schema.

Sounds good.
 
> Thus, I think that this AGX replacement needs to think of zope.schema as

I dont think its an AGX replacement. AGX deals with having a graphical UI
(UML) to visualize complex structures and to lower the barrier for non-
programmers. As far as I understand Supermodel is more about having a XML
and maybe TTW experience for single flat datastructures.

Greetz, Jens
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Mike Metcalfe () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
This is great news. In a previous life, I did some code generation and found the Bridge design pattern to be very useful when generating to multiple languages. "Decouple an abstraction from its implementation so that the two can vary independently". This makes adding another destination at a later stage very simple.

2009/3/8 Jens W. Klein <[hidden email]>
Hi all AGX contributors and users out there,

we started ArchGenXML 3. A dream we dreamded for a while is to refactor
the core of AGX.

At the moment AGX is a huge code monster. If you look at the main class,
the ArchetypesGenerator, you'll see 4487 lines of code in one file and
almost in one class. This is anti-architecture. We have procedural
programming by using a class. Also the file does much more than just
dealing with archetypes.

Meanwhile we had lots of improvements. AGX started 2003 and it wont die
in future. I'am sure we will have in some years a 10 year party! But now
its time to make AGX modular. I know some guy from Django a while ago
created a branch for Django code generation. I dont know how useful it
is, but I also know: Its not easy. And also its impossible to do so on
one code-base. It not our primary goal to support django. But our goal is
to make AGX pluggable. And so we may support more (or less!) than Plone
in future.

So whats the plan?
    I. We build upon the ZCA and so the Zope Framework and depend on
       Python 2.5 or 2.6 for AGX;
   II. we want to have a simple core without any logic what is
       generated. Then we want to have a chain of small specialized
       generators. Each generator is a separate package (egg);
  III. a generator consists of several handlers for specific tasks.
   IV. we will start with the following chain:
            1. egg-generator,
            2. archetypes generator
            3. gsprofile generator
            4. dcworkflow generator.
    V. we will have a new more explicit style of uml model. We extend
       the usage of stereotypes.
   VI. the registration of stereotypes and tagged values will be in
       ZCML.
  VII. no more configuration on the command-line, except 1) input file,
       2) output-file 3) debug info/postmortem debugging. Everything
       else will be configured inside the model as tagged value (this
       is already possible in current AGX 2),
 VIII. we target at Plone 3.2+ and later on Plone 4,
   IX. we skip features rarely used or with just historical background.
       If we identify that those are needed we can put them back again.
    X. AGX 2 will be active for a while, since we need it to keep our
       current generated projects alive.

We started with the code. Currently Robert and I did a bunch of stub
work and research. The current code is available at
http://dev.plone.org/archetypes/browser/AGX

And last but not least: Like in past any help is very appreciated!
Contact me (jensens) or Robert (rnix) at IRC (#plone, OPN/freenode) for
more info on how you can help.

Best regards
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Raphael Ritz () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
Jens W. Klein wrote:
> Hi all AGX contributors and users out there,
>
> we started ArchGenXML 3. A dream we dreamded for a while is to refactor
> the core of AGX.

This is great news indeed.
Good luck with that!

[..]

> So whats the plan?
>      I. We build upon the ZCA and so the Zope Framework and depend on
>         Python 2.5 or 2.6 for AGX;
>     II. we want to have a simple core without any logic what is
>         generated. Then we want to have a chain of small specialized
>         generators. Each generator is a separate package (egg);
>    III. a generator consists of several handlers for specific tasks.
>     IV. we will start with the following chain:
>              1. egg-generator,
>              2. archetypes generator

Maybe this could be split into an "at schema" generator and
an "at content type/class" generator? (see also Martin's remarks)

Just a thought,

        Raphael


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Vincent Fretin () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
Hi,

This is great news.
I will try to participate in the development of AGX 3 too.

Cheers,
--
Vincent Fretin

------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Jens W. klein-2 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Raphael Ritz
Am Mon, 09 Mar 2009 10:21:00 +0100 schrieb Raphael Ritz:
[..]
>>     IV. we will start with the following chain:
>>              1. egg-generator,
>>              2. archetypes generator
>
> Maybe this could be split into an "at schema" generator and an "at
> content type/class" generator? (see also Martin's remarks)
>

We will have different handlers for schema and class, so i.e.
at.schemaextender support is muche asier to implenment than it is now.

regards
Jens
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Jens W. klein-2 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Vincent Fretin
Am Mon, 09 Mar 2009 10:38:37 +0100 schrieb Vincent Fretin:

> Hi,
>
> This is great news.
> I will try to participate in the development of AGX 3 too.

Great, what do you want to start with? ;-)

regards Jens
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Martin Aspeli () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
Jens W. Klein wrote:

>> Could we maybe rename it?
>
> No. And a deny any naming discussion. I better put my energy in
> developing AGX than in renaming it.

I think that's disappointing, but oh well.

>> Thus, I think that this AGX replacement needs to think of zope.schema as
>
> I dont think its an AGX replacement. AGX deals with having a graphical UI
> (UML) to visualize complex structures and to lower the barrier for non-
> programmers. As far as I understand Supermodel is more about having a XML
> and maybe TTW experience for single flat datastructures.

You misunderstood me: "this AGX replacement" was referring to the thing
you're building. I would sugget that if you need an internal
representation of a 'schema', you base it on zope.schema. And if you
need some way to do two-way XML representations of such a schema,
plone.supermodel has handlers that takes care of that.

Note that plone.supermodel has nothing to do with TTW. It's just a
serialiser/de-serialiser for zope.schema type schemata.

Martin

--
Author of `Professional Plone Development`, a book for developers who
want to work with Plone. See http://martinaspeli.net/plone-book


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Jens W. klein-2 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
Am Mon, 09 Mar 2009 19:35:03 +0900 schrieb Martin Aspeli:

> Jens W. Klein wrote:
[..]

>>> Thus, I think that this AGX replacement needs to think of zope.schema
>>> as
>>
>> I dont think its an AGX replacement. AGX deals with having a graphical
>> UI (UML) to visualize complex structures and to lower the barrier for
>> non- programmers. As far as I understand Supermodel is more about
>> having a XML and maybe TTW experience for single flat datastructures.
>
> You misunderstood me: "this AGX replacement" was referring to the thing
> you're building. I would sugget that if you need an internal
> representation of a 'schema', you base it on zope.schema. And if you

Ah got it, yes, a misunderstanding.

> need some way to do two-way XML representations of such a schema,
> plone.supermodel has handlers that takes care of that.

ok, so we just need to generate some xml.

> Note that plone.supermodel has nothing to do with TTW. It's just a
> serialiser/de-serialiser for zope.schema type schemata.

Ah, I just confused with some dexterity use-case. Sorry for not reading
carefully.

By dropping archetypes generator by something different in a later step
and including a different generator here we'd be able to support
supermodel.

And for more complex structures we can do the same for devilstick!

Jens
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Derek Broughton-3 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
Jens W. Klein wrote:

>    VII. no more configuration on the command-line, except 1) input file,
>         2) output-file 3) debug info/postmortem debugging. Everything
>         else will be configured inside the model as tagged value (this
>         is already possible in current AGX 2),

Then why do we now have to specify "-p" to tell it where to find the AGX
profile - which the model seems to already contain.

>   VIII. we target at Plone 3.2+ and later on Plone 4,
>     IX. we skip features rarely used or with just historical background.
>         If we identify that those are needed we can put them back again.

Oh dear...

--
derek


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Derek Broughton-3 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Martin Aspeli
Martin Aspeli wrote:

> Also, I am very interested in having this stuff work with non-Archetypes
> (Zope 3 style) content and other schemata. That basically means we need
> to be able to describe a schema using zope.schema.

Amen to that!  Since I learned Plone Development from Martin, and UML design
from Archgenxml (sort of reverse-engineering), I really want that
integration.

--
derek


------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Jens W. klein-2 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Derek Broughton-3
Am Mon, 09 Mar 2009 14:58:50 -0300 schrieb Derek Broughton:

> Jens W. Klein wrote:
>
>>    VII. no more configuration on the command-line, except 1) input
>>    file,
>>         2) output-file 3) debug info/postmortem debugging. Everything
>>         else will be configured inside the model as tagged value (this
>>         is already possible in current AGX 2),
>
> Then why do we now have to specify "-p" to tell it where to find the AGX
> profile - which the model seems to already contain.

well, I'am not maintainer of argouml. archgenxml does not need the
profile, its defines and contains it (already in 2.x)

>
>>   VIII. we target at Plone 3.2+ and later on Plone 4,
>>     IX. we skip features rarely used or with just historical
>>     background.
>>         If we identify that those are needed we can put them back
>>         again.
>
> Oh dear...

?

regards Jens
--
Jens W. Klein, BlueDynamics Alliance, http://bluedynamics.com


------------------------------------------------------------------------------
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Vincent Fretin () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Derek Broughton-3
On Mon, Mar 9, 2009 at 6:58 PM, Derek Broughton <[hidden email]> wrote:
> Jens W. Klein wrote:
>
>>    VII. no more configuration on the command-line, except 1) input file,
>>         2) output-file 3) debug info/postmortem debugging. Everything
>>         else will be configured inside the model as tagged value (this
>>         is already possible in current AGX 2),
>
> Then why do we now have to specify "-p" to tell it where to find the AGX
> profile - which the model seems to already contain.
With xmiparser trunk, you don't have to specify the -p option anymore.
We should do a new release of xmiparser. Jens, can you add me as owner
of xmiparser and archgenxml on pypi please? My login is vincentfretin.

--
Vincent Fretin

------------------------------------------------------------------------------
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Vincent Fretin () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
On Tue, Mar 10, 2009 at 9:40 AM, Jens W. Klein <[hidden email]> wrote:

> Am Mon, 09 Mar 2009 14:58:50 -0300 schrieb Derek Broughton:
>
>> Jens W. Klein wrote:
>>
>>>    VII. no more configuration on the command-line, except 1) input
>>>    file,
>>>         2) output-file 3) debug info/postmortem debugging. Everything
>>>         else will be configured inside the model as tagged value (this
>>>         is already possible in current AGX 2),
>>
>> Then why do we now have to specify "-p" to tell it where to find the AGX
>> profile - which the model seems to already contain.
>
> well, I'am not maintainer of argouml. archgenxml does not need the
> profile, its defines and contains it (already in 2.x)
If you create a model with ArgoUML >= 0.26.2 with the
archgenxml_profile.xmi, then the xmi of your model will reference the
archgenxml_profile.xmi file with
xmi.href="archgenxml_profile.xmi#UUID", instead of xmi.idref="UUID".
So archgenxml, more precisely xmiparser, need to know where to find
the archgenxml_profile.xmi file. In agx 2.4/xmiparser 1.3, you need to
specify -p option to specify the profile directory.
In agx 2.4/xmiparser trunk, if you don't specify the -p option, it
will read the ~/.argouml/argo.user.properties file for profiles
directories to search archgenxml_profile.xmi.

--
Vincent Fretin

------------------------------------------------------------------------------
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Vincent Fretin () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
On Tue, Mar 10, 2009 at 10:33 AM, Vincent Fretin
<[hidden email]> wrote:

> On Tue, Mar 10, 2009 at 9:40 AM, Jens W. Klein <[hidden email]> wrote:
>> Am Mon, 09 Mar 2009 14:58:50 -0300 schrieb Derek Broughton:
>>
>>> Jens W. Klein wrote:
>>>
>>>>    VII. no more configuration on the command-line, except 1) input
>>>>    file,
>>>>         2) output-file 3) debug info/postmortem debugging. Everything
>>>>         else will be configured inside the model as tagged value (this
>>>>         is already possible in current AGX 2),
>>>
>>> Then why do we now have to specify "-p" to tell it where to find the AGX
>>> profile - which the model seems to already contain.
>>
>> well, I'am not maintainer of argouml. archgenxml does not need the
>> profile, its defines and contains it (already in 2.x)
> If you create a model with ArgoUML >= 0.26.2 with the
> archgenxml_profile.xmi, then the xmi of your model will reference the
> archgenxml_profile.xmi file with
> xmi.href="archgenxml_profile.xmi#UUID", instead of xmi.idref="UUID".
> So archgenxml, more precisely xmiparser, need to know where to find
> the archgenxml_profile.xmi file. In agx 2.4/xmiparser 1.3, you need to
> specify -p option to specify the profile directory.
> In agx 2.4/xmiparser trunk, if you don't specify the -p option, it
> will read the ~/.argouml/argo.user.properties file for profiles
> directories to search archgenxml_profile.xmi.

It's agx 2.3 sorry.
We should do a release of xmiparser 1.4 with r80432, so user don't
need to use the -p option when modeling with ArgoUML >= 0.26.2. I'm
volunteer to do the release on pypi if I have upload access.

--
Vincent Fretin

------------------------------------------------------------------------------
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Robert Niederreiter () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Vincent Fretin
Hi,

Am Dienstag, den 10.03.2009, 10:20 +0100 schrieb Vincent Fretin:

> On Mon, Mar 9, 2009 at 6:58 PM, Derek Broughton <[hidden email]> wrote:
> > Jens W. Klein wrote:
> >
> >>    VII. no more configuration on the command-line, except 1) input file,
> >>         2) output-file 3) debug info/postmortem debugging. Everything
> >>         else will be configured inside the model as tagged value (this
> >>         is already possible in current AGX 2),
> >
> > Then why do we now have to specify "-p" to tell it where to find the AGX
> > profile - which the model seems to already contain.
> With xmiparser trunk, you don't have to specify the -p option anymore.
> We should do a new release of xmiparser. Jens, can you add me as owner
> of xmiparser and archgenxml on pypi please? My login is vincentfretin.
Done.

cheers, Robert




------------------------------------------------------------------------------
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Derek Broughton-3 () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Vincent Fretin
Vincent Fretin wrote:

> On Tue, Mar 10, 2009 at 10:33 AM, Vincent Fretin
> <[hidden email]> wrote:
>> On Tue, Mar 10, 2009 at 9:40 AM, Jens W. Klein
>> <[hidden email]> wrote:
>>> Am Mon, 09 Mar 2009 14:58:50 -0300 schrieb Derek Broughton:
>>>
>>>> Then why do we now have to specify "-p" to tell it where to find the
>>>> AGX profile - which the model seems to already contain.
>>>
>>> well, I'am not maintainer of argouml. archgenxml does not need the
>>> profile, its defines and contains it (already in 2.x)
>> If you create a model with ArgoUML >= 0.26.2 with the
>> archgenxml_profile.xmi, then the xmi of your model will reference the
>> archgenxml_profile.xmi file with
>> xmi.href="archgenxml_profile.xmi#UUID", instead of xmi.idref="UUID".
>> So archgenxml, more precisely xmiparser, need to know where to find
>> the archgenxml_profile.xmi file. In agx 2.4/xmiparser 1.3, you need to
>> specify -p option to specify the profile directory.
>> In agx 2.4/xmiparser trunk, if you don't specify the -p option, it
>> will read the ~/.argouml/argo.user.properties file for profiles
>> directories to search archgenxml_profile.xmi.
>
> It's agx 2.3 sorry.

Thanks.   That's perfect.  I understand that AGX shouldn't need to
understand how Argouml works, but it equally shouldn't need manual
specification of anything that the model doesn't need specified manually.

I suppose I should really argue with the ArgoUML maintainers that the
profile path should be internal to the model, and only defaulted from
~/.argouml/argo.user.properties
--
derek


------------------------------------------------------------------------------
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
Vincent Fretin () Re: We started to refactor ArchGenXML -> Version 3 (complete posting)
Reply Threaded More More options
Print post
Permalink
In reply to this post by Jens W. klein-2
On Mon, Mar 9, 2009 at 11:05 AM, Jens W. Klein <[hidden email]> wrote:
> Am Mon, 09 Mar 2009 10:38:37 +0100 schrieb Vincent Fretin:
>
>> Hi,
>>
>> This is great news.
>> I will try to participate in the development of AGX 3 too.
>
> Great, what do you want to start with? ;-)
First I have to look at the new code. ;-)
I didn't have time to look at it yet. Maybe I can start to register
stereotypes and tagged-values as components and rewrite the argouml
profile generator. Can I use grokcore.component? I think it will
simplify a lot the registration of stereotypes and tagged-values if we
use grok. Less code, you don't have to edit several files: the Python
file and ZCML file.
I don't know when I will have the time to participate this month and
in april. I'm overbooked. ;-)
I'll try to follow the development nevertheless. But in May, I can
work 1 full day in the week on agx 3.

Cheers
--
Vincent Fretin

------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Archetypes-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/archetypes-users
1 2