Этот вопрос касается записи данных XML из стека LiveCode в файл. В главе 6.7 руководства пользователя рассказывается о XML-функциях, предоставляемых LiveCode. Я ищу примеры, которые показывают, как создать файл XML и записать его в файл на диске.
http://support.runrev.com/tutorials/xmldemo.rev.gz представляет собой обучающий стек о том, как использовать XML-функции revNNN LiveCode.
У него есть пример
....
local tDocID, tParentNode, tSubNode
-- get the document ID for the current XML tree
put fld "DocID" into tDocID
-- specify the root node for the XML tree
put "/employeeTable" into tParentNode
revAddXMLNode tDocID, tParentNode, "employee", ""
put the result into tSubNode
-- add the IDnum attribute to the newly created data record
revSetXMLAttribute tDocID, tSubNode, "IDnum", "1"
-- add the remaining data elements, checking for error after each addition
revAddXMLNode tDocID, tSubNode, "firstName", "Steve"
revAddXMLNode tDocID, tSubNode, "lastName", "Jobs"
revAddXMLNode tDocID, tSubNode, "roomNum", "001"
revAddXMLNode tDocID, tSubNode, "phoneExt", "345"
revAddXMLNode tDocID, tSubNode, "parkingSlot", 100
Результат
<?xml version="1.0"?>
<employeeTable>
<employee IDnum="1">
<firstName>Steve</firstName>
<lastName>Jobs</lastName>
<roomNum>001</roomNum>
<phoneExt>345</phoneExt>
<parkingSlot>100</parkingSlot>
</employee>
</employeeTable>
Существуют ли библиотеки, которые упрощают написание XML-текстов, предоставляя удобные функции, чтобы мне не нужно было отслеживать узлы при добавлении вложенных структур?
Что-то типа
startXML "theEmployees.xml" -- gives the file name
startTag "employeetable"
startTag "employee"
addAttribute "IDnum", 1
startTag "firstName"
writeContent "Steve"
closeTag
-- or
writeNode "lastname", "Jobs"
writeNode "roomnum", "001"
-- ....
closeTag -- employee
closeTag -- employeeTable
closeXML
Относительно легко написать пару таких функций, но возникает вопрос. Существуют ли установленные способы записи XML-текста в файл в LiveCode?