So far three versions have been specified.
This page is the hub for SimileXMLv1, the first version of a Simile XML language. It is reasonably faithful to the original Prolog structure, but with some alterations.
This is the home page for SimileXMLv2.
SimileXMLv2 involves a major re-design of the data model for representing Simile models.
The basic idea is to enable a composite model to be built up by cut-and-pasting the XML for one (child) model into another (parent) model (or, equivalently, adding an XInclude element into the parent model).
This is the home page for SimileXMLv3.
SimileXMLv3 is intended as a bog-standard XML representation of Simile models, with a direct, one-to-one relationship between the parts of the Prolog clauses and the XML elements and attributes.
The aim is to provide a robust XML-based language which can provide guaranteed conversion in either direction (including round-tripping). This aim can be met with more profound changes to the syntax or underlying data model, but this would require more work to come up with the new design, and to ensure that it works under all circumstances.
The SimileXMLv3 Schema page is here.
The XSugar rule-set for converting between Simile Prolog and SimileXMLv3 is here.
Attachment | Size |
---|---|
SimileXMLv3.xsd | 23.58 KB |
SimileProlog_SimileXMLv3.xsg | 8.35 KB |
This page contains the XSugar rule-set for converting between Simile Prolog and SimileXMLv3, as well as notes on its development and use.
The following files are attached.
This is the XSugar rule-set.
This is the Prolog for the LINTUL model as exported from Simile.
This is the XML generated by XSugar when it appliesthe above rule set to the above Prolog file.
Install XSugar, then issue the following comamnd at the command line:
exec java -jar xsugar-all.jar SimileProlog_SimileXMLv3.xsg LINTUL.pl > LINTUL.xml
Attachment | Size |
---|---|
SimileProlog_SimileXMLv3.xsg | 20.25 KB |
LINTUL.pl | 30.37 KB |
LINTUL.xml | 65.97 KB |