Home
Categories
Dictionary
Glossary
Download
Project Details
Changes Log
What Links Here
FAQ
License

Exporting a graph as a graphml diagram



The browser allows to open a configuration file and show the corresponding diagram in the browser.

It is possible to export the diagram as a graphml diagram. The export is compatible with the popular yEd free editor.

There are two ways to generate a diagram of an architecture:
  • Generate a diagram from for entire architecture
  • Generate a diagram centered on one module. It will only show the modules with interfaces to this module

Overview

To generate a diagram from the entire architecture, select File => Export as graphml:
browserexport
To generate a diagram centered on one module, select the module in the architecture tree, right click and select "Export as graphml":
browserexport2

Options

There are several options to export the diagram:
  • Showing the services names as text alongside the edges between modules (the default)
  • Showing the services names in boxes alongside the edges
  • Exporting the applications as boxes and their modules as children of these boxes
  • Show the dependencies between modules rather than all their interfaces
The choice between these two options is available in the browser configuration

Example

We will use of architecture in the first tutorial for our example.

Architecture

Suppose the following architecture:
      <applications>
         <application name="eventAppli">
      ...
            <modules>
               <module name="EventModule1" > 
      ...
                  <interfaces>
                     <eventSend service="event" attach="attach"/>
                     <subscribe service="published" />
                  </interfaces>             
               </module>
               <module name="EventModule2"> 
      ...
                  <interfaces>
                     <eventSend service="event" attach="attach"/>
                     <subscribe service="published" />
                  </interfaces>             
               </module>   
            </modules>       
         </application>      
         <application name="publishAppli">
      ...
            <modules>
               <module name="PublishModule" > 
      ...
                  <interfaces>
                     <eventReceived service="event"/>
                     <cyclic service="published" frequency="200ms" attach="attach"/>
                  </interfaces>             
               </module>
            </modules>
         </application>       
      </applications>
And the services declaration:
      <services>
         <event name="event" >  
            <data name="event" type="bool" />                     
         </event>    
         <publish name="published" >  
            <data name="value" type="int" />                                     
         </publish>           
      </services>

Opening in the browser

We open the configuration file in the browser. We have the following diagram:
browsersave1

Export the diagram for the entire architecture

We will export the diagram for the entire architecture by the File => Export diagram as graphml option.

We can now open the resulting diagram in yEd by double clicking on the exported "graphml" file. We have the following diagram:
browsersave2
As you can see, the export does not take care of the position of the nodes and edges, so everything is in the center. However, it is simple to fix this by selecting Layout => Hierarchical Layout for example in yEd. We will have the following resulting diagram:
browsersave3
If we check the "Export Services as Boxes" option in the browser configuration, the resulting diagram will be:
browsersave5

Export the diagram centered on the EventModule2 module

We will export the diagram entered on the EventModule2 module by:
  • Selecting the EventModule2 module in the architecture tree
  • Right click and select "Export as graphml"
If we open the resulting diagram in yEd, and selecting Layout => Hierarchical Layout in yEd, we now will have the following resulting diagram:
browsersave4
As you can see, the EventModule1 module and all its interfaces are now not present anymore in the diagram.

See also


Categories: browser

Copyright 2017-2020 Dassault Aviation. All Rights Reserved. Documentation and source under the LGPL v3 licence