业务规则Xtext语法

时间:2011-12-23 04:49:05

标签: eclipse dsl xtext

在工作中,我们使用的是业务规则语言,该语言最初是为“商业”人员设计的,但现在已经不再使用,程序员。 IDE / Eclipse插件不是我们称之为“IDE”的,但是现在我们想在独立IDE的最新版本中添加Eclipse插件,我们想要创建一个带有语法着色,检查等的Eclipse Editor插件。

我一直在寻找Xtext教程,但似乎无法掌握语法语言的概念,如果我提供一些商业语言的例子,有人可以提供语法示例和一些解释以及它正在做。

示例:

    varString is a string initially "Dog"; //String - 'a' can be interchanged with 'an'

    varInteger is a integer initially 0; //Integer - 'a' can be interchanged with 'an'

    varObject is some MyObject initially MyObject.newInstance( "Foo" ); //Object Creation

    while ( varInteger < varObject.size() ) do {
         varTemp = methodCall( parm1,
                               parm2,
                               parm3, );

         varTemp1 = methodCallWithCast( parm1,
                                        parm2,
                                        parm3, ) as a MyObject; //'a' can be interchanged with 'an'
    }

    if ( varObject.size() > 0 ) then {
    }

    if ( varObject is not null and
         varObject.size() < 0 ) then {
    }

请注意样式(括号之后/之前的空格,单独行上的参数)我正在跳跃以便能够检查,因为这是我们所遵循的编码标准,并且如果没有遵循则抛出错误

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要了解BNF(请参阅http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form),以便了解语法规则的编写方式,然后您需要找到业务规则语言的参考文档,或编写自己的语法规则。 然后,您可以考虑如何配置XText来帮助您。

我怀疑,鉴于您对语言处理工具的理解,将业务规则语言集成到XText可能比您准备做的更多。