UML 2 Profiles Package: Как расширить Operation?(Прочитано 3994 раз)
Привет, гуру UML.

Я пытаюсь реализовать свой UML-профиль на С# на основе реализации метамодели на С#. Проблема в том, что я не понимаю как можно расширить класс Operation (например, Infrastructure::Core::Constructs::Operation) с использованием профилирования.

Ассоциация Extension из пакета Profiles разрешает метаклассу быть только типа Infrastructure::Core::Constructs::Class.

Infrastructure::Core::Constructs::Operation - это метакласс? Как его подставить вместоInfrastructure::Core::Constructs::Class? Ведь Operation не наследует от Class..

Подскажите кто сталкивался...



Re: UML 2 Profiles Package: Как расширить Operation? Ответ #1 : 20 Февраля 2009, 19:12:45
А где пытаетесь расширить профиль? В какой среде?



Re: UML 2 Profiles Package: Как расширить Operation? Ответ #2 : 15 Июня 2022, 20:01:15
Ну как тут мимо пройти...

Infrastructure::Core::Constructs::Operation -- это имя конкретного экземпляра метакласса, взятого из метамодели UML.
Infrastructure::Core::Constructs::Class -- это тип, к которому принадлежит любой экземпляр метакласса.
Нет нужды подставлять имя экземпляра вместо его типа.
В современной версии стандарта есть рис. 12.26, поясняющий это. Если заменить имя (значение слота name) экземпляра метакласса с "Class" на "Operation", то всё встанет на свои места.
[...и улетело НЛО.]




 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19