Symphonia.
Symphonia Messaging Toolkit A developer s productivity tool that Reduces development time by 90% Message Definition Huge Message Libraries Message Testing - Explorer Symphonia Engine (processes over 3,000,000 messages per hour) XML Message Definition Programming Components Dynamic Binding Message Mapping Instantly creates ActiveX objects
EDI and XML Messaging EDI (Eletronic Data Interchange) EDI describes the movement of business-orientated information in a structured format between computer applications MSH ^~\& TAT SBCL ATNGITEST1 182478 199909161440 ORU^R01 08980 P 2.3 PID 0004015 AT003398T TEST^CORRECTED 2 19740418 F 0004015 OBR 1 0004015 AT003398T 353 DR NO AT 199909161440 F OBX 1 NM 45009600^C4S^SBCL 1 62 MG/DL 16-47 H C AT NTE 1 ************************* NTE 2 ** => AMENDED RESULT ** NTE 3 ************************* Standards HL7, EDIFACT, X12, HIPPA, HCFA, NCPDP, any user defined formats XML A replacement for EDI? Markup language for documents containing structured information Message Mapping So different systems can talk
What is Symphonia Symphonia 3 is an easy-to-use toolkit that allows vendors, consultants and developers to rapidly add messaging capabilities to new, existing and legacy applications. Four Applications o EDI Message Designer (create definitions, documentation, customize standards) o Explorer (debug messages, send, receive and log sample messages) o XML Message Designer (create XML schema definitions) o Symphonia Mapper (define and test message mappings)
What is Symphonia At the heart of the Symphonia 3 toolkit is the Symphonia engine. This parses an extensive range of EDI protocols and any user-defined formats. It is extremely fast and supported on a variety of operating systems. In addition to this is the Mapper Engine, which is also fast and again has cross platform support. Two Engines o EDI Symphonia Engine omapperengine Wrappers for XML, TCP etc The EDI Symphonia Engine has Unicode support
Using Symphonia for EDI Messaging omposer essage esigner Explorer Message Testbench Intergate Symphonia into your own Application so easy
Using Symphonia with Java Java developers are well supported by Symphonia Java Classes be used instead of ActiveX objects
Symphonia and XML ML ocument reation is ade so much asier with he help of ML Composer as Java upport now oo. enerated ava classes rap the racle DOM
Message Mapping Input/Outputs Define mapping Implement mapping Using EDI and XML Composer define your input and output definitions testing Creating a mapping is as simple as drag and dropping more complex mapping can be creating via a simple C based programming language external dll and COM functions Has a Java Mapping Engine as well as Unix ports
EDI Message Designer
EDI Message Designer allows you to define. Messages Segments (the building blocks of messages) Composites (Complex datatypes) Validation tables (enforced field values) Message set properties (separators) Field Instances (override composites locally) Notes And generate RTF/HTML documentation ActiveX objects, Java classes, Parser control files
Symphonia Libraries The wizard can be run to import messages from the Library. Select the messaging standard and then the messages you require.
EDI Message Designer Symphonia s tool to construct and modify message definitions Segments Messages Composites Validation Tables Message structure
Fields.. Fields can be added and edited Required, Length, Repeat properties can be set Datatypes can complex compostie datatypes Validation Tables
Separators define message separators for a set of messages Separators value can be set and modified Separator Replacements are also supported Fixed or variable..the message defines its own separators
Message Type determination..setup by matching the values in the values in the message type fields with the message tag for a particular message. Properties..and/or use the message match list Message type fields
Programming with Symphonia Developers have a number of options to choose from: Generate ActiveX objects (DAGs) COM parsing engine C++ or Java parsing engine s Java classes This means the following operating systems are supported. Windows XP, 2000, NT 3.5, 98, 95 Unix, HPUX, DGUX, Solaris, Linux and others VMS, MacOS etc
Direct ActiveX Generation Generate an ActiceX object that Encapulates your message definition and the Symphonia Engine Select the DAG generation option Enter a name and filename for the ActiveX object Unicode support is available
Using the DAG in VB
Other Development Tools The DAG can be used in any of the following development environments. Delphi ASP Visual C++ PowerBuilder C++ Builder C##..any COM Compliant development language
Generating a Parser Control File A PCF file can be quickly generated for your message definition
Using the PCF The PCF generic classes don t need to recompile the application. PCF files can be used by the following engines Java Parsing engine COM Parsing engine C++ Parsing engine Additionally Composer can generate Java classes
Using the PCF Creating a batch message. Load the PCF file in to the Messagefactory. Messages can be created using MessageElements passing component names as parameters. Repeating fields/segments can be added using AppendElement
DAG vs PCF DAG avantages Easy to program with Can be used in any COM Compliant language PCF avantages No need to recomplie you applications Deployable across many kinds of OS DAG disadvantages If you change your definition the DAG needs to be regenerated and your application recomplied Only runs on Windows PCF disadvantages More complex to program with..fields can t be accessed using code inslight Typical uses. Small applications written for a single site, in a development language like VB or Delphi Typical uses. Larger applications written for deployment on multiple sites, that may run on various OS s
TCP ActiveX Object Symphonia also contains a TCP object for sending and receiveing messages TCP Object Object handles Message Trailer and Headers Input parser Handling Events like Connections and receiving messages from external applications is easy Parse message strings into usable objects
Report Generation Generate reports for your message definition in seconds. RTF documents generated and display in Word with full table of contents support HTML reports can be generated also Your documentation is never out of date!!!
Flat File Formats In addition to message standards, user defined formats can be created. Comma delimited flat message definitions can be set up..,
Fixed Width Formats and fixed width message definitions
Explorer EDI Message Test Bench
Symphonia Explorer Explorer is a window to the Symphonia engine, a powerful EDI debugging tool You must first load an s3d file (from Composer), to make it message aware The message window is made up of 3 parts - Message tree, message string and error list Import/Export messages Send and Receive messages via TCP Logging support
Importing messages Sample messages can be quickly verified You can create new messages also Load your message definition (Composer s3d file) Import a message
Sending and Receiving messages Explorer can also be used a debugging tool with other applications Send message to a server application Or set Explorer up as server and receive messages Explorer can also act as a router, receiving messages and routing them to another system
XML Composer The XML Message Designer
XML Composer Symphonia s Tool for defining XML schemas Create/Edit XML schemas Generate ActiveX objects. wraps the Mircosoft XML DOM Generates Java code wraps the Oracle XML DOM Import/Export DTD s Import/Export W3C Schemas
XML Composer Defining XML Schemas is so simple Generate ActiveX objects Import/Export Schemas and DTDs Documents, Elements, Fields, Attributes
Using XML ActiveX objects XML documents couldn t be easier to generate
Mapper Symphonia Map Builder
The Symphonia Message Mapper Solves communications problems between information systems with different formats by providing mapping between them. Drag and drop from each format to create file Creating a map file e.g. HL7 to XML Map file in use - mapping HL7 to XML
The Symphonia Message Mapper Rapidly enables universal data communications between previously incompatible systems Maps virtually any format to any other format. Programming is significantly reduced by user-friendly GUI and wizards
Import Input and Output Definitions A mapping wizard allows mappings to be quickly set up.. The mapper can import any EDI Composer files and XML formats
Drag & Drop GUI generates code automatically
Sub maps enables code reuse and similifies mappings With the Symphonia Mapper you have a Rapid Mapping Development Application
Customized External functions Some Features. Automap similar fields Globals variables Call Stored procedures in ODBC databases Call COM components
Compiling and Testing When a mapping is complete, it is then compiled into an ecc file Mapping can be tested with sample input messages The ecc file and the mapper engine is all that is required to add mapping to an application
Using the Mapper Engine Integrating a mapping requires only a few lines of code
Solo mapper, NT service Additionally the Mapper has two other applications that users to receive messages and map them and send the output to another machine or directory The SoloMapper implements an automatic transfer operation where a message is mapped using a mapping file generated by The Symphonia Mapper. The Symphonia Mapper Service is a Windows NT/2000 service for mapping messages between 2 connections. These connections can be a combination of TCP connections and directory-based connections.
Mapper Summary Concise C based code mapping language. Clear, concise, easy to understand - capable of virtually any mapping at all. Extensibility and Scalability. The use of COM interfaces, engine APIs and ActiveX objects promotes a high degree of customisation and programmability. Ease of Use. User friendly Drag and Drop GUI simplifies the mapping process. Supports multiple platforms Windows 95/98/2000 NT Sun Solaris HP-UX IBM AIX Unix Linux
Deployment Symphonia requires only a handful of small files for deployment at the most!!
Symphonia Runtimes Symphonia Development key Required to run Composer, Explorer, XML Composer and the Symphonia Engine on a Development machine. Symphonia Runtime keys Required to run the Symphonia Engine on a Runtime machine. One key per machine. Mapper Development keys Required to run the Symphonia Mapper and mapper engine. Mapper Runtime keys Required to run the Symphonia mapper engine on a Runtime machine. One key per machine.
Support Symphonia www.symphonia3.com http://support.symhonia3.com support@orion.co.nz
DEMO
Demo Overview This is a demonstration of using Symphonia to send EDI messages, mapping messages from one format to another and parse XML documents. Visual Basic Client Sends HL7 ORU message (Lab result) Send via TCP Visual Basic Server Receives ORU Message Maps to an XML document and saves to file
END