Author Topic: SysML How to define context specific value type properties contained in a proper  (Read 2357 times)

PeterHeintz

  • EA User
  • **
  • Posts: 812
  • Karma: +47/-17
    • View Profile

SysML 1.3 says this
A property can represent a role or usage in the context of its enclosing block. A property has a type that supplies its definition. A part belonging to a block, for example, may be typed by another block. The part defines a local usage of its defining block within the specific context to which the part belongs. For example, a block that represents the definition of a wheel can be used in different ways. The front wheel and rear wheel can represent different usages of the same wheel definition. SysML also allows each usage to define context-specific values and constraints associated with the individual usage, such as 25 psi for the front tires and 30 psi for the rear tires.

When I add a property typed e.g. with a ValueType to a SysML block (A) I can set the initial value (initial) in the properties dialog. But when is type a property in another Block (B) with Block (A) I cannot change the initial value of the property of type (A) in (B) anymore because the property dialog is somehow read only.

My idea is to define a Block with some ValueType properties in which I want to use as whole to type properties in various scenarios just by changing the values.
Example
Car Data
   Speed ValueType(km/h)
   Power ValueType (kW)

Lamborghini  Huracan
cd:Car Data
Speed=390
Power=456

Is it just a bug that properties of properties are read only?
Any idea to meet my goal?
Best regards,

Peter Heintz

Motlib

  • EA Novice
  • *
  • Posts: 2
  • Karma: +0/-0
    • View Profile
Hello,

I am working with EA 10, so I cannot say if this also applies for newer versions: The initial value of an attribute is something you define in the type of a property. My understanding is that this is the value that the attribute gets if nothing else is defined. So it is related to the type, not to the instance.

To set the value of an attribute in a property, you can right-click the property it in a diagram, select Advanced -> Set Property Values... and define the actual values of the attributes there.

HTH,

Motlib


PeterHeintz

  • EA User
  • **
  • Posts: 812
  • Karma: +47/-17
    • View Profile
Thank you for that!
The thing with SysML is that there are no attributes like in Classes, but properties. And a property can be typed by a ValueType (a kind of DataType in UML).
Although the menu item has the label “Set Property Values…” it tries to set Class “Atributes” rather than SysML “Properties” of type ValueType.

The other thing is, that SysML properties can be nested, so there is a need to set values at any level of the nested properties.
A workaround could be to define constraints, but this is unfortunately only possible on a “top level” property because saving changes on lower levels is disabled.
Using a SysML spec. "Property Specific Type" could also provide a workaround but is not supported by EA.
Best regards,

Peter Heintz