2011-12-23 129 views
1

在工作中,我们使用的商业规则语言原本是专为'商业'人员编写的,但现在已经不再使用,程序员。 IDE/Eclipse插件并不是我们称之为'IDE'的东西,但现在Eclipse插件已添加到独立IDE的最新版本中,因此我们希望创建带有语法着色,检查等功能的Eclipse编辑器插件。业务规则Xtext语法

我一直在看Xtext教程,但似乎无法得到对语法语言的概念的掌握,并且如果我提供了一些商业语言的人可以提供一些grammarexample和一些解释的跳跃,并且它在做什么。

例子:

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 { 
    } 

注意,造型(空格之后/括号之前,在单独的行参数),我跳槽到能够检查,因为这是编码标准我们adhear来,如果没有遵循则抛出错误

谢谢!

回答

0

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

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