EDI data format

http://www.edidev.com/XMLvsEDI.html

EDI vs. XML

   EDI Tool for Developers

Issues

XML

XML reality

Traditional EDI

EDI reality

Think about it!

E-commerce

Standard

- New technology

- Internet based, easy to implement

- Many standards of multiple complex frameworks

- Not as simple to implement

- Old, pass� electronic standard

- Time tested and successfully works

- Straight forward to implement

-Why change it; it ain't broke

Cost

- Cheap to implement and cheaper to deploy via the Internet

- Tools and developers still cost money

- Consumer still pay for Internet connection

- Bandwidth usage can be costly

- Traditionally expensive

- Cost of tools are getting cheaper e.g. EDIdEv Framework EDI

- Can be implemented over the Internet

- Less bandwidth

-Why segregate when you can integrate

Data

Representation

 - Intuitive, easy to read

- Verbose

- Time consuming to implement

- Storage requirements increases

- Cryptic

- Once understood, quick to implement

- Storage requirements are minimal

- Information can still be transported on floppy disk

-Does the consumer really care

-Does your developer really understand

Companies pushing the technology

-New economy companies

- Consulting companies

- High business risk

- Established companies (Fortune 500) and governments

- Status quo

- Established global user base

- Low business risk

-Make a business decision not necessarily a technical one

What is EDI?
EDI or Electronic Data Interchange is the exchange of information in a standard format between computers without any human intermediary.

Has EDI become obsolete?
Far from it.  When the largest company in the world won't do business with you unless you do EDI; when the US health industry makes it mandatory to use EDI; when the world's energy companies are using EDI; when institutions that are sending people into space are using EDI; when Universities are sending students' records in EDI; and when a Department of Defense, with the largest budget ever, has an EDI system in place, then surely one can't say EDI is obsolete.

What is XML?
It's difficult to define XML (eXtensible Markup Language) in one sentence because of its dual function as a scripting language and a file format.  But, it is a technology that has evolved from HTML, which is the language used by Internet web pages.  Both HTML and XML are file formats that allow interaction with their user.  This feature that allows interaction separates XML from other EDI file formats like X12 and UN/EDIFACT.  Because EDI is defined as the exchange of data without any human intermediary, the XML format with its interactive feature does not fit into the definition of EDI without exception; otherwise the XML format (in standard format) would have been considered to be just like any other EDI standard formats.

Why would XML be compared to EDI, or "said" to replace it?
Although, there are some differences between both technologies, there is one function they both have that has a similar purpose, which brings about the debate.  Both EDI and XML formats are structured to describe the data they contain.  The main difference would be that the EDI structure has a  record-field-like layout of data segments and elements, which makes the EDI file shorter, but not easily understandable; while the XML format has tags, which is more easily understood, but making the file bigger and verbose.

Is XML a threat to EDI?
No, XML is good for EDI. Any technology that promotes e-commerce is good for EDI. For a company to fully appreciate EDI (or XML), it has to see its business transactions fully automated, and paperless.  An EDI/XML solution completes this picture of an automated and paperless transaction.  XML actually complements EDI.

Can't XML replace EDI for automated transactions?
Currently, XML can't replace EDI because XML doesn't yet have standard formats for industry transactions, which would make it difficult to create an automated system to parse business transactions.  The lack of standard also makes it impossible to create a validation acknowledgment file similar to EDI X12 997, which is used to acknowledge to the sender that the file was successfully translated by the receiver.  The XML format also creates files much larger than EDI files.

When XML comes up with a standard for all the Transaction Sets, would it then be able to replace EDI?
Possibly.  But the implementation of XML would then have the added difficulty of following a guideline and will therefore suffer the same complaints EDI gets of it being difficult.  The work of following an implementation guideline to make automated transactions possible between trading partners is time consuming, but can't really be avoided.

Is one more efficient than the the other?
They both have their strengths. If we were to replace an EDI transaction with XML, the file can get to be at least five times larger.  For example, below is an EDI segment..

 NM1*WT*1* Smith*John*C.~N3*610 E. Bel Aire Dr.*Suite 300~N4*Burbank*CA*91503

Besides the obvious name and address, the line above has implied information about the field structures (as defined by the EDI standard) - the data type of each element (e.g. alpha numeric); the minimum and maximum field length - and that the person above is a "Witness for Defendant".

Below would be XML's equivalent (with no field structure information):

<Witness for Defendant>
   <Person>
      <Last name>Smith</Last name>
      <First name>John</First name>
      <Middle name>C.</Middle name>
      <address1>610 E.  Bel Aire Dr.</address1>
      <address2>Suite 300</address2>
      <city>Burbank</city>
      <state>CA</state>
      <zip>91503< /zip>
   <Person>
</Witness for Defendant>

As you can see, an XML file can get to be five times bigger than an EDI file. And file size is very important especially when sending and receiving through the Internet.

Also, an EDI file is a binary file (please visit http://www.edidev.net/edidev-ca/samples/Gen832withPicture/Gen832.aspx), unlike XML which is a text file.  
Therefore, if you were to include image (binary) files into XML, it would have to be encoded first (convert binary characters to text), which would dramatically increase the file size even further.

On the other hand, EDI can't display itself as a document as readily as an XML document.

Does file size really matter now that disk storage is cheap?
The advancement of one technology should not be negated by another, otherwise what would we gain?  It's true that disk storage is much cheaper, but the disk space gained should not store the same information due to inefficiency; it should store more new information.  The same can be said about transmitting files. With the advent of broadband, we are able to transmit larger files, but this is  not  to mean so we can inefficiently transmit larger files that could not be done with dial-up.  It should mean that we can transmit the same amount of information - faster or with more data, like pictures and sound.  Also, CPU processing speed and RAM memory, are cheaper and faster, which should mean that the same same amount of information in a file should be processed in less time, and not so that we can process larger files for  the same information with no time gained.  

Is XML more readable than EDI?
EDI is full of codes which makes it hard to read in its raw format. But the fact of the matter is that since the transaction is between computer to computer without any human intermediaries, we humans shouldn't care about the readability of the raw format of the file. The file should be in a format that a computer can translate and generate best and also in a form most efficient in transporting over the Internet.  Once the EDI file has been translated into a database can applications written in other languages or scripts, like XML, bring the information up in a format of their choosing so that the information contained in the EDI file can be read easily.  Incidentally, XML in its raw format is just as difficult to read as EDI.  The XML format you view in your browser is not the raw XML format, but has already been processed by the browser so that the data are neatly arranged hierarchically, (which can also be done with an EDI file.  Please visit http://www.edidev.com/eFileManager.htm).  Below is a section of a raw XML format as viewed in a text editor.

<?xml version="1.0" encoding="ISO-8859-1" ?><EDI-X12-4010><Interchange-Control><SegmentRef Pos="0" ID="ISA" Description="Interchange Control Header"><Element Pos="01" ID="I01" Description="Authorization Information Qualifier" Type="ID" MinLength="2" MaxLength="2" Value="00"/><Element Pos="02" ID="I02" Description="Authorization Information" Type="AN" MinLength="10" MaxLength="10" Value=" "/><Element Pos="03" ID="I03" Description="Security Information Qualifier" Type="ID" MinLength="2" MaxLength="2" Value="00"/><Element Pos="04" ID="I04" Description="Security Information" Type="AN" MinLength="10" MaxLength="10" Value=" "/><Element Pos="05" ID="I05" Description="Interchange ID Qualifier" Type="ID" MinLength="2" MaxLength="2" Value="ZZ"/><Element Pos="06" ID="I06" Description="Interchange Sender ID" Type="AN" MinLength="15" MaxLength="15" Value="RECEIVERISA "/><Element Pos="07" ID="I05" Description="Interchange ID Qualifier" Type="ID" MinLength="2" MaxLength="2" Value="14"/><Element Pos="08" ID="I07" Description="Interchange Receiver ID" Type="AN" MinLength="15" MaxLength="15" Value="0073268795005 "/><Element Pos="09" ID="I08" Description="Interchange Date" Type="DT" MinLength="6" MaxLength="6" Value="960807"/><Element Pos="10" ID="I09" Description="Interchange Time" Type="TM" MinLength="4" MaxLength="4" Value="1548"/><Element Pos="11" ID="I10" Description="Interchange Control Standards Identifier" Type="ID" MinLength="1" MaxLength="1" Value="U"/><Element Pos="12" ID="I11" Description="Interchange Control Version Number" Type="ID" MinLength="5" MaxLength="5" Value="00401"/><Element Pos="13" ID="I12" Description="Interchange Control Number" Type="N0" MinLength="9" MaxLength="9" Value="000000020"/><Element Pos="14" ID="I13" Description="Acknowledgment Requested" Type="ID" MinLength="1" MaxLength="1" Value="0"/><Element Pos="15" ID="I14" Description="Usage Indicator" Type="ID" MinLength="1" MaxLength="1" Value="T"/><Element Pos="16" ID="I15" Description="Component Element Separator" Type="AN" MinLength="1" MaxLength="1" Value="&gt;"/></SegmentRef><Functional-Group-Control><SegmentRef Pos="0" ID="GS" Description="Functional Group Header"><Element Pos="01" ID="479" Description="Functional Identifier Code" Type="ID" MinLength="2" MaxLength="2" Value="IN"/><Element Pos="02" ID="142" Description="Application Sender's Code" Type="AN" MinLength="2" MaxLength="15" Value="RECEIVERGS"/><Element Pos="03" ID="124" Description="Application Receiver's Code" Type="AN" MinLength="2" MaxLength="15" Value="007326879"/><Element Pos="04" ID="373" Description="Date" Type="DT" MinLength="8" MaxLength="8" Value="19960807"/><Element Pos="05" ID="337" Description="Time" Type="TM" MinLength="4" MaxLength="8" Value="1548"/><Element Pos="06" ID="28" Description="Group Control Number" Type="N0" MinLength="1" MaxLength="9" Value="000001"/><Element Pos="07" ID="455" Description="Responsible Agency Code" Type="ID" MinLength="1" MaxLength="2" Value="X"/><Element Pos="08" ID="480" Description="Version / Release / Industry Identifier Code" Type="AN" MinLength="1" MaxLength="12" Value="004010"/></SegmentRef>

Below is the equivalent raw EDI file as viewed in a text editor.

ISA*00* *00* *ZZ*RECEIVERISA *14*0073268795005 *960807*1548*U*00401*000000020*0*T*>~GS*IN*RECEIVERGS*007326879*19960807*1548*000001*X*004010~

So realistically (and to be fair), neither EDI nor XML should be worked on or viewed at with a text editor, but with their respective and appropriate tools.

Is it more difficult and expensive to process an EDI file than an XML file?
A major advantage XML has over EDI is that programming languages have already included in them functionalities to parse XML documents.  So basically, if you're a programmer, there is no additional cost for an XML parser, which has been one of the reasons XML is popular.  But the XML parser itself, does not provide a solution for XML's shortcomings of being large, verbose and lacking of document standards.

Does EDI have any inexpensive tools?
The main difference between processing EDI documents and an XML documents is that an EDI document has a standard implementation guideline that one has to adhere to, which  is  not easy especially when every EDI transaction type has its own standard format.  One would have to be able to parse and validate tens-of-thousands of different types of Transaction Sets or  messages. Quite a tedious task if you don't have any tools.   But, EDIdEv has the Framework EDI tool that not only parses EDI files, but can also validate them. It's priced at about $995.

What's the difference between EDIdEv and other EDI translators and generators?
EDIdEv Framework EDI includes COM and .NET components designed to be used within your program.  It is not an application like other translators, so EDI functions to translate, generate or validate EDI files are native to your own application, which can be called whenever and however depending on your business logic.  This makes for a more robust tailored EDI solution. 

Is EDI rigid while XML isn't?
Machines don't translate files like humans do. If there are things missing in a file that a computer is expecting, wrong information can be obtained, or may even breakdown the entire processing. EDI files are for transactions between machines, so EDI applications must be strict to adhere to the standard. This rule also applies to XML.  Trading partners would still have to agree on a format before they can actually start exchanging XML files.  Also, EDI is not as rigid as most people think.  It does have a standard format for its messages, but within this standard format, EDI allows companies or industries to include their own requirements.  Click here for an example of how an EDI schema is modified to include a binary segment to support image files in an EDI document.

Does EDI still require a VAN (Value Added Network)?
Before the Internet, the VAN would be the means for EDI files to be distributed among trading partners. The downside of this was that trading partners had to use the same VAN to do business with each other. This had a 'close' design or equivalent to an Intranet. But with the popularity of the Internet, there is no reason why one can't design VANs that can exchange EDI files with each other (like Postal Offices). VANs are great in that they simplify the distribution of EDI files, but companies can bypass VANs altogether, and simply send EDI transactions directly to each other's mailbox.  EDI files are like any other files on the Internet, and needn't be sent and received any differently.  (For other ways of sending EDI files, click here.)

Is an XML system real-time while EDI is not?
The format of a file has nothing to do with the timing of a process.  Real-time processing depends on the design of the system and how readily it allows users to access a company's database.  

Why do some users prefer XML over EDI?
XML's formatting is easy and very understandable.  Users do not have to be taught that it consists of tags to describe data they enclose - it's understood.  This simplicity is the main reason why users tend to initially prefer XML over EDI.  However, its simplicity is also its limitation, which limits XML's advantage over EDI on only simple transactions.  Basically, XML is a step-up from  a delimited file.  If one where to exchange more complex documents like an invoice or health insurance claim, it becomes more difficult to use XML because the file becomes huge, cumbersome, and impossible to validate.  It becomes unmanageable.  On the other hand, the appearance of an EDI format looks cryptic.  But once understood, one can appreciate its efficient, well thought-out and comprehensive design for automated document transfer.  So, why change it; it ain't broke.

Click here to download Framework EDI 

 

Please read other articles relating to the topic:

Other Topics

 

  Home

  Evaluate Framework EDI

  Source Code Examples

  Purchase

  Support

  About EDIdEv LLC

EDIdEv - EDI Development
www.edidev.com

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
<br> Framework EDI ActiveX控件 是一个EDI软件开发工具箱,包括对EDI解决方案有用的ActiveX/COM和工具。使用FREDI,在几天之内就能创建EDI系统,能实现构建,转换,验证和传输EDI文件等功能。<br><br> Framework EDI ActiveX控件 工具箱具有EDI的功能和命令,开发者可以写较少的代码就能快速构建功能完善的符合公司要求的EDI方案。 <br><br> Framework EDI ActiveX控件V5.1的特色: EDI生成器:自动创建输出(outbound) EDI文档; EDI文件转换器:EDI剖析器读取输入(inbound) EDI消息; EDI分析器:使EDI文件生效并且自动产生Functional Acknowledgments (997) 或 Syntax Messages (CONTRL)。 传输EDI文件:支持FTP, SMTP, HTTP, HTTPS和AS2,传输文件和接收文件; 保护EDI文件:支持X12.58安全结构和AS2; 支持X12 和 UN/EDIFACT标准:使用SEF文件支持EDI X12 和 EDI UN/EDIFACT的所有版本。 Framework EDI ActiveX控件V5.1包括以下工具: eFilemanager:用于浏览小的EDI文件; eAnalyzer:用于检测和修改EDI消息里的错误; SEF管理器:用于浏览和编辑SEF文件里的向导行; SourceCodeMaker SM-Plug-In(仅限企业版):产生转换和生成EDI文件的原代码; SEF Reader:以更易阅读的方式浏览SEF文件,这是个免费软件。 使用FREDI的10个原因: FREDI ActiveX / COM是一个功能强大的EDI组件,容易使用和运行; FREDI功能让EDI文件使用更简单和更容易理解; 这是一个创新的技术,专门解决EDI文件相关的问题; FREDI能加密和压缩EDI消息,因此在Internet上传输更快更安全; FREDI使文档有效,因此所创建和读取的文件符合EDI标准; FREDI自动产生Functional Acknowledgments (997) 或 Syntax Messages (CONTRL); 在很短时间内,以很少的成本构建一个EDI方案,符合EDI标准; 已有500多使用者(包括财富杂志500强企业和美国政府机构)把FREDI作为EDI方案; FREDI非常划算,只需要955美元,而且有EDI专家支持,不需要年费; 最重要的原因是:FREDI使得EDI工作乐在其中! Framework EDI ActiveX控件V5.1的系统最低要求: Windows 98/2000/NT4.0/XP; 256 MB内存; Pentium III 1GHz; 1GB磁盘空间。
Sure, here's the procedure you requested: ``` DumpMemory PROC uses ebx esi edi, pAddress:PTR BYTE, // pointer to the start of the memory block dwBytes:DWORD, // size of the memory block in bytes dwType:DWORD // type of the memory block (see the Irvine32 library for a list of types) ; This procedure encapsulates the DumpMem procedure in the Irvine32 library ; and displays the contents of the memory block starting at pAddress ; with the specified type and length. ; Save the registers that will be modified push ebx push esi push edi ; Call the Irvine32 DumpMem procedure lea ebx, pAddress mov esi, dwBytes mov edi, dwType call DumpMem ; Restore the registers pop edi pop esi pop ebx ret DumpMemory ENDP ``` And here's an example test program that calls the DumpMemory procedure with different data types: ``` include Irvine32.inc .data array1 BYTE 10h, 20h, 30h, 40h, 50h array2 WORD 1000h, 2000h, 3000h, 4000h, 5000h array3 DWORD 100000h, 200000h, 300000h, 400000h, 500000h array4 QWORD 1000000000h, 2000000000h, 3000000000h, 4000000000h, 5000000000h message1 BYTE "Dumping array1:", 0 message2 BYTE "Dumping array2:", 0 message3 BYTE "Dumping array3:", 0 message4 BYTE "Dumping array4:", 0 .code main PROC ; Dump array1 lea ebx, message1 call WriteString INVOKE DumpMemory,OFFSET array1,LENGTHOF array1,TYPE BYTE ; Dump array2 lea ebx, message2 call WriteString INVOKE DumpMemory,OFFSET array2,LENGTHOF array2,TYPE WORD ; Dump array3 lea ebx, message3 call WriteString INVOKE DumpMemory,OFFSET array3,LENGTHOF array3,TYPE DWORD ; Dump array4 lea ebx, message4 call WriteString INVOKE DumpMemory,OFFSET array4,LENGTHOF array4,TYPE QWORD exit main ENDP ``` This program creates four different arrays of different data types, and then calls the DumpMemory procedure to display their contents. The output should show the memory contents of each array in hexadecimal format.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值