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 - Paolo F Cantoni

Pages: [1] 2 3 ... 395
1
Automation Interface, Add-Ins and Tools / XSD Generation and Relationships
« on: February 19, 2018, 11:06:33 am »
We are experimenting with XSD round-tripping (but principally generation).  With RDBMS round-tripping there is the option of suppressing or including relationships are part of the process.

We have noticed that if we try and "visualise" the relationships between the XSD componentry (via composition and other relationships) when we generate we find an entry for the attribute and an entry for the relationship.  In the example below, the entries where the name and the type are the same are from the relationship, the others are from the attribute.
Is there any way to suppress/control the use of relationships?
Code: [Select]
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="Message">
<xs:sequence>
<xs:element name="Header" type="StandardMessageHeader" minOccurs="1" maxOccurs="1"/>
<xs:element name="Status" type="StandardStatusMetadata" minOccurs="1" maxOccurs="1"/>
<xs:element name="Payload" type="MessageSpecificPayload" minOccurs="1" maxOccurs="1"/>
<xs:element name="StandardMessageHeader" type="StandardMessageHeader" minOccurs="1" maxOccurs="1"/>
<xs:element name="StandardStatusMetadata" type="StandardStatusMetadata" minOccurs="1" maxOccurs="1"/>
<xs:element name="MessageSpecificPayload" type="MessageSpecificPayload" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="MessageSpecificPayload">
<xs:sequence>
<xs:element name="element1" minOccurs="1" maxOccurs="1"/>
<xs:element name="element2" minOccurs="1" maxOccurs="1"/>
<xs:element name="element3" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="StandardMessageHeader">
<xs:sequence>
<xs:element name="element1" minOccurs="1" maxOccurs="1"/>
<xs:element name="element2" minOccurs="1" maxOccurs="1"/>
<xs:element name="element3" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="StandardStatusMetadata">
<xs:sequence>
<xs:element name="element1" minOccurs="1" maxOccurs="1"/>
<xs:element name="element2" minOccurs="1" maxOccurs="1"/>
<xs:element name="element3" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
TIA,
Paolo

2
Automation Interface, Add-Ins and Tools / Re: Can we hijack «trace»?
« on: February 19, 2018, 10:38:57 am »
I guess that should be possible (will eventually try later). But then you have the problem that the standard toolbox still offers trace prominently and people will mix to 50% or so. Is it worth that?

q.
I found a way to get rid of that standard toolbox. However, I haven't yet figured out if there are any downsides.

It seems, (as of version 13.5) that one can disable ALL MDGs except your own one.  That removes the standard relationships and hence the standard QuickLinker (the standard toolbox is easy to suppress).  Now to see if this is "without loss of generality", as the mathematicians say.

Paolo

3
Automation Interface, Add-Ins and Tools / Can we hijack «trace»?
« on: February 16, 2018, 11:04:18 am »
Time Aware Modelling (TAM) uses the «trace» relationship to link the "doppelganger" to the "base" item.  The instantiated trace relationship is a "local" stereotype (not connected to an MDG).

We wish to "hijack" this relationship and create an MDG based «trace» relationship (so that its t_xref value changes from @STEREO;Name=trace;GUID={<guid>};@ENDSTEREO; to @STEREO;Name=trace;FQName=<MDG>::trace;@ENDSTEREO;), to allow us to alter the rendering and to add additional properties. It would appear that "with no loss of generality" this is possible.  Can anyone confirm?

TIA,
Paolo

4
I had tried this before posting a thread but it didn't seem to work:

Code: [Select]
<TaggedValues>
  <Tag name="NAME" type="CheckList" description="" unit="" values="A,B,C" default="A"/>
</TaggedValues>

still single selection.
Hi Daniel,
If you started off with a single selection enumeration and now want a (simple) multiselection set then a type CheckList is NOT what you need.  EA implements a CheckList as a TRUE Checklist (I got "sucked in" the same way).  Re-read the definition referenced by Archad.  IIRC there is currently no mechanism to create a multiselection set.

In addition, IIRC there are issues with the current implementation of CheckList.  I posted a topic about it within the last year, I think.

Paolo

Paolo

5
I was developing a long and detailed argument about this, but I don't have the time. Quickly, I think you have two requirements and you are saying that the very simple solution (the Virtual Connector End) for one requirement (show that element X in the top left of the diagram has a relationship with element Y far away in the bottom right of the diagram) should be the solution to a different requirement (I want to show different views of element X). For that requirement, one solution is to create instances of element X on your diagram and modify each accordingly.
I was talking about the API method VirtualizeConnector which actually virtualizes the connector end (doesn't it?).
It may be Alain was also talking about that also.  In the English Language version (at least), the UI clearly states that you are Virtualizing the Connector End.

Paolo

6
Ah yes, Alain,

The perennial problem of the language of the code NOT representing the concept involved.   Who'd have thought that there should be consistency between what the code implies it does and what it actually does?

As our colleague says...
Concistency, konsistency, consistensy! TMUffe - after Paolo

Paolo

7
General Board / Re: Link an User Interface element to Table/Column
« on: February 09, 2018, 11:24:42 am »
I need to show a link between an User Interface element and a Table (specifically link to a Column). The Tables (with Columns) have been successfully imported from SQL Server.  Could someone suggest how to create a diagram showing links from the UI fields to the Table/Columns please   
Hi Miso,

Look up "Link to element feature" in the help.

We use it all the time to link a feature to another.

Paolo

8
General Board / Re: Displaying tags on connectors
« on: February 06, 2018, 06:01:25 pm »
yes it is possible using Shape Scripts as Qwerty mentioned.
But rather than displaying tag name on connector I would suggest going with change colors of connectors based on tag value.
Displaying Values on connector makes the diagram messy.

Best Regards,
Nabil
We create widgets for displaying properties on arcs.  Some of them can be very small and so don't "get in the way".  We use Shapescripts for that.  Also, we have found that it is best to allow colours to be managed on an individual diagram basis - which is difficult if you base them on arc properties.

Paolo

9
Anybody else attempted to create shapescripts for RequiredInterface or ProvidedInterface elements?  They SURE are different, aren't they?

Among some of the issues we've found is that there is NO real distinction between Rectangular form and non-Rectangular form.  In fact, the drawnativeshape() only works for the Rectangular mode.
You can't change some of the drawing properties from within the shapescript - so that the behaviour of drawnativeshape() behaves differently than for most other element types.
Regardless of whether you define the MDG to have the base type in the metatype definition, it pops up the Provided/Required dialog (and it doesn't even change the radio button to the correct one)!

As part of our consistent modelling environment, we require each metatype to have a unique stereotype - so the stereotype is a proxy for the metatype.  If the user isn't watching what they are doing when they will create an inconsistent metatype.  Does anybody know how to suppress that dialog or at least to be able to specify the right interface type?

Thoughts?  (Before I report a set of bugs?)
Paolo



10
I'll take the deafening silence as a NO...  ;)

Paolo

11
General Board / Re: Security users - windows authentication
« on: February 02, 2018, 05:51:13 pm »
Connect to your DBMS using 'Connect to Server' and use File -> Save As to save as an EAP file. (this will store the connection string in a file extension .EAP, which EA will recognize)
FWIW, we name ALL shortcut files with a leading "@" to separate them from REAL .eap files.

Otherwise, you can get quite confused... by EAUI.

Paolo

12
Bugs and Issues / Re: User guide API documentation not navigable
« on: January 31, 2018, 05:56:39 pm »
Yes it is a bit awkward.
You repeatedly have to press the "Topics" button (called "dropdown" by Simon but doesn't look like a dropdown) to navigate deeper into the topics tree.

Geert
Yes, I came to the same conclusion a few weeks ago.  I keep a copy of the last .chm file around for look-ups on older topics, then once I've got the right page, I try to get to the latest version.

I DO miss a lot of the functionality of the old chm file

Paolo

13
General Board / Re: Elements on diagram
« on: January 30, 2018, 10:43:23 am »
Hi!

If I put in one element in another element on diagram, Project browser hierarchy will be also changed. Could you please tell me how to avoid this Project hierarchy changes (the dependency of diagrams and Project browser)?
Hi Alex,

there are strategies for avoiding the Project browser incorrectly Nesting components when the relationship between them is not Nesting, but (typically) composition, aggregation etc.

However, first, you need to decide (when you visually embed one element inside another) what relationship you are implying.

Paolo

14
I'm pretty sure I know the answer  ;), but just in case, has anyone used the API to do any time aware modelling?

As mentioned in another thread, we're looking to intercept the cloning process to add some additional functionality post process.

Also, is the element.Clone() the only method used?

TIA,
Paolo

15
Suggestions and Requests / Re: Relationship between/to Attributes
« on: January 29, 2018, 10:52:37 am »
A common use is attribute mapping. You have two similar objects (e.g. two different representations of Person coming from two different companies). Now you want to map the foreign attributes to that of your own object.

q.
+1  This appears to be the most common use case (Attribute mapping) we use it also for attribute tracing (again, a form of mapping) in generation processes.

Paolo

Pages: [1] 2 3 ... 395