2011-12-23 172 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中可能比您準備做的要多。