Я новичок в OCL, я использую papyrus on eclipse luna 4.4.2 У меня есть диаграмма классов с именем CLIENT с ограничением {все атрибуты недоступны} вторым классом с именем Customer with ограничение {все атрибуты являются обязательными}, а другой вызов класса, имеющий атрибут происхождения с ограничением {происхождение обязательным}
Как написать ограничение OCL, которое соответствует формальному языку? также хотел бы знать, как проверить правильность синтаксиса?Как написать противопоказание OCL
0
A
ответ
0
В случае коллекции он проверяет наличие непустоты и, в противном случае, на атрибут, который он проверяет на наличие ненулевого значения.
context Address inv: self.provenance->notEmpty()
Для других классов, которые вы должны сделать это для каждого атрибута. Если вы хотите сделать это для каждого атрибута с одним инвариантом, вам нужно сформулировать их на метамодели.
+0
Извините Ischuetze, Что означает мета-иерархия? вы имеете в виду имя класса? ожидаю услышать от тебя –
Смежные вопросы
- 1. Как работает OCL asSet?
- 2. наибольший общий делитель в ocl
- 3. Как это сделать в ocl?
- 4. Что такое * пакет * в OCL?
- 5. allInstances ассоциаций в OCL
- 6. Перевести SQL на OCL?
- 7. Экспрессия тела в OCL
- 8. OpenCV OCL логическое индексирование
- 9. Проверка проверки синтаксиса OCL
- 10. Функциональная функция OCL
- 11. Модуль OpenCV ocl -
- 12. Поиск по списку OCL
- 13. TypeInfo для OCL :: CRException
- 14. Вложенные OCL forAlls
- 15. Dresden OCL Load Constraints
- 16. Как сортировать два параметра в OCL?
- 17. Как подключить OCL к UML-профилям
- 18. Как получить упорядоченный набор в OCL?
- 19. Определить тип данных в OCL
- 20. Использование атрибутов OCL для даты
- 21. Поиск вложенных дубликатов в OCL
- 22. uml/ocl доступ к родительскому классу
- 23. Значение проверки OCL в параметре
- 24. Проверка неполного количества OCL AST
- 25. Любого противопоказание использования хранимых процедур, выполняющих SELECT, UPDATE, INSTERT
- 26. Проблема интеграции типов OCL в грамматике Xtext
- 27. Ограничение OCL UML-профиль Rational Software Architect
- 28. Использование структуры данных карты в OCL
- 29. Использование OCL в Maven/Tycho-безошибочный
- 30. Использование OCL и UML с шаблонами проектирования
Если вы хотите проверить синтаксис ограничений OCL, вы можете использовать оценочную консоль [Eclipse MDT/OCL] (https://wiki.eclipse.org/OCL) или попробовать [Dresden OCLs] (http : //www.dresden-ocl.org/index.php/DresdenOCL), где вы можете загрузить свою модель. Но имейте в виду, что Dresden OCL в настоящее время не имеет активного разработчика, но очень зрелый. – lschuetze
Уважаемый Реджи thx за ваш быстрый ответ, я все еще жду ответа на то, как написать ограничение OCL описать на каждом из классов Client, Customer и Address. может кто-то мне помочь –
Вы должны указать, что означает * вне сферы действия *. Кроме того, я не уверен, что вы можете перебирать все функции класса, поскольку это метапрограммирование. Есть ли много возможностей для каждого класса? – lschuetze