2012-02-09 134 views
2
  1. 我想知道是否可以在ANTLR/xText中定義EDIFACT語法,然後生成解析器。EDIFACT語法,解析器和庫(Java)

  2. 如果是這樣,這些語法已經定義,我們可以利用(開源優先)?

  3. 是否有任何開源庫可以讀寫除Smooks之外的EDIFACT?

+0

一對夫婦提到[這裏](http://stackoverflow.com/questions/2794262/is-there-any-good-open-source-edifact-parser-in-java)。 – Dmitri 2012-02-09 05:17:33

+0

@Dmitri除了smooks,其中大部分都是.Net,很少有java的人都死了... – 2012-02-09 12:52:31

+0

@Pangea smooks有什麼問題? :) – 2012-02-09 14:45:49

回答

2

從一個方便的書上的題目...(http://books.google.co.uk/books?id=rDbRS6vEG0MC&pg=PA222&lpg=PA222&dq=EDIFACT+bnf&source=bl&ots=pfFYf4nsVv&sig=JXY5HPo7Ka02ji35fjW8R8wFBX8&hl=en&sa=X&ei=05ozT6K5NMO80QWa-ZSLAg&ved=0CGEQ6AEwCA#v=onepage&q=EDIFACT%20bnf&f=false),我們有以下部分...

Screenshot from google books,這似乎表明,這不是一個好主意 - 儘管這取決於你需要你可以寫一個,我個人會發現Antlr更容易使用的工具(我目前正在爲Xtext寫一個實驗室,這是一個不太寬容的學習曲線),但是你的milage可能會有所不同...

0

我試過這種方法(使用ANTLR)當我開發機器人開源edi翻譯器(http://bots.sourceforge.net)時。 這看起來很不錯,但我沒有成功。 我的結論是ANTLR'解析'與'解析'edi文件是非常不同的東西;這些單詞/概念聽起來是一樣的,但這些是完全不同的世界。 如果您正在尋找'語法'(即:edifact和x12消息的描述),可以在sourceforge頁面的下載中找到它們。