This package implements the spreadsheet parsers for EDIP.
At this time this package contains only the parser for Excel from MS Office XP. Older versions of MS Office cannot be supported because they lack the ability of saving the spreadsheet as XML. A parser for OpenOffice is under development.
The spreadsheet parser is invoked by the Edip
class. Its
purpose is to convert the source file into an internal XML document. The internal document has
namespace http://hroch486.icpf.cas.cz/ns/selfml/internal
as defined by the Edip.INTERNAL_NS
variable. The root element is
selfml
with a mandatory attribute property
holding the property type. The
root has two child elements. The first element is DescriptionBlock
. This contains
elements variable
with a mandatory attribute name
defining the variable
name under which it is present later. The order and meaning of these variables is defined by the
property type. The second child element is Variables
. It contains the same number of
variable
elements with corresponding name
attributes as the
DescriptionBlock
. Each variable
element contains one or more
value
elements with the values.
Below you can see an example of an internal XML document for property type GEMS1311.
<?xml version="1.0" encoding="utf-8"?> <selfml xmlns="http://hroch486.icpf.cas.cz/ns/selfml/internal" property="GEMS1311"> <DescriptionBlock> <variable name="comp1"/> <variable name="comp2"/> <variable name="T"/> <variable name="err.T"/> <variable name="GE"/> <variable name="err.GE"/> </DescriptionBlock> <Variables> <variable name="comp1"> <value>102-69-2</value> </variable> <variable name="comp2"> <value>64-17-5</value> </variable> <variable name="T"> <value>350.7</value> <value>334.8</value> <value>323.4</value> </variable> <variable name="err.T"> <value>0.2</value> <value>0.2</value> <value>0.2</value> </variable> <variable name="GE"> <value>6037.59</value> <value>5880.72</value> <value>5810.58</value> </variable> <variable name="err.GE"> <value>290</value> <value>280</value> <value>270</value> </variable> </Variables> </selfml>