Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - benc

Pages: 1 ... 11 12 [13] 14
General Board / Re: Change generated code format?
« on: April 23, 2003, 08:54:46 pm »
Hi rickr,

There are a few things you can change under the Generate
Dialogue->Advanced (comment style, get/set prefix ...).
Beyond these, we are working on code generation templates which will allow for greater flexibility in customizing the generated code.  These should be released over the next couple of months or so.


General Board / Re: UML Profile for EJB
« on: April 21, 2003, 04:18:54 pm »
Hi rajeshnatarajan,

Currently there is no EJB profile supported by EA.  However we are looking including this at some point.


General Board / Re: Moving packages and sorting
« on: April 14, 2003, 04:54:33 pm »
Hi Tjerk,

Thanks for the fix, I'll download the new build today.

These fixes will be in build 609.

you a new member to the Sparx team, just as Emma? Is Sparx expanding the team for EA, or is it just that team members will be more present on the forum?

A bit of both... team members will probably respond to the parts of EA they are familiar with / working on.


General Board / Re: Moving packages and sorting
« on: April 14, 2003, 01:00:46 am »
Hi Tjerk,

Try doing a reload on the package to get your original ordering shown.  The original order is actually preserved in the model- the "unordering" that happens in the tree is just cosmetic.  Now we have fixed the tree as well, so the sort ordering visually matches what happens under the hood.

Hope that helps,


General Board / Re: Release 607
« on: April 14, 2003, 06:00:12 pm »
Hello again Tjerk,

On the Properties window... we've seen this behaviour occasionally and it appears to be a 3rd party software issue.
We're hunting down a work around currently- other than restarting EA...


General Board / Re: Release 607
« on: April 14, 2003, 05:35:29 pm »
Hi Tjerk,

Thanks for the feedback.

  • The newline issue should be resolved as of build 609
  • We'll look at the logging in some more detail- the validation passes are performed until a valid set of classes is reached according the UML profile constraints.  So if you have an XSDchoice stereotyped class that has no containing
    class, it will discard it try again.
  • As regards namespaces- probably best to keep the prefixes as tagged values on the package.  This way you'll have a single point of control when the "prefix de jour" becomes "foo" instead of "bar".  Regarding the xs: prefix in particular- best to use the provided XSDDataTypes package.  That said, if many users prefer to include the prefix before each UML attribute, we might look at getting the schema generator to "make a guess" at what part is the namespace.  This approach could be messy though...
  • Quote
    Would be nice to include XSD as one of the languages, just as e.g. java and treat them the same. Maybe include an options window in the View/Options dialog for XSD generation.

    We'll have a look at this...
  • Quote
    I use the <<XSDSchema>> component as a representation of a schema, am I wrong in doing so? Otherwise, I would like the XSD generation to be possible on components as well (see previous issue).

    In a future release the <<XSDschema>> stereotype will be available on components- it is not currently.  Support for aggregation (and composition) connectors is coming also.
  • The classname prefix behaviour can be turned off by using tagged values on the package or on indivual complexType classes.  The prefix helps ensure uniqueness of element names within a schema.  Useful if the xsd ever gets generated in a "Garden of Eden" style, where all elements (from all class attributes) would be declared as root elements.
  • Quote
    I get a "failed class constraint" due to the default constraints in the UML profile!

    There could be lots of reason for a class failing constraints from the profile.  Eg an XSDchoice class that has no owner.
    Note the constraints specified in the help file are non-negotiable- they form part of the profile.

Bugs and Issues / Re: Cardinality between database objects
« on: June 12, 2015, 02:11:38 pm »
Hi Modesto,

I think this issue was resolved in Build 1213. The release notes for 1213 contain an entry like:
Foreign Key dialog now saves child cardinality

Can you please confirm that this addresses your concern?

I hope it helps.


Uml Process / Re: Independent class diagram
« on: June 15, 2015, 09:58:17 am »
Hi Lukis,

As you discovered, when you create a connector in EA, by default it will be drawn on all other diagrams where those two elements appear.

If you don't want the connector to be drawn on all other existing diagrams, after you draw the connector, right-click it and choose from the context menu: Visibility > Hide Connector in Other Diagrams. You'll get a list of diagrams where that connector appears. Clear the appropriate check boxes or just click "Suppress All". (If those other diagrams are open when you do this, you might need to reload/refresh them to see the changes.)

Hope that helps.


Hi Wolf,

Sorry to hear you had troubles getting this to work.

I am curious about the XML editing you did though. Was it actually the XMI you edited or the generated ArcGIS XML Workspace document? They are quite different things.

If the latter, after editing that autogenerated XML Workspace file you still would have the old values left in your original EA model. So upon discovering issues when importing the workspace document into ArcCatalog, you wouldn't be able to simply tweak the original model and regenerate. (Not without first making the same tagged value changes in the original model of course). I do agree that the XML workspace import errors can be too vague, which is why we programmed so many checks and warnings into the model validation script.

On the other hand, if you actually did export and edit the XMI file from EA (that is a file with complete model info, not the ArcGIS XML workspace document), you could reimport the edited XMI file back into an EA project. Then rerun the model validator and address any remaining warnings/errors to get the ArcCatalog import to succeed. I hadn't really considered this search-and-replace strategy using XMI at first, but it is a possible approach for others that wanted to do such an update on tags and not use a Model Script.

As for the model validation script, the code changes I mentioned have been included in the updated script linked from here:

So the model validator will more gracefully complain about very wide strings now. The same updates will be rolled into a subsequent Enterprise Architect release.

Thanks for posting your feedback.


PS: In case you haven't seen it yet, there is a introductory tutorial/webinar available here, with an example model and generated schema available for download:


I created an «ArcGIS» Workspace model from scratch (using the ArcGIS workspace extension/ pattern).  My model is quite extensive and now I realize that EA left virtually all 'tagged values' for attribute columns empty. Examples are "IsNullable" or "Length" etc.
Many of the ArcGIS tags for fields have a default value. For example IsNullable is a boolean value, set to true by default. Even though length has an empty/0 value by default, the exporter will insert the valid ArcGIS default of 50. You get a warning for that, which you can ignore if you're content with 50. Otherwise you should specify a valid length value for your fields.

If you actually see an empty value for say IsNullable, please let us know which version of Enterprise Architect you are using. It would also be worth sending a note to Sparx support so they can investigate further.

The user interface to enter tagged values is what I consider somewhat "user hostile" meaning that if I have to enter these tags manually it will take me months.
There are two interfaces for editing tags. I find the dockable view handy (Main Menu | View | Tagged Values). It refreshes as you select another element or field (UML attribute). It can be handy if you need to edit a specific tag for numerous elements or attribtues - especially when the values for that tag vary per element/attribute.

Is there an automated way to do populate these tags (at least with default values?)
Yes you can automatically populate tagged values. A Model Script is probably the easiest/safest way. But if it is just to insert default values for the ArcGIS profile tags, you should not need to bother.

I am not sure which errors are show stoppers but when I run the validation script I get an error on line 1702
ArcGIS™.ValidateArcGISModel error: Overflow: 'CInt', Line:1702      
If CInt(length) > MAX_TEXT_LENGTH Or CInt(length) < MIN_TEXT_LENGTH Then
Here the validation script should definitely be improved by using CLng instead of CInt. I guess you inserted a length value greater than 32,767 and CInt blows a fuse over that. We'll get that corrected forthwith.

Now the script was in the process of reporting a warning. From memory, only file geodatabases allow you to have string lengths greater than 255 characters. So a schema with string fields above that limit probably won't work if implemented on other types of geodatabase. If you're ok with that and really want string fields wider than 32,767 characters, you can stop the validation script from complaining:

At line 1702, change CInt to CLng in both places (you could probably even do a global search/replace for this throughout the script)
At line 147, change MAX_TEXT_LENGTH from 255 to whatever limit you like.

You can get the script code here, along with instructions on how to import it into Enterprise Architect (so as to workaround the issue with the built-in script):

This is also where we will first post the updated script before it gets rolled into an Enterprise Architect release to update the built-in script.

Anyways I am somehow getting the impression that this extension doesn't get too much use.   Has anybody used this extension before and successfully produced an XML model?
Apart from myself, I know others outside of Sparx that generate ArcGIS XML Workspace documents and import them to ArcCatalog successfully. It gets a fair thrashing along the way, but we obviously haven't used strings wider than 32K yet. As with other types of automated schema generation, there is some set up and model config involved. So there's a learning curve, but hopefully not too steep.

I hope this helps.


You might have a look at another script that does the same kind of thing... From memory, it was written against EA 10.x or 9.x. Have a look at the function AddRelationshipClassTags starting at line 1802 here.

It adds a bunch of tags 'manually', but synchs the connectors against the profile all at once, right at the end of the script. (See the comments starting from line 1947 and the call to SynchProfile at line 468.)

I can't remember which release of EA it was fixed in, but the tagged value synch became smart enough to preserve existing values of the same-named tags and bring those 'unprofiled' tags nicely into the profile as part of the synch. This particular script works on EA's ArcGIS profile... Been a while since I used that script, but I think that's roughly how it behaved anyway.

Given that you haven't got SynchProfile available from the java API - could this be one manual step, after script is run, achieved via the UI?

I hope that helps.


Automation Interface, Add-Ins and Tools / Re: XSD generation problems II
« on: February 09, 2005, 04:52:18 pm »
Hi atingley,

Thanks for the note. As far as I can tell this a bug - schema A definitely shouldn't require includes, if the pacakge doesn't contain references to C and B.

We'll try to get this resolved ASAP. Thanks again for letting us know.


Hi Guys,

Does this thread help any?;action=display;num=1097227460

I believe charge's solution of referencing interop.dll is on the money. Let us know if this does not resolve the problem.


Hi Guys,

The documentation is certainly lacking for the XMIType parameter. Apparently the only recognised value is 2, which generates XMI using the Unisys/Rose format. All other values result in EA's default XMI. We've discussed the possibility of retrofitting a set of documented values to allow for exporting to the other supported XMI formats, 1.2, 1.0 etc. So you would call something like :

Code: [Select]
proj.ExportPackageXMI(Pkg.PackageGuid, EA12, ...)

Jens, thanks for your patience in this regard and my apologies for a delayed response. Hopefully the updated API will prove useful.


Automation Interface, Add-Ins and Tools / Re: Ordering elements in XSD
« on: February 09, 2005, 04:13:36 pm »
Hi atingley,

Try putting the position as a tagged value on the 'other' end of the association. (Probably your association Source end). It's counter-intuitive, but the schema generator expects the tags for the association to be on the source end.

(Actually, it relates to a bug that we'll need to fix in a backward compatible way for existing schema models - ie. make the generator look first for the tags on the target end, then check the source end if not present.)

You should be able to set any other tags that apply to class attributes to association ends in the same way. For example form=unqualified, anonymousRole=true etc.

I hope this make some sense.


Pages: 1 ... 11 12 [13] 14