什么是独角兽企业| 25是什么生肖| 32周做什么检查| 不速之客是什么意思| 脸色发黑发暗是什么原因| 耳朵前面有痣代表什么| 一人吃饱全家不饿是什么生肖| 龙虾不能和什么一起吃| 遗传是什么意思| 什么是纳豆| 隔夜茶为什么不能喝| 咳白色泡沫痰是什么病| 包皮真菌感染用什么药| 0706是什么星座| 检查艾滋病挂什么科| 福肖指什么生肖| 无水酥油是什么油| 胡萝卜什么颜色| 尿路感染是什么症状| 人不出汗是什么原因| 电子证件照是什么| 副厅级是什么级别| 舌头挂什么科| 什么是马上风| 胃发炎吃什么药好得快| 乙肝表面抗体定量偏高什么意思| 氨酶偏高是什么意思| 怀孕呕吐吃什么可以缓解| 三月有什么节日| 2月7日是什么星座| 老友记是什么意思| 开荤是什么意思| guess什么意思| 寿元是什么意思| aq是什么| 奶奶过生日送什么礼物| 走马观花的走是什么意思| 备孕检查什么项目| 此生不换什么意思| 脸上长红色的痘痘是什么原因| 存在是什么| 神经病吃什么药效果好| 炒菜用什么锅好| hvi是什么病| 为什么心慌| 身份证后四位代表什么| 阴道b超检查什么| 蚕豆病是什么病| 穿裙子搭配什么鞋子| 肠息肉是什么原因引起的| 法令纹上的痣代表什么| 喉咙痛吃什么药好得快| 飞机不能带什么| 测试你是什么样的人| 痴汉是什么意思| 疣体是什么| 司令是什么意思| 手心发红是什么原因| 强直性脊柱炎吃什么药| 乳房有溢液是什么原因| 狗不吃饭是什么原因| 11月21是什么星座| 女人的排卵期是什么时候| 脉弦滑是什么意思| 七活八不活是什么意思| acg文化是什么意思| 甲鱼和乌龟有什么区别| 大肠炒什么菜好吃| 青霉素是什么| 小朋友膝盖疼是什么原因| 什么时候收复台湾| 牙银肿痛吃什么药| 舌吻什么感觉| 麻辣拌里面都有什么菜| 张五行属什么| 突然便秘是什么原因引起的| 王白读什么| 温度计里面红色液体是什么| 肾小球滤过率偏高说明什么| 岗位等级是什么意思| 吃什么东西最营养| 辟邪剑谱和葵花宝典有什么关系| 弥补是什么意思| 无的放矢什么意思| 判决书什么时候生效| 胆囊充盈欠佳什么意思| 清华大学校长什么级别| 脾虚湿盛吃什么中成药| 投诉医生打什么电话| 白狐寓意着什么| 前列腺吃什么食物调理| 什么时候可以考研| 片酬是什么意思| 屁股后面骨头疼是什么原因| 什么的山谷| 收缩压低是什么原因| 花代表什么数字| 脑供血不足有什么危害| 12388是什么电话| 胃炎有什么症状| 子宫形态不规则是什么意思| 孕酮低跟什么有关系| 氮泵是什么| 发烧有什么症状| 吃什么升白细胞最快| 头小脸小适合什么发型| 沾花惹草是什么生肖| 先天性巨结肠有什么症状| 为什么眼泪是咸的| 验血脂挂什么科| 风声鹤唳是什么意思| 什么叫提供情绪价值| 生不如死是什么生肖| 佛山有什么特产| 蚊子最怕什么味道| 嬗变什么意思| 心绞痛是什么原因引起的| 脚踩棉花感见于什么病| 什么样的秋天| 瞌睡多什么原因| bigbang什么意思| 樱桃补什么| 血红蛋白升高说明什么| 两个马念什么| 华萨尼男装是什么档次| 查高血压挂什么科| 胃疼应该挂什么科| 科颜氏属于什么档次| 亚专业是什么意思| 经信委是干什么的| 即使什么也什么| 胆囊切除对身体有什么影响| 是什么货币符号| 梦见前男友是什么意思| 为什么养鱼养单不养双| 肝硬化有什么症状表现| 心静自然凉是什么意思| 抽血抽不出来是什么原因| 消肿吃什么药| 喝酒对胃有什么伤害| 蜂窝数据什么意思| 梦见动物是什么意思| 姓叶的男孩取什么名字好| dmp是什么意思| 吃什么可以偷偷流产| 荷花是什么季节开的| 什么时候闰五月| 胖大海是什么东西| 减肥为什么让早上空腹喝咖啡| 经期延长是什么原因引起的| 梦见输液是什么意思| 月子里头疼是什么原因| 夜深人静是什么意思| mido手表什么牌子| tc是什么| 玉米须有什么作用| 咳嗽头晕是什么原因| 什么的植物| 尿隐血是什么问题| 支气管炎吃什么药有效| 葡萄胎有什么症状反应| 朝鲜钱币叫什么| 天使轮是什么意思| 7月8号什么星座| 尿液是什么味道| 为什么睡不着觉会胡思乱想| 什么是网红| GOLF是什么品牌| 玉米淀粉是什么| 雪莲果什么时候成熟| 嗓子疼看什么科室| 香港是什么时候回归的| mfd是什么意思| 全日制专科是什么意思| 老人出汗多是什么原因| 为什么医生不建议献血小板| 指甲脱层是什么原因| 芽轴发育成什么| 阿斯巴甜是什么| 子宫内膜厚是什么意思| 十年是什么婚| 胃得宁又叫什么名字| 物以类聚形容什么动物| 阳离子是什么面料| 沉网和浮网有什么区别| 用盐水洗脸有什么好处| 薄荷泡水喝有什么功效| 肠胃出血有什么症状| 排斥一个人什么意思| 什么叫意识| 女红是什么意思| 检查脖子挂什么科| 小肠气有什么症状| 增强免疫力打什么针| 白内障的主要症状是什么| IQ是什么| 曲苑杂坛为什么停播| 吃什么药死的快| 五常法指的是什么| 九死一生是指什么生肖| 泡鲁达是什么| 吃什么有助于骨头愈合| 工字五行属什么| 吃高血压药有什么副作用| 什么是回南天| 茶学专业学什么| 腔隙性脑梗吃什么药| 婊子代表什么生肖| 头皮痒用什么洗头好| 化疗与放疗有什么区别| 尿道口为什么叫马眼| 四月二十四是什么星座| 扁平疣吃什么药| 相中是什么意思| 即视感是什么意思| 吃芒果过敏是什么症状| 日不落是什么意思| 天亮是什么时辰| 最大的哺乳动物是什么| 皮肤黄是什么原因| 怎么知道自己五行缺什么| 谢霆锋什么学历| 三八妇女节送什么好| 2月14日是什么星座| 舰长是什么级别| 叔叔的儿子叫什么| 上火耳鸣吃什么药最好| 97年出生属什么| 什么是物理| 玻璃水是干什么用的| yet什么意思| 400年前是什么朝代| 海参有什么营养价值| pt是什么意思| 痹病是什么意思| 经常想吐恶心是什么原因| 降钙素原是什么意思| 传导阻滞吃什么药| 高筋面粉适合做什么| 为什么会尿路感染| 怕冷不怕热是什么体质| 烂好人是什么意思| 病毒感染是什么原因| 吃什么药提高免疫力| tl是什么意思| 什么长而什么| 恩五行属什么| 笔名是什么意思| 什么是中药| 7月13日是什么星座| 甲状腺什么原因引起的| 才子男装什么档次| 妇乐颗粒的功效能治什么病| 潴是什么意思| sport什么品牌| 赵云字什么| 尿液发黄是什么病| 焦虑症用什么药好| 六味地黄丸有什么副作用| 低蛋白血症是什么病| 脾大是怎么回事有什么危害| 炖猪蹄放什么调料| 家里适合养什么花| 诗经是什么朝代的| 百度Jump to content

牙龈萎缩是什么原因引起的

From Wikipedia, the free encyclopedia
百度 有宋一朝,书法成为一门独立的学问,高超的书艺与高妙的学问一起,同时受到人们的尊敬。

The Object Constraint Language (OCL) is a declarative language describing rules applying to Unified Modeling Language (UML) models developed at IBM and is now part of the UML standard. Initially, OCL was merely a formal specification language extension for UML.[1] OCL may now be used with any Meta-Object Facility (MOF) Object Management Group (OMG) meta-model, including UML.[2] The Object Constraint Language is a precise text language that provides constraint and object query expressions on any MOF model or meta-model that cannot otherwise be expressed by diagrammatic notation. OCL is a key component of the new OMG standard recommendation for transforming models, the Queries/Views/Transformations (QVT) specification.

Description

[edit]

OCL is a descendant of Syntropy, a second-generation object-oriented analysis and design method. The OCL 1.4 definition specified a constraint language. In OCL 2.0, the definition has been extended to include general object query language definitions.[3]

OCL statements are constructed in four parts:

  1. a context that defines the limited situation in which the statement is valid
  2. a property that represents some characteristics of the context (e.g., if the context is a class, a property might be an attribute)
  3. an operation (e.g., arithmetic, set-oriented) that manipulates or qualifies a property, and
  4. keywords (e.g., if, then, else, and, or, not, implies) that are used to specify conditional expressions.

Relation

[edit]

OCL and UML

[edit]

OCL supplements UML by providing expressions that have neither the ambiguities of natural language nor the inherent difficulty of using complex mathematics.[3] OCL is also a navigation language for graph-based models.

OCL and MOF

[edit]

OCL makes a Meta-Object Facility model more precise by associating assertions with its meta-elements.

OCL and QVT

[edit]

Of particular importance to Model Driven Engineering (MDE) or model-driven architecture is the notion of Model transformation. The OMG has defined a specific standard for model transformation called MOF/QVT or in short QVT. Several model transformation languages like GReAT, VIATRA, or Tefkat are presently available, with different levels of compliance with the QVT standard. Many of these languages are built on top of OCL, which is the main part of the QVT-compliance.

Alternatives

[edit]

Being a rule-based validation language, Schematron may be considered an alternative to OCL. However Schematron works for Extensible Markup Language (XML) trees while OCL makes it possible to navigate MOF-based models and meta-models (i.e. XML Metadata Interchange (XMI) trees). In other words, OCL relates to UML or MOF similarly to how Schematron relates to XML. (Note that Schematron uses XPath to navigate inside the XML trees.)
Being a model specification language permitting designers to decorate a model or a meta-model with side-effect-free annotations, OCL could be replaced by languages like Alloy. Automated OCL generation is in principle possible from natural language.[4]

Examples
Constraint OCL Equivalent
The age of a person is not negative. context Person inv: self.age >=0
A person is younger than its parents. context Person inv: self.parents->forAll(p|p.age>self.age)
After a birthday, a person becomes one year older. context Person::hasBirthday() post: self.age=self.age@pre+1
A Person has 2 parents at max. context Person inv: self.parents->size()<=2
After somebody has a child, his/her child-set is not empty, and it is larger than before. context Person::getsChild() post: self.childs->notEmpty() and self.childs->size() > self.childs@pre->size()
Only an adult can be owner of a car. context Person inv: self.age<18 implies self.cars->isEmpty()
The first registration of a car can not be before it is built. context Auto inv: self.registration>=self.constructionYear
Every Person that has a car has at least one car which is younger than the Person. context Person inv: self.cars->notEmpty() implies self.cars->exists( c | Calendar.YEAR - c.constructionYear < self.age)
Nobody can be his/her own parent. context Person inv: self.parents->excludes(self)
There's at least one Person which owns a car. context Person inv: Person.allInstances()->exists(p | p.cars->size() > 0)


Extensions

[edit]

Eclipse OCL [5] extends Standard OCL with additional operators and a type for Maps. AgileUML extends Standard OCL with Map and Function types.[6] These extensions are consistent with the map and function types present in modern programming languages such as Python and Swift.

See also

[edit]

References

[edit]
  1. ^ Object Management Group (OMG); Object Constraint Language Specification, Chapter 7 of OMG Unified Modeling Language Specification, Version 1.3, March 2000 (first edition)
  2. ^ Object Management Group (OMG); Object Constraint Language OMG Available Specification Version 2.0, May 2006
  3. ^ a b This article is based on material taken from Object+Constraint+Language at the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.
  4. ^ Imran Sarwar Bajwa (October 2010). "OCL Constraints Generation from Natural Language Specification, 2010". IEEE. doi:10.1109/EDOC.2010.33. S2CID 7495256. {{cite journal}}: Cite journal requires |journal= (help)
  5. ^ "Eclipse OCL? (Object Constraint Language)". 31 January 2013.
  6. ^ Lano, Kevin; Kolahdouz-Rahimi, Shekoufeh (2021). "Extending OCL with Map and Function Types". Fundamentals of Software Engineering. Lecture Notes in Computer Science. Vol. 12818. pp. 108–123. doi:10.1007/978-3-030-89247-0_8. ISBN 978-3-030-89246-3. S2CID 239029860.
[edit]
急性肠胃炎吃什么 鸽子夏天喝什么水好 mandy英文名什么意思 KP什么意思 莳字五行属什么
这是什么情况 什么生肖不能养龟 病入膏肓什么意思 口比念什么 谢娜人气为什么那么高
cs是什么元素 怀孕第一个月有什么反应 寻麻疹是什么症状 男人吃逍遥丸治什么病 基酒是什么意思
27度穿什么衣服合适 肠道湿热吃什么药 经常咬手指甲是什么原因 锤子什么意思 财评是什么意思
有何指教是什么意思fenrenren.com 牙齿一碰就疼是什么原因xinjiangjialails.com 落荒而逃什么意思hcv8jop3ns5r.cn 为什么感冒药吃了想睡觉cl108k.com 破处是什么感觉hcv7jop9ns9r.cn
河南古代叫什么hcv8jop8ns9r.cn 什么头什么节hcv9jop3ns4r.cn kitty是什么意思helloaicloud.com 尹是什么意思hcv9jop5ns3r.cn 什么是肾阴虚hcv9jop1ns6r.cn
风寒感冒流鼻涕吃什么药yanzhenzixun.com 鲜章是什么意思hcv9jop8ns1r.cn 血小板低吃什么好补travellingsim.com 喉炎用什么药hcv7jop9ns2r.cn 什么是消毒hcv9jop3ns7r.cn
黑今读什么hcv9jop3ns9r.cn 不可或缺是什么意思hcv8jop8ns4r.cn 不寐病是什么意思hcv8jop2ns7r.cn 男字五行属什么hcv8jop5ns6r.cn 什么是周岁hcv9jop4ns0r.cn
百度