Differences between revisions 3 and 4
Revision 3 as of 2005-08-16 18:53:50
Size: 2838
Editor: NBRDS1311
Revision 4 as of 2009-09-20 22:49:11
Size: 2838
Editor: localhost
Comment: converted to 1.6 markup
No differences found!

Fast Infoset By using code from the Fast Infoset Project, an open source implementation of the Fast Infoset standard, I wrote a module that can take an XML file as input and generate binary files in the Fast Infoset format. I am also able to do the reverse-- convert this binary file back to XML. There were a few issues with lost or reordered information with this conversion, but none seem to be critical problems. I ran a few XML files as tests, and have submitted it to my mentor for further review.

DFDL I have been looking into DFDL to complete the second half of this project, but am not clear on the steps necessary to move forward.

From the examples I've seen, DFDL seems suited towards taking a non-XML file and generating two files from it: The first is an XML file that tags the strings, numbers, and other parts of the non-XML file. The second is a DFDL description file (.xsd) that contains the structure and representation of the information in the XML file. This may seem like doing a lot, but by specifying structure in this external file, it is very easy to break down large, repetitive areas of information into concise XML chunks. (see example DFDL .xml and .xsd files below)

However, I am not quite clear on what I should be coding for this. Should I be taking non-structured content and generating these two DFDL files from them? What kind of test data should I be working with?


-- will be posted to axis-dev list.

-- XML FILE -- {{{<?xml version="1.0" encoding="UTF-8"?> <DFDL xmlns:dfdl="http://dfdl.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:\RECORDS\projects\BFD-DFDL\jdm1\NewDFDLType.xsd">

  • <vector>

    • <point>

      • <dfdl:real>1.23</dfdl:real> <dfdl:imaginary>2.34</dfdl:imaginary>

      </point> <point>

      • <dfdl:real>3.45</dfdl:real> <dfdl:imaginary>4.56</dfdl:imaginary>




-- XSD FILE --

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dfdl="http://dfdl.org/" targetNamespace="http://dfdl.org/" xsi:schemaLocation="dummyToFoolXMLSpy
    <!-- New DFDL Type -->
    <xs:complexType name="complexNumber">
            <xs:element name="real" type="xs:float"/>
            <xs:element name="imaginary" type="xs:float"/>
   <!-- Notes:
                        Used in IncludeType and NewDFDLTransform examples

Examples taken from DFDL Working Group website - https://forge.gridforum.org/projects/dfdl-wg/

SummerOfCode/2005/binarySerialization/14 (last edited 2009-09-20 22:49:11 by localhost)