业务规则Xtext语法



在工作中,我们使用一种业务规则语言,它最初是为"业务"人员设计的,但现在已经被程序员使用了。IDE/Eclipse插件不是我们所说的"IDE",但现在Eclipse插件已经添加到最新版本的独立IDE中,我们想创建一个具有语法着色,检查等功能的Eclipse编辑器插件。

我一直在看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 {
    }

请注意样式(括号之后/之前的空格,单独行上的参数),我希望能够检查,因为这是我们所遵循的编码标准,如果不遵循

则抛出错误。

谢谢!

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

我怀疑,考虑到您对语言处理工具的理解,将业务规则语言集成到XText中可能比您准备的要多。

最新更新