在ATL上进行优化转换

时间:2018-07-12 10:59:35

标签: uml ocl eclipse-atl

Hiii   我正在写一个ATL转换,它将OCL表达式从forALL转换为存在。但它不能像运行转换后那样创建具有相同约束的新OCL文件

这是规则,有人可以告诉我这是怎么回事

rule IteratorExpressionfromforAlltoexists{

    from s: OCL!IteratorExp(
    s.oclIsTypeOf(OCL!IteratorExp) and s.name = 'forAll' and 
    --s.source.source.oclIsTypeOf(OCL!OclExpression))
            if s.source.oclIsTypeOf(OCL!OperationCallExp) then 
                if s.source.name = 'allInstances' then
                    false
                else true
                endif
            else true
            endif
            ) 

    to t: OCL!IteratorExp(

     name <- 'exists'

         )   
    }

0 个答案:

没有答案