--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+
+# NULL values are ignored, but having one helps pointing out that
+# the array given is non-associative
+
+$doc = process_file('../xml/clone.xml', array(
+ 'color' => 'blue',
+ '#things' => array(NULL)
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/clone.xml', array(
+ 'color' => 'red',
+ '#things' => array(
+ array( 'li' => 'Raindrops on roses', 'li/class' => 'odd' ),
+ array( 'li' => 'Whiskers on kittens', 'li/class' => 'even' ),
+ array( 'li' => 'Bright copper kettles', 'li/class' => 'odd' ),
+ array( 'li' => 'Warm, woolen mittens', 'li/class' => 'even' )
+ )
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/clone.xml', array(
+ 'color' => 'blue',
+ '#things' => XML_Template_alternate('li/class', array(
+ array( 'li' => 'Raindrops on roses' ),
+ array( 'li' => 'Whiskers on kittens' ),
+ array( 'li' => 'Bright copper kettles' ),
+ array( 'li' => 'Warm, woolen mittens' ),
+ ), array('odd', 'even'))
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/clone.xml', array(
+ 'color' => 'blue',
+ '#things' => XML_Template_alternate('li/class', array(
+ array( 'li' => 'Raindrops on roses' ),
+ array( 'li' => 'Whiskers on kittens' ),
+ NULL,
+ array( 'li' => 'Bright copper kettles' ),
+ array( 'li' => 'Warm, woolen mittens' ),
+ ), array('odd', 'even'))
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/included.xml', array(
+ 'color' => 'red'
+), 0);
+$master = process_file('../xml/master.xml', array(
+ 'title' => 'Main HTML title',
+ 'h1' => 'Nice heading here',
+ 'contents' => $doc
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/namespace.xml', array(
+ 'title' => 'Namespace tests',
+ '#hello' => 'Hello world!',
+ '#test' => 'Replaced.',
+ 'tagname' => 'foo',
+ '#moretest' => 'bar'
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/namespace2.xml', array(
+ 'title' => 'Namespace tests',
+ '#hello' => 'Replaced.',
+), true);
+output_to_fd_and_free($doc, 1);
+?>
--- /dev/null
+<?php
+
+dl("XML_Template_SWIG.so");
+$doc = process_file('../xml/structure.xml', array(
+ '#outer' => array(
+ array( '#inner' => 'One' ),
+ array( '#inner' => 'Two' ),
+ array( '#inner' => 'Three' ),
+ )
+), true);
+output_to_fd_and_free($doc, 1);
+?>