Instruction Manual

L
ONWORKS Network XML Programmer’s Guide 49
//create Directory for XML file
DirectoryInfo di = Directory.CreateDirectory("C:\\Lm\\XML\\MyNetwork\\");
//create XML file
m_lmXml.XmlFileName = "C:\\Lm\\XML\\MyNetwork\\Export.XML";
// Create the XML writer options
XmlWriterSettings settings = new XmlWriterSettings();
settings.ConformanceLevel = ConformanceLevel.Document;
settings.Indent = true;
settings.IndentChars = (" ");
//Create the XML Writer
using (XmlWriter writer = XmlWriter.Create(m_lmXml.XmlFileName))
{
writer.WriteProcessingInstruction("xml-stylesheet", "type=\"text/xsl\"
href='file://" + "C:\\LonWorks\\LonMaker\\XML\\LonMaker.xsl" +
"'");
// Start Network Elemeny
writer.WriteStartElement("LonWorksNetwork");
writer.WriteElementString("Name", "MyNetwork");
// Specify root subsystem
writer.WriteElementString("RootSubsystem", "");
// Write the domain ID
// Use random 3-byte domain ID; first sleep a ms to advance timer
writer.WriteStartElement("DomainId");
Random randobj = new Random();
writer.WriteString(String.Format("{0:X2}", randobj.Next(255)));
writer.WriteString(String.Format("{0:X2}", randobj.Next(255)));
writer.WriteString(String.Format("{0:X2}", randobj.Next(255)));
writer.WriteEndElement();
// Write the export scope
writer.WriteStartElement("ExportScope");
writer.WriteAttributeString("ID", "0");
writer.WriteString("ALL");
writer.WriteEndElement();
// Start the Top-level Subsystems Elements
writer.WriteStartElement("Subsystems");
// Start the Subsystem Element
writer.WriteStartElement("Subsystem");
writer.WriteElementString("Name", "Subsystem 1");
//Start AppDevices Elements
writer.WriteStartElement("AppDevices");
//Write AppDevice Element
writer.WriteStartElement("AppDevice");
writer.WriteAttributeString("Action", "CREATE");
writer.WriteAttributeString("Commission", "TRUE");
writer.WriteElementString("Name", "DIO-1");
writer.WriteElementString("Channel", "Channel 1");
writer.WriteElementString("Template", "Echelon DIO-10v3");
writer.WriteElementString("NeuronId", "00A145784600");
writer.WriteElementString("Image",
"C:\\LonWorks\\Import\\Echelon\\LonPoint\\Version3\\
DIO-10v3.apb");
// Start FunctionalBlock Elements
writer.WriteStartElement("FunctionalBlocks");
// Write FunctionalBlock Element#1
writer.WriteStartElement("FunctionalBlock");
writer.WriteAttributeString("Handle", "5");
writer.WriteElementString("Name", "DE-1");