SolutionXML

This section assumes you understand the basic concepts of XML files. A good reference text is the XML Black Book, Natanya Pitts.

SolutionXML is a idea supported by a number of software products, it enables you to embed your own XML data inside SIMUL8's XML and have SIMUL8 preserve your data when XML files are open, read, saved etc.

In addition, in SIMUL8, the content of your SolutionXML can be read and written via COM.

SIMUL8 also saves your SolutionXML data and tags inside S8 file types. This means it is also a very valuable feature for COM applications that don't use XML files.

Where are <SolutionXML> tags allowed?

<SolutionXML> tags are allowed immediately below the SIMUL8 XML nodes (tags): <SimulationObject> - used for your own XML that relates to each simulation object. <SimulationParameters> - used for your own XML that is general to the entire simulation. Example: <SIMUL8XML>

 <SimulationParameters>
    <Trial>
       <Title></Title>
       <Runs>5</Runs>
       <SendToVISA>No</SendToVISA>
    </Trial>
    <SolutionXML>
       <MyData>data not related to objects</MyData>
       <SomeMoreofMyData>more data</SomeMoreofMyData>
    </SolutionXML>
       . 
       . 
       . 
 </SimulationParameters>
       . 
       . 
       . 
 <SimulationObjects>
    <SimulationObject Name="Work Entry Point 1" Type="Work Entry Point" ID="1">
       <Index>1</Index>
       <Window>1</Window>
       <SolutionXML>
         <MyData>data for this object</MyData>
         <SomeMoreofMyData>data for this object</SomeMoreofMyData>
       </SolutionXML>
       . 
       . 
       . 
    </SimulationObject>
    <SimulationObject Name="Queue for Work Center 1" Type="Storage Area" ID="2">
       <Index>1</Index>
       <Window>1</Window>
       <SolutionXML>
         <MyData>data for this object</MyData>
         <SomeMoreofMyData>data for this object</SomeMoreofMyData>
       </SolutionXML>
       . 
       . 
       . 
    </SimulationObject>
       . 
       . 
       . 
 </SimulationObjects>
       . 
       . 
       . 

</SIMUL8XML> All data within the <SolutionXML> tags must be correctly formed XML.

We recommend that, when reading, adding and changing XML within <SolutionXML> tags you contain all your data within a node (tag pair) that uniquely identifies your data, and that you preserve any other data within the <SolutionXML> tags. This means that other people can also use the <SolutionXML> tags and their data will be preserved along side yours. For example:

    <SimulationObject Name="Work Entry Point 1" Type="Work Entry Point" ID="1">
       <Index>1</Index>
       <Window>1</Window>
       <SolutionXML>
         <MyCompanysXML>
           <MyData>data</MyData>
           <SomeMoreofMyData>data</SomeMoreofMyData>
         </MyCompanysXML>
         <othertag>
         </othertag>
         <othertag>
         </othertag>
       </SolutionXML>
       . 
       . 
       . 
    </SimulationObject>

Access to SolutionXML from COM

COM Objects S8Simulation and S8SimObject have read/write properties SolutionXML. Use these properties from COM/ActiveX to read or write the SolutionXML that has been read from a SIMUL8 XML file. If the user clicks SAVE (or you use SAVE from COM) the changed SolutionXML will be written back to the current simulation file.