ooxml

tools
Login

demo.xml

<?xml version="1.0" encoding="UTF-8"?>
<Demo>
  <!--comment block goes here-->
  <Node attribute="value">
    <SubNode>text data</SubNode>
  </Node>
  <?piTag the processing instructions goes here?>
  <Node><![CDATA[</this is malformed!</malformed</malformed & worse cDATA>]]></Node>
</Demo>

xmltotdom.tcl <file>

Will create a tcl source code to build a xml file as the original.
Example of demo.xml:

package require tdom 0.9.0-
set encoding utf-8
set doc [dom createDocument Demo]
set root [$doc documentElement]
$root appendChild [$doc createComment {comment block goes here}]
$root appendChild [set node0 [$doc createElement Node]]
  $node0 setAttribute attribute value
  $node0 appendChild [set node1 [$doc createElement SubNode]]
    $node1 appendChild [$doc createTextNode {text data}]
$root appendChild [$doc createProcessingInstruction piTag {the processing instructions goes here}]
$root appendChild [set node0 [$doc createElement Node]]
  $node0 appendChild [$doc createCDATASection {</this is malformed!</malformed</malformed & worse cDATA>}]
fconfigure stdout -encoding $encoding
puts [$root asXML -indent 2 -xmlDeclaration 1 -encString [string toupper $encoding]]

xmltotdomnodecmd.tcl <file>

Will create a tcl source code using nodecmd to build a xml file as the original.
Example of demo.xml:

package require tdom 0.9.0-
set encoding utf-8
dom createNodeCmd cdataNode CData
dom createNodeCmd commentNode Comment
dom createNodeCmd piNode PInstr
dom createNodeCmd textNode Text
dom createNodeCmd -tagName Node elementNode Tag_Node
dom createNodeCmd -tagName SubNode elementNode Tag_SubNode
set doc [dom createDocument Demo]
set root [$doc documentElement]
$root appendFromScript {
  Comment {comment block goes here}
  Tag_Node attribute value {
    Tag_SubNode {
      Text text data
    }
  }
  PInstr piTag {the processing instructions goes here}
  Tag_Node {
    CData {</this is malformed!</malformed</malformed & worse cDATA>}
  }
}
fconfigure stdout -encoding $encoding
puts [$root asXML -indent 2 -xmlDeclaration 1 -encString [string toupper $encoding]]