Objects
Topics:
|
|
|
|
Objects
|
Objects are created in Enterprise Architect by generating text in the following form:
objectType
{
objectProperties
}
where:
objectType is one of the following object types:
- Action
- ActionPin
- Activity
- ActivityParameter
- ActivityPartition
- ActivityRegion
- Actor
- Association
- Change
- Class
- Collaboration
- CollaborationUse
- Component
- DeploymentSpecification
- DiagramFrame
- Decision
- EntryPoint
- Event
- ExceptionHandler
- ExecutionEnvironment
- ExitPoint
- ExpansionNode
- ExpansionRegion
- ExposedInterface
- GUIElement
- InteractionFragment
- InteractionOccurrence
- InteractionState
- Interface
- InterruptibleActivityRegion
- Issue
- Iteration
- Object
- ObjectNode
- MessageEndpoint
- Node
- Package
- Parameter
- Part
- Port
- ProvidedInterface
- RequiredInterface
- Requirement
- Sequence
- State
- StateMachine
- StateNode
- Synchronization
- Table
- TimeLine
- Trigger
- UMLDiagram
- UseCase
objectProperties is zero, or one or more of the following properties:
- Abstract
- Alias
- Arguments
- Author
- Cardinality
- Classifier
- Complexity
- Concurrency
- Filename
- Header
- Import
- IsActive
- IsLeaf
- IsRoot
- IsSpecification
- Keyword
- Language
- Multiplicity
- Name
- Notes
- Persistence
- Phase
- Scope
- Status
- Stereotype
- Version
- Visibility
and zero, or one or more of the following elements:
- Attribute
- Classifier
- Parameter
- Operation
- Parent
- Tag
- XRef
- Any object
- Some of the above only apply to certain object types
- Every object created in a transformation should include an XRef element, as it enables Enterprise Architect to synchronize with the element and makes it possible to create a connector to that Class in a transformation
|
XRef element
|
Classes
|
A simple Class can be created as follows:
Class
{
name = "Example"
}
It is then easy to add to this; the following example sets the language to C++, and adds a Tagged Value and an attribute:
Class
{
name = "Example"
language = "C++"
Tag
{
name = "defaultCollectionClass"
value = "List"
}
Attribute
{
name = "count"
type = "int"
}
}
|
|
Attributes
|
Attributes are created with the same structure as objects, and include the following properties:
- Alias
- Classifier
- Collection
- Container
- Containment
- Constant
- Default
- Derived
- LowerBound
- Name
- Notes
- Ordered
- Scope
- Static
- Stereotype
- Type
- UpperBound
- Volatile
and the following elements:
|
|
Operations
|
Operations are created with the same structure as objects, and include the following properties:
- Abstract
- Alias
- Behavior
- Classifier
- Code
- Constant
- IsQuery
- Name
- Notes
- Pure
- ReturnArray
- Scope
- Static
- Stereotype
- Type
and the following elements:
- Classifier
- Parameter
- Tag
- XRef
|
|
Parameters
|
Parameters are created with the same structure as objects, and include the Tag element and the following properties:
- Classifier
- Default
- Fixed
- Name
- Notes
- Kind
- Stereotype
|
|
Packages
|
Packages differ from other objects in the following ways:
- A reduced set of properties of alias, author, name, namespaceRoot, notes, scope, stereotype and version
- The extra property namespaceRoot
- Must have a name specified
- Name can be a qualified name; when a qualified name is specified the properties given are applied only to the final package
- Can contain other packages
- Can't contain attributes and operations
|
|
Tables
|
Tables are a special sort of object, with the following differences from other object types:
- Can include columns and primary keys
- Cannot include attributes
|
|
Columns
|
Columns are similar to attributes, but have an autonumber element containing Startnum and increment, and the following added properties:
- Length
- NotNull
- Precision
- PrimaryKey
- Scale
- Unique
In the column definition, you cannot assign a value to the NotNull, PrimaryKey or Unique properties
|
|
The material ("material" includes all pages, documents and on-line graphics) on this web site is protected by copyright law. (C) 1998-2011 Sparx Systems Pty Ltd.