Software Disclaimer

Class UML 2.5::StringExpression

Description:

A StringExpression is an Expression that specifies a String value that is derived by concatenating a sequence of operands with String values or a sequence of subExpressions, some of which might be template parameters.

Direct Superclasses: TemplateableElement, Expression

Direct Subclasses:

Class Precedence List: StringExpression, TemplateableElement, Expression, ValueSpecification, TypedElement, PackageableElement, ParameterableElement, NamedElement, Element

Properties:

owningExpression : StringExpression (0 1); -- source StringExpression
subExpression : StringExpression (0 *); -- source StringExpression
ownedTemplateSignature : TemplateSignature (0 1); -- source TemplateableElement
templateBinding : TemplateBinding (0 *); -- source TemplateableElement
operand : ValueSpecification (0 *); -- source Expression
symbol : String (0 1); -- source Expression
type : Type (0 1); -- source TypedElement
visibility : VisibilityKind (0 1); -- source PackageableElement
owningTemplateParameter : TemplateParameter (0 1); -- source ParameterableElement
templateParameter : TemplateParameter (0 1); -- source ParameterableElement
clientDependency : Dependency (0 *); -- source NamedElement
name : String (0 1); -- source NamedElement
nameExpression : StringExpression (0 1); -- source NamedElement
namespace : Namespace (0 1); -- source NamedElement
qualifiedName : String (0 1); -- source NamedElement
ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

Constraints:

No additional constraints.

Operations:

Signature: stringValue() : String;
Description: The query stringValue() returns the String resulting from concatenating, in order, all the component String values of all the operands or subExpressions that are part of the StringExpression.
Expression: result = (if subExpression->notEmpty() then subExpression->iterate(se; stringValue: String = '' | stringValue.concat(se.stringValue())) else operand->iterate(op; stringValue: String = '' | stringValue.concat(op.stringValue())) endif)



Send questions or comments to [email protected].