Parsing EDI file in IIB V10 - edi

I am very new to IIB V10 and am starting to work on it for a new project.
I need to parse EDI 999 file in IIB. Is there any node/component to do so? I will have multiple Success/Failure in y EDI 999 file and I need to parse them in IIB using some node and then go forward in the message flow.
I read that there is an HIPAA EDI parser but not much information is available on it. Is there a parser node or a component in IIB that can be used?
Any kind of help would be highly appreciated.
Thanks

Use the JavaCompute node in IIB V10 and do the EDI file parsing in Java. I found EDIReader parser the easiest.

Related

Creating EDI from Guidelines

I'm new to EDI, In my project I want to create EDI file from EDI design Guidelines. Can anyone help me for creating EDi from guidelines document.
If you are creating an EDI file you must be sending an outbound message to one of your trading partners. Your EDI design Guidelines MUST match theirs e.g. Protocol / Message Version etc so ensure that you are creating the file to their published specification.
There are some tools to create EDI Messages from structured design definitions. The Foresight EDISIM product may assist you here. However I would concentrate on mapping your own business data to the EDI Design Guidelines and to maximise this investment consider as many trading partners as possible that could also benefit from this outbound message.
You want to get as many trading partners using the same translation/map with as little change as possible. It sounds like you need a EDI translator. There are several products but the BOTS program is free. http://bots.sourceforge.net/

Tcl file parser for PYTHON

I have a .tcl file.
Is there any parser available which directly extracts data from .tcl file ? I don't want to use REGEX for this task. Is pyparsing will work for this problem ?
I am using Python 2.7
.tcl files are not data files, they are programming scripts, written in the Tcl programming language.
The Tcl language is extremely flexible in form and style, which makes writing a general-purpose parser a substantial project, whether in pyparsing or any other package. I encourage people, when they are embarking on a new pyparsing project, to begin by roughing out the BNF for the language, to whatever level of detail they want. This page from the Tcl wiki implies that developing a BNF for Tcl is not at all straightforward, if even possible.
It is very unlikely that anyone will respond to your question with an answer containing your Tcl-parser-implemented-in-Python. Perhaps there is a Tcl subset that you are particularly focused on - if you were to post some sample Tcl code and what you want to get from it, you are more likely to get helpful responses.

Can jInterface be used without nodes?

The whole node concept in Erlang assumes that the nodes are secure.. always. There are roundabout methods floating on how to solve this problem but no real Erlang node solution.
I am in the process of building nodes between Java and Erlang but have the problem of security. Now I am faced with ssl over tcp/udp. I don't want to write my own protocol (disregarding the application level protocol) if I don't have to.
Can I use jInterface to parse terms to & from an Erlang tcp/udp server if I use binary_to_term & term_to_binary on the Erlang side?
Of course you can use the library to decode terms. By the way there exist BERT (Binary ERlang Term) that you may use for communication.

HL7 version 3 parsing

I was parsing HL7 version 2.x messages through HAPI. Now I want to parse HL7 version 3 messages, which are in XML format. HAPI does not support HL7 version 3, so how can I do this?
HL7 version 3 is essentially XML-formatted HL7 data. As such, you could use any old XML parser. That said, you would have to build the intelligence re: segments etc... in yourself.
It does, however, appear that there is an HL7 v3 Java Special Interest Group, which has developed an API at least for RIM.
Another option would be to look at an integration engine. An open source option here is mirth. Mirth is a interface integration engine. It is a separate product - not a library you would integrate with your own. It can, however, take over the heavy lifting of converting HL7 to something more useful in your application - a Web Service call, a database insert, a differently formatted file (pdf, edi, etc).
Mohawk College publishes a Free and Open Source (FLOSS) API Framework for HL7 version 3 messaging and CDA Document processing called the "Everest Framework".
This framework is available for Java and .NET and comes with extensive examples and documentation on how to use HL7v3 messaging.
You can download the framework at (https://github.com/MohawkMEDIC/everest).
Support is also available via the GitHub project page.
This framework was developed through grant funding provided by the Natural Sciences and Engineering Research Council of Canada (NSERC) and Canada Health Infoway.
I used HL7 Java SIG some time ago (2008), but it is very easy to 1. create your own parser from the schemas using JAXB (Generate Java classes from .XSD files...?), or 2. create your own parser from scratch (I would suggest to use Groovy XMLSlurper http://www.groovy-lang.org/processing-xml.html).
You were asking for a link to the official parser for HL7v3 (go to the section under "v3 Utilities", I'll admit it's not easy to find but here it is:
http://www.hl7.org/participate/toolsandresources.cfm?ref=nav
They have some examples and data files to test with as well.

Is ANTLR an appropriate tool to serialize/deserialize a binary data format?

I need to read and write octet streams to send over various networks to communicate with smart electric meters. There is an ANSI standard, ANSI C12.19, that describes the binary data format. While the data format is not overly complex the standard is very large (500+ pages) in that it describes many distinct types. The standard is fully described by an EBNF grammar. I am considering utilizing ANTLR to read the EBNF grammar or a modified version of it and create C# classes that can read and write the octet stream.
Is this a good use of ANTLR?
If so, what do I need to do to be able to utilize ANTLR 3.1? From searching the newsgroup archives it seems like I need to implement a new stream that can read bytes instead of characters. Is that all or would I have to implement a Lexer derivative as well?
If ANTLR can help me read/parse the stream can it also help me write the stream?
Thanks.
dan finucane
You might take a look at Ragel. It is a state machine compiler/lexer that is useful for implementing on-the-wire protocols. I have read reports that it generates very fast code. If you don't need a parser and template engine, ragel has less overhead than ANTLR. If you need a full-blown parser, AST, and nice template engine support, ANTLR might be a better choice.
This subject comes up from time to time on the ANTLR mailing list. The answer is usually no, because binary file formats are very regular and it's just not worth the overhead.
It seems to me that having a grammar gives you a tremendous leg up.
ANTLR 3.1 has StringTemplate and code generation features that are separate from the parsing/lexing, so you can decompose the problem that way.
Seems like a winner to me, worth trying.

Resources