Supported model / Presentation list
A part of the class structure of Astah API is different from the one of UML metamodel.
Astah API has a simplified structure. Some of abstract model elements in the UML metamodel inheritance structure are eliminated because they would not be instantiated as model elements. See Structure details: All Diagrams in Javadoc
Supported Models
This is a list of Astah models corresponding to UML model.
Class Diagram
UseCase Diagram
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| UseCase Diagram | IUseCaseDiagram | ○ | ○ | createUseCaseDiagram(INamedElement,String) |
| Actor | <<actor>> IClass |
○ | ○ | createActor(IPackage,String) |
| UseCase | IUseCase | ○ | ○ | createUseCase(IPackage,String) |
| Extend | IExtend | ○ | ○ | createExtend(IUseCase,IUseCase,String) |
| ExtensionPoint | IExtentionPoint | ○ | ○ | createExtensionPoint(IUseCase,String) |
| Include | IInclude | ○ | ○ | createInclude(IUseCase,IUseCase,String) |
| TaggedValue | ITaggedValue | ○ | ○ | createTaggedValue(IElement,String,String) |
| Constraint | IConstraint | ○ | ○ | createConstraint(INamedElement,String) |
| Multiplicity | IMultiplicityRange | ○ | ○ | setMultiplicity(int[][]), setMultiplicityStrings(String[][]) |
| Comment | IComment | ○ | ○ | Will be automatically created when a presentation is created. |
Statemachine Diagram
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Statemachine Diagram | IStatemachineDiagram | ○ | ○ | createStatemachineDiagram(INamedElement,String) |
| Statemachine | IStateMachine | ○ | ○ | It is created at diagram creation |
| Initial Pseudostate | IPseudostate && isInitialPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| State | IState | ○ | ○ | Will be automatically created when the presentation is created |
| Submachine State | IState && isSubmachineState() | ○ | ○ | Will be automatically created when the presentation is created |
| Final State | IFinalState | ○ | ○ | Will be automatically created when the presentation is created |
| Transition | ITransition | ○ | ○ | Will be automatically created when the presentation is created |
| Entry Point | IPseudostate && isEntryPointPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Exit Point | IPseudostate && isExitPointPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Shallow History Pseudostate | IPseudostate && isShallowHistoryPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Deep History Pseudostate | IPseudostate && isDeepHistoryPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Junction Pseudostate | IPseudostate && isJunctionPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Choice Pseudostate | IPseudostate && isChoicePseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Fork Pseudostate | IPseudostate && isForkPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| Join Pseudostate | IPseudostate && isJoinPseudostate() | ○ | ○ | Will be automatically created when the presentation is created |
| StubState in SubmachineState | IPseudostate && isStubState() | ○ | ○ | Will be automatically created when the presentation is created |
Activity Diagram
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Activity Diagram | IActivityDiagram && ! isFlowChart() | ○ | ○ | createActivityDiagram(INamedElement,String) |
| Activity | IActivity | ○ | ○ | It is created at diagram creation |
| Partition | IPartition | ○ | ○ | Will be automatically created when the presentation is created |
| Initial Node | IControlNode && isInitialNode() | ○ | ○ | Will be automatically created when the presentation is created |
| Action | IAction | ○ | ○ | Will be automatically created when the presentation is created |
| Activity Final | IControlNode && isFinalNode() | ○ | ○ | Will be automatically created when the presentation is created |
| Flow Final Node | IControlNode && isFlowFinalNode() | ○ | ○ | Will be automatically created when the presentation is created |
| Control Flow / Object Flow | IFlow | ○ | ○ | Will be automatically created when the presentation is created |
| Decision Node / Merge Node | IControlNode && isDecisionMergeNode() | ○ | ○ | Will be automatically created when the presentation is created |
| Fork Node | IControlNode && isForkNode() | ○ | ○ | Will be automatically created when the presentation is created |
| Join Node | IControlNode && isJoinNode() | ○ | ○ | Will be automatically created when the presentation is created |
| Input Pin | IInputPin | ○ | ○ | Will be automatically created when the presentation is created |
| Output Pin | IOutputPin | ○ | ○ | Will be automatically created when the presentation is created |
| Object Node | IObjectNode | ○ | ○ | Will be automatically created when the presentation is created |
| Activity Parameter Node | IActivityParameterNode | ○ | ○ | Will be automatically created when the presentation is created |
| Send Signal Action | <<signal sending>>IAction |
○ | ○ | Will be automatically created when the presentation is created |
| Accept Event Action | <<signal receipt>>IAction |
○ | ○ | Will be automatically created when the presentation is created |
| Accept Time Event Action | <<accept_time_event>>IAction |
○ | ○ | Will be automatically created when the presentation is created |
| Process | <<process>>IAction |
○ | ○ | Will be automatically created when the presentation is created |
| Connector | IControlNode && isConnector() | ○ | ○ | Will be automatically created when the presentation is created |
Flowchart
Only Get-API is available with Astah Professional Edition.
| Model | Class | Get | Edit | Create |
|---|---|---|---|---|
| Flowchart | IActivityDiagram && isFlowChart() | ○ | × | - |
| Lane | IPartition | ○ | × | - |
| process1 | IAction | ○ | × | - |
| process2 | <<flow_process>>IAction |
○ | × | - |
| Predefined Process | <<predefined_process>>IAction |
○ | × | - |
| Hand Work | <<hand_work>>IAction |
○ | × | - |
| Preparation | <<preparation>>IAction |
○ | × | - |
| Server | <<server>>IAction |
○ | × | - |
| Machine | <<machine>>IAction |
○ | × | - |
| Data | <<data>>IAction |
○ | × | - |
| Stored Data | <<stored_data>>IAction |
○ | × | - |
| Internal Storage | <<internal_storage>>IAction |
○ | × | - |
| Sequential Storage | <<sequential_storage>>IAction |
○ | × | - |
| Disk | <<disk>>IAction |
○ | × | - |
| Database | <<database>>IAction |
○ | × | - |
| Document | <<document>>IAction |
○ | × | - |
| Hand Inputting | <<hand_inputting>>IAction |
○ | × | - |
| Display | <<display>>IAction |
○ | × | - |
| Judgement | <<judgement>>IAction |
○ | × | - |
| Loop Start | <<loop_start>>IAction |
○ | × | - |
| Loop End | <<loop_end>>IAction |
○ | × | - |
| Internal Connector | <<internal_connector>>IAction |
○ | × | - |
| External Connector | <<external_connector>>IAction |
○ | × | - |
| Transition | IFlow | ○ | × | - |
| Initial Node | IControlNode && isInitialNode() | ○ | × | - |
| Final Node | IControlNode && isFinalNode() | ○ | × | - |
| Fork | IControlNode && isForkNode() | ○ | × | - |
| Join | IControlNode && isJoinNode() | ○ | × | - |
Sequence Diagram
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Sequence Diagram | ISequenceDiagram | ○ | ○ | createSequenceDiagram(INamedElement,String) |
| Lifeline | ILifeline | ○ | ○ | Will be automatically created when the presentation is created |
| Message | IMessage | ○ | ○ | Will be automatically created when the presentation is created |
| State | IState | ○ | ○ | Will be automatically created when the presentation is created |
| State Invariant | IStateInvariant | ○ | ○ | Will be automatically created when the presentation is created |
| CombinedFragment | ICombinedFragment | ○ | ○ | Will be automatically created when the presentation is created |
| Interaction | IInteraction | ○ | ○ | Will be automatically created when the presentation is created |
| InteractionOperand | IInteractionOperand | ○ | ○ | Will be automatically created when the presentation is created |
| CombinedFragment | IInteractionFragment | ○ | ○ | Will be automatically created when the presentation is created |
| InteractionUse | IInteractionUse | ○ | ○ | Will be automatically created when the presentation is created |
| Gate | IGate | ○ | ○ | Will be automatically created when the presentation is created |
| TimeConstraint | ITimeConstraint | ○ | × | - |
| DurationConstraint | IDurationConstraint | ○ | × | - |
Communication Diagram
Only Get-API is available.
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Communication Diagram | ICommunicationDiagram | ○ | × | - |
| Lifeline | ILifeline | ○ | × | - |
| Lifeline Link | ILifelineLink | ○ | × | - |
| Message | IMessage | ○ | × | - |
| InteractionUse | IInteraction | ○ | × | - |
Composite Structure Diagram
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Composite Structure Diagram | ICompositeStructureDiagram | ○ | ○ | createCompositeStructureDiagram(INamedElement,String) |
| Structured Class | IClass | ○ | ○ | Will be automatically created when the presentation is created |
| Part | IAttribute | ○ | ○ | - |
| Port | IPort | ○ | ○ | createPort(IClass,String) |
| Connector | IConnector | ○ | ○ | createConnector(IAttribute,IPort,IAttribute,IPort) |
ER Diagram
Edit-API available only for Astah Professional Edition.
DFD
Edit-API is not available.
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| DFD | IDataFlowDiagram | ○ | × | - |
| ProcessBox | IProcessBox | ○ | × | - |
| External Entity | IExternalEntity | ○ | × | - |
| Data Store | IDataStore | ○ | × | - |
| Anchor | IAnchor | ○ | × | - |
| Dataflow | IDataFlow | ○ | × | - |
CRUD
Edit-API is not available.
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| CRUD | IMatrixDiagram | ○ | × | - |
| Header cell | IElement | ○ | × | - |
Mind Map
There are no models in Mind Maps - they are all the presentations only.
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Mind Map | IMindMapDiagram | ○ | ○ | createMindmapDiagram(INamedElement,String) |
| Traceability Map | ITraceabilityMap | ○ | × | - |
Requirement Diagram
Edit-API is available only in Astah Professional.
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Requirement Diagram | IRequirementDiagram | ○ | ○ | createRequirementDiagram(INamedElement,String) |
| Requirement | IRequirement | ○ | ○ | createRequirement(IPackage,String), createRequirement(IRequirement,String) |
| TestCase | ITestCase | ○ | ○ | createTestCase(IPackage,String), createTestCase(ITestCase,String) |
Requirement Table
Edit-API is not available.
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Requirement Table | IRequirementTable | ○ | × | - |
Other
| Model | Class | Get | Edit | Create Method |
|---|---|---|---|---|
| Hyperlink | IHyperlink | ○ | ○ | createElementHyperlink(IElement,String) |
If there is a hyperlink which is a model, the modelID is included in the name.
type=file,name=astah_com.log,path=C:/Documents and Settings,comment= Target is a file
type=url,name=http://www.change-vision.com,path=http://,comment= Target is a web page
type=model,name=9a1411-1112fec29a5-0804d01aa6c5fb9fe2aab956b4ca593a,path=,comment= Target is a astah* model
Presentation list
This is a list of Presentation in Astah. To find out which presentation is editable or not..etc, please refer to the Astah API page.
Common Diagram Elements
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Model | IModel | INodePresentaion | 1:n |
| Subsystem | ISubsystem | INodePresentation | 1:n |
| Package | IPackage | INodePresentation | 1:n |
| Note | IComment | INodePresentation | 1:1 |
| Frame | null | INodePresentation | - |
| Text | null | INodePresentation | - |
| Rectangle | null | INodePresentation | - |
| Oval | null | INodePresentation | - |
| Image | null | INodePresentation | - |
| Nest | null | ILinkPresentaion | 1:n |
| NoteAnchor | null | ILinkPresentaion | - |
| Line | null | ILinkPresentaion | - |
| FreeHand | null | ILinkPresentaion | - |
Class / Composite Structure Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Class | IClass | INodePresentation | 1:n |
| Association Class | IAssociationClass | INodePresentation, ILinkPresentaion | 1:n |
| Association | IAssociation | ILinkPresentaion | 1:n |
| Generalization | IGeneralization | ILinkPresentaion | 1:n |
| Realization | IRealization | ILinkPresentaion | 1:n |
| Usage | IUsage | ILinkPresentaion | 1:n |
| Dependency | IDependency | ILinkPresentaion | 1:n |
| Template Binding | ITemplateBinding | ILinkPresentaion | 1:n |
| Instance Specification | IInstanceSpecification | INodePresentation | 1:1 |
| Link | ILink | ILinkPresentaion | 1:1 |
| Part | IAttribute | INodePresentation | 1:n |
| Port | IPort | INodePresentation | 1:n |
| Connector | IConnector | ILinkPresentaion | 1:n |
UseCase Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| UseCase | IUseCase | INodePresentation | 1:n |
| Extend | IExtend | ILinkPresentaion | 1:n |
| Include | IInclude | ILinkPresentaion | 1:n |
Statemachine Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Initial Pseudostate | IPseudostate | INodePresentation | 1:1 |
| State | IState | INodePresentation | 1:1 |
| Final State | IFinalState | INodePresentation | 1:1 |
| Transition | ITransition | ILinkPresentaion | 1:1 |
| Shallow History Pseudostate | IPseudostate | INodePresentation | 1:1 |
| Deep History Pseudostate | IPseudostate | INodePresentation | 1:1 |
| Junction Pseudostate | IPseudostate | INodePresentation | 1:1 |
| Choice Pseudostate | IPseudostate | INodePresentation | 1:1 |
| Fork Pseudostate | IPseudostate | INodePresentation | 1:1 |
| Join Pseudostate | IPseudostate | INodePresentation | 1:1 |
| StubState in SubmachineState | IPseudostate | INodePresentation | 1:1 |
| Submachine State | IState | INodePresentation | 1:1 |
Activity Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Partition | IPartition | INodePresentation | 1:1 |
| InitialNode | IControlNode | INodePresentation | 1:1 |
| Action | IAction | INodePresentation | 1:1 |
| Flow Final Node | IAction | INodePresentation | 1:1 |
| SignalSendingAction | IAction | INodePresentation | 1:1 |
| AcceptEventAction | IAction | INodePresentation | 1:1 |
| AcceptTimeEventAction | IAction | INodePresentation | 1:1 |
| OutputPin | IOutputPin | INodePresentation | 1:1 |
| InputPin | IInputPin | INodePresentation | 1:1 |
| Process | IAction | INodePresentation | 1:1 |
| Connector | IAction | INodePresentation | 1:1 |
| CallBehaviorAction | IAction | INodePresentation | 1:1 |
| ActivityFinal | IControlNode | INodePresentation | 1:1 |
| Control Flow / Object Flow | IFlow | ILinkPresentaion | 1:1 |
| Decision Node / Merge Node | IControlNode | INodePresentation | 1:1 |
| ForkNode | IControlNode | INodePresentation | 1:1 |
| JoinNode | IControlNode | INodePresentation | 1:1 |
| Object Node | IObjectNode | INodePresentation | 1:1 |
| Activity Parameter Node | IActivityParameterNode | INodePresentation | 1:1 |
Sequence / Communication Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Lifeline | ILifeline | INodePresentation | 1:1 |
| Execution Specification | null | INodePresentation | 1:1 |
| Message | IMessage | ILinkPresentaion | 1:1 |
| Stop | ITermination | INodePresentation | 1:1 |
| InteractionUse | IInteractionUse | INodePresentation | 1:1 |
| CombinedFragment | ICombinedFragment | INodePresentation | 1:1 |
| StateInvariant | IStateInvariant | INodePresentation | 1:1 |
| Time Constraint | ITimeConstraint | INodePresentation | 1:1 |
| Duration Constraint | IDurationConstraint | INodePresentation | 1:1 |
| LifelineLink | ILifelineLink | ILinkPresentaion | 1:1 |
| Message in Communication Diagram | IMessage | INodePresentation | 1:1 |
Flowchart
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Lane | IPartition | INodePresentation | 1:1 |
| Process | IAction | INodePresentation | 1:1 |
| Transition | IFlow | ILinkPresentaion | 1:1 |
| InitialNode | IControlNode | INodePresentation | 1:1 |
| FinalNode | IControlNode | INodePresentation | 1:1 |
| Fork | IControlNode | INodePresentation | 1:1 |
| Join | IControlNode | INodePresentation | 1:1 |
DFD
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| External Entity | IExternalEntity | INodePresentation | 1:n |
| Process | IProcessBox | INodePresentation | 1:1 |
| Datastore | IDataStore | INodePresentation | 1:n |
| Anchor | IAnchor | ILinkPresentaion | 1:1 |
| DataFlow | IDataFlow | ILinkPresentaion | 1:1 |
Requirement Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Requirement | IRequirement | INodePresentation | 1:n |
| TestCase | ITestCase | INodePresentation | 1:n |
| DeriveReqt | IDependency | ILinkPresentaion | 1:n |
| Copy | IDependency | ILinkPresentaion | 1:n |
| Satisfy | IDependency | ILinkPresentaion | 1:n |
| Verify | IDependency | ILinkPresentaion | 1:n |
| Refine | IDependency | ILinkPresentaion | 1:n |
| Trace | IDependency | ILinkPresentaion | 1:n |
ER Diagram
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| ER Entity | IEREntity | INodePresentation | 1:n |
| Identifying Relationship | IERRelationship | ILinkPresentaion | 1:n |
| Non-Identifying Relationship | IERRelationship | ILinkPresentaion | 1:n |
| Many to many relationship | IERRelationship | ILinkPresentaion | 1:n |
| Subtype | IERSubtypeRelationship | ILinkPresentaion | 1:n |
Mind Map
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Topic | null | INodePresentation | - |
| Edge | null | ILinkPresentaion | - |
| Link between topics | null | ILinkPresentaion | - |
| Boundary | null | INodePresentation | - |
CRUD
| Type | Model | Presentation Type | Model:Presentation |
|---|---|---|---|
| Value cell | null | IValueCell | - |
| Header cell | IElement | IHeaderCell | 1:n |
| Cells in the entire header | null | IHeaderCell | - |