incubator-xap-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bbuff...@apache.org
Subject svn commit: r550329 [6/13] - in /incubator/xap/site: docs/ docs/xmodify/ docs/xmodify/content/ docs/xmodify/css/ docs/xmodify/doc/ docs/xmodify/doc/complexTypes/ docs/xmodify/doc/complexTypes/html/ docs/xmodify/doc/complexTypes/xml/ docs/xmodify/doc/ov...
Date Mon, 25 Jun 2007 03:05:26 GMT
Added: incubator/xap/site/docs/xmodify/doc/overview/xml/overview.xml
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/overview/xml/overview.xml?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/overview/xml/overview.xml (added)
+++ incubator/xap/site/docs/xmodify/doc/overview/xml/overview.xml Sun Jun 24 20:05:18 2007
@@ -0,0 +1,1357 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<overview targetNamespace="http://openxal.org/core/xmodify"
+    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:event="http://www.w3.org/2001/XMLSchema" xmlns:meta="http://www.w3.org/2001/XMLSchema">
+    <complex-type-list>
+        <complex-type-overview name="any-child-directive-element-type"
+            ref="any-child-directive-element-type.xml" isAbstract="true" isMixed="false">
+            <brief-documentation>
+Elements of this type can take any number of elements of any type as children.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+Elements of this type can take any number of elements of any type as children. 
+Examples of elements that extend this type include append, insert-at, insert-before
+and others.
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="append-element-type"
+            ref="append-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The append command appends its arguments (specified as children of 
+the command element) at the end of the children list of each of 
+the results returned by the XPath query.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The append command appends its arguments (specified as children of 
+the command element) at the end of the children list of each of 
+the results returned by the XPath query.<br><br>
+
+The XPath query must return the following set: ( Element | Document )*. 
+If any of the results of the XPath query is not an Element or a Document, 
+an UpdateException is thrown and the execution of the &lt;xm:modifications/&gt; 
+block is halted.  If the XPath query selects the Document object, additional
+restrictions apply: the directive element must only have 1 child Element and  
+the Document must not have a root Element.  If the directive element has more than
+one child or the Document already has a root Element, an UpdateException will 
+be thrown.<br><br>
+
+The following logic applies to the arguments of the append command based 
+on the type of each argument:
+
+<ul>
+<li>value-of directive element is executed and the value of the bound variable will get
+appended (not the directive element itself)
+<li>clone directive element is executed and the cloned elements (which is the result of
+ executing the command) will get appended.
+<li>any other xModify directive element will get appended as is.
+<li>element in any other namespace will be appended as is. If the XPath query
+    returns more than 1 result, the element is cloned before being appended to prevent
+    id conflicts (the clone is deep).
+<li>string argument is appended as is.
+</ul>
+<br>
+
+<h4>Here is a XAL example:</h4><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:append select="id('mywindow')"&gt;
+            &lt;freePane id="mypanel"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will append the new freePane (id="mypanel") at the end of the 
+children list of the selected window.
+
+<br><br>
+
+<h4>HTML Example:</h4><br>
+
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+<p>The "Add row to table" button will append a row to the table.</p>
+
+<p>
+<table style="width:310px" id="mytable">
+    <tr style="background-color:#aaa"><th width="150px" align="left">Employee ID</th><th width="150px" align="left">Full Name</th></tr>
+    <tr><td>3456g</td><td>Jane Smith</td></tr>
+<table>
+<input style="width:150px" type="button" value="Add row to table" onclick="$.xmodify({url:'../../../operations/addrow.xml'});"/>
+<input style="width:150px" type="button" value="Reset table" onclick="$.xmodify({url:'../../../operations/resettable.xml'});"/>
+</p>
+<br>
+
+<p><b>addrow.xml</b></p>
+<p>This file uses the append xModify instruction to add a new row to the html table.
+The select attribute of the append tag denotes the location to which append the children
+of the append tag to.  Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:append select="#mytable"&gt;
+            &lt;![CDATA[
+            &lt;tr&gt;
+                &lt;td&gt;12390i&lt;/td&gt;
+                &lt;td&gt;Larry Franklin&lt;/td&gt;
+            &lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+<p><b>resettables.xml</b></p>
+<p>This file uses the append xModify instruction to add a new row to the html table.
+The select attribute of the append tag denotes the location to which append the children
+of the append tag to.  Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:replace-children select="#mytable"&gt;
+            &lt;![CDATA[
+            &lt;tr style="background-color:#aaa"&gt;&lt;th&gt;Employee ID&lt;/th&gt;&lt;th&gt;Full Name&lt;/th&gt;&lt;/tr&gt;
+            &lt;tr&gt;&lt;td&gt;3456g&lt;/td&gt;&lt;td&gt;Jane Smith&lt;/td&gt;&lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:replace-children&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="base-directive-element-type"
+            ref="base-directive-element-type.xml" isAbstract="true" isMixed="false">
+            <brief-documentation>
+This is the base type that most xModify command element types extend.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+This is the base type that most xModify command element types extend. 
+For the detailed description of the attributes of this element type click on 
+the links below.           
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="value-of-element-type"
+            ref="value-of-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The value-of command is used to extract the value of a bound variable.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The value-of command is used to extract the value of a bound variable. 
+Usually the variable is bound by the "variable" command first. Then you can
+use the value-of command as an argument to other commands that take arguments.
+<br><br>
+
+The value of the 'name' attribute should be the name of a variable bound by 
+the 'variable' directive.
+<br><br>
+
+Here is a sample use of a value-of command:<br><br>
+
+<pre>	
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:variable name="myvar" select="/ui/rootPane/freePane[1]" clone="true"/&gt;
+        &lt;xm:append select="/ui/rootPane"&gt;
+            &lt;xm:value-of name="myvar"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above set of commands does the following:<br><br>
+<ul>
+<li>The first command (variable) binds a variable named "myvar" to a clone of the first
+child freePane of the rootPane element in document "mydocument".
+<li>The second command (append) appends the value of the variable "myvar" (the cloned freePane from step 1)
+to the same rootPane element (end result: the rootPane element now has another child freePane). 
+</ul>
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+Change the value of the input field and click the clone button. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div><input id="username" type="text" value="janesmith"></div><br>
+    <div id="inputContainer">
+    </div>
+    <input style="width:150px" type="button" value="Clone the Input" onclick="$.xmodify({url:'../../../operations/variable.xml'});"/>
+</div>
+<br>
+<p><b>variable.xml</b></p>
+<p>This file uses the variable xModify instruction create a copy of the input field.  Then inside of the
+    append tag the value-of tag is used to refer to the variable tag. 
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:variable name="variableName" select="#username"/&gt;
+        &lt;xm:append select="#inputContainer"&gt;
+            &lt;xm:value-of name="variableName"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="clone-element-type"
+            ref="clone-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The clone command clones each of the results returned by the XPath query and
+returns the set of cloned elements.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The clone command clones each of the results returned by the XPath query and
+returns the set of cloned elements.  Here is a sample clone command: <br><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:clone select="/ui/rootPane/freePane[1]/button[1]"/&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will clone the first child button of the first child freePane of the
+rootPane element in the document "mydocument". 
+The clone command is not useful as a top level command since the result will just
+be discarded.  It should be used as an argument to other commands that take arguments.
+<h4>Here is a XAL example:</h4><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:append select="/ui/rootPane"&gt;
+            &lt;xm:clone select="/ui/rootPane/freePane[1]"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will clone the first child freePane of the rootPane element
+in document "mydocument" and then append it to the same rootPane element.<br><br>
+
+<b>Important:</b> if the XPath of the enclosing command (in the above example it's the append)
+returns more than 1 result, you have to make sure that the cloned element
+(freePane[1]) does not have any developer specified id attributes (since they are always copied
+into the clone).  Otherwise there will be id conflicts and the command will fail
+when trying to append to the second result returned by the XPath query.<br><br>
+
+The XPath query must return the following set: ( Element )*. 
+If any of the results of the XPath query is not an Element, an UpdateException is thrown
+and the execution of the &lt;xm:modifications/&gt; block is halted.<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+Change the value of the input field and click the clone button. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div><input id="username" type="text" value="janesmith"></div><br>
+    <div id="inputContainer">
+    </div>
+    <input style="width:150px" type="button" value="Clone the Input" onclick="$.xmodify({url:'../../../operations/clone.xml'});"/>
+</div>
+<br>
+<p><b>clone.xml</b></p>
+<p>This file uses the clone xModify instruction create a copy of the input field. 
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:append select="#inputContainer"&gt;
+            &lt;xm:clone select="#username"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="insert-at-element-type"
+            ref="insert-at-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The insert-at command inserts its arguments (specified as children of 
+the command element) at the specified index in the children list of each of 
+the results returned by the XPath query.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The insert-at command inserts its arguments (specified as children of 
+the command element) at the specified index in the children list of each of 
+the results returned by the XPath query. To specify the index, the command element
+has an attribute 'index' whose value is an integer. The valid range for 
+the index attribute is:( 0 - children count of the Element returned by the XPath
+query) inclusive on both ends. If the index is outside of this range an 
+ArrayIndexOutOfBounds exception is thrown. If the value of the 'index' attribute 
+is not an integer an UpdateException is thrown (whose cause is a 
+NumberFormatException).<br><br>
+
+The XPath query must return the following set: ( Element | Document )*. 
+If any of the results of the XPath query is not an Element or a Document, 
+an UpdateException is thrown and the execution of the &lt;xm:modifications/&gt;
+block is halted.  Note that if the XPath query selects the Document object, 
+additional restrictions apply: the index has to be 0 and the directive element 
+must have only 1 child Element (which will be set as the root Element of the 
+selected Document). If these restrictions are violated, an UpdateException is
+thrown.
+<br><br>
+
+The following logic applies to the arguments of the insert-at command based 
+on the type of each argument:
+
+<ul>
+<li>value-of directive element is executed and the value of the bound variable will get
+inserted (not the directive element itself)
+<li>clone directive element is executed and the cloned elements (which is the result of
+ executing the command) will get inserted.
+<li>any other xModify directive element will get inserted as is.
+<li>element in any other namespace will be inserted as is. If the XPath query
+    returns more than 1 result, the element is cloned before the insertion to prevent
+    id conflicts (the clone is deep).
+<li>string argument is inserted as is.
+</ul>
+<br>
+
+<h4>Here is a XAL example:</h4><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:insert-at select="id('mywindow')" index="2"&gt;
+            &lt;freePane id="mypanel"/&gt;
+        &lt;/xm:insert-at&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will insert the new freePane (id="mypanel") at index 2 in the list
+of children of the selected window element.
+
+
+<h4>HTML Example:</h4><br>
+
+In the sample below pressing the "Add row to table" will create a new row in the table before the 
+the Jane Smith row.
+
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+<p>
+<table style="width:310px" id="mytable">
+    <tr style="background-color:#aaa"><th width="150px" align="left">Employee ID</th><th width="150px" align="left">Full Name</th></tr>
+    <tr id="insertAfterMe"><td>3456g</td><td>Jane Smith</td></tr>
+    <tr><td>9833o</td><td>Larry Doyle</td></tr>
+<table>
+<input style="width:150px" type="button" value="Add row to table" onclick="$.xmodify({url:'../../../operations/insert-at.xml'});"/>
+<input style="width:150px" type="button" value="Reset table" onclick="$.xmodify({url:'../../../operations/resettable2.xml'});"/>
+</p>
+<br>
+
+<p><b>insert-at.xml</b></p>
+<p>This file uses the insert-at xModify instruction to add a new row to the html table.
+The select attribute of the insert-at tag denotes the location of the element that the contents
+and the index attribute tells it which place to insert it.  
+
+Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:insert-at select="#myTable" index="1"&gt;
+            &lt;![CDATA[
+            &lt;tr&gt;
+                &lt;td&gt;12390i&lt;/td&gt;
+                &lt;td&gt;Larry Franklin&lt;/td&gt;
+            &lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:insert-at&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="set-innerhtml-element-type"
+            ref="set-innerhtml-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The set-innerhtml command takes the contents of the tag and uses it
+as the value of the htmlElement.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The set-innerhtml command takes the contents of the tag and uses it
+as the value of the htmlElement.innerHTML.  
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+The buttons below can be used to clear and reset the values of the form inputs. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Will the Redsox win the World Series?</b></div>
+    <div>
+         <input type="radio" name="yes">Yes<br>
+         <input type="radio" name="no">No<br>
+         <input style="width:150px" type="button" value="Submit" onclick="$.xmodify({url:'../../../operations/set-innerhtml.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>set-innerhtml.xml</b></p>
+<p>This file uses the set-innerhtml xModify instruction to change the contents of the "replace-contents" div.
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:set-innerhtml select="replace-contents"&gt;&lt;![CDATA[
+            &lt;div&gt;&lt;b&gt;Results of Poll.&lt;/b&gt;&lt;/div&gt;&lt;br&gt;
+                &lt;div&gt;
+                    100% Yes&lt;br&gt;
+                    0% No
+                &lt;/div&gt;
+            &lt;/div&gt;        
+        ]]&gt;
+        &lt;/xm:set-innerhtml&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="modifications-element-type"
+            ref="modifications-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+Every set of xModify commands has to be enclosed in a single &amp;lt;xm:modifications/&amp;gt; element.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+Every set of xModify commands has to be enclosed in a single &lt;xm:modifications/&gt; element. 
+A single file can contain multiple sets of &lt;xm:modifications/&gt; elements. 
+The element has only 1 attribute: the name of the document on which to perform the specified updates.
+Use "xal" to affect the UI DOM. If you are using create-document directive it has to be the first
+one in the list of directives.
+
+ 
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="embed-xal-element-type"
+            ref="embed-xal-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+Use the embed-xal operation to change the elements selected via the
+"select" attribute into a XAL host.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+Use the embed-xal operation to change the elements selected via the
+"select" attribute into a XAL host.  This operations is typically used
+When developers are using HTML as the layout mechanism for their application 
+and want to place the XAL widgets with in a specific locations.  The other reason
+to use embed XAL is that you are trying to enhance the an existing site with XAL widgets.
+<br><br>
+For Example:
+<br><br>
+You want to layout an application as follows:<br><br>
+
+<p align="center">
+<img src="../../../images/embed-xal.gif">
+</p>
+<br>   
+
+<b>HTML File</b><br>
+<pre>
+&lt;html&gt;&lt;body&gt;
+    &lt;table&gt;
+           &lt;tr&gt;
+               &lt;td rowspan="2"&gt;
+                   &lt;div id="treeView"&gt;&lt;/div&gt;
+               &lt;/td&gt;
+               &lt;td&gt;
+                   &lt;div id="detailsView"&gt;&lt;/div&gt;
+               &lt;/td&gt;
+           &lt;/tr&gt;
+           &lt;tr&gt;
+               &lt;td&gt;
+                   &lt;div id="tableView"&gt;&lt;/div&gt;
+               &lt;/td&gt;
+           &lt;/tr&gt;
+    &lt;/table&gt;
+&lt;/body&gt;&lt;/html&gt;    
+</pre>
+
+<b>xModify File</b><br>
+<pre>
+   &lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:embed-xal select="id('treeView')"&gt;
+            &lt;tree&gt;
+                &lt;row&gt;
+                    &lt;cell text="US"/&gt;
+                    &lt;row&gt;
+                        &lt;cell text="Marketing"/&gt;
+                    &lt;/row&gt;
+                &lt;/row&gt;
+                &lt;row&gt;
+                    &lt;cell text="UK"/&gt;
+                    &lt;row&gt;
+                        &lt;cell text="Marketing"/&gt;
+                    &lt;/row&gt;
+                &lt;/row&gt;
+                &lt;row&gt;
+                    &lt;cell text="FR"/&gt;
+                    &lt;row&gt;
+                        &lt;cell text="Marketing"/&gt;
+                    &lt;/row&gt;
+                &lt;/row&gt;
+                &lt;row&gt;
+                    &lt;cell text="JP"/&gt;
+                    &lt;row&gt;
+                        &lt;cell text="Marketing"/&gt;
+                    &lt;/row&gt;
+                &lt;/row&gt;
+            &lt;/tree&gt;        
+        &lt;/xm:embed-xal&gt;
+        &lt;xm:embed-xal select="id('detailsView')"&gt;
+            &lt;verticalBoxPane&gt;
+                &lt;textField text="bob"/&gt;
+                &lt;button text="Change" onCommand="mco:myClientCode.onCommand()"/&gt;
+            &lt;/verticalBoxPane&gt;
+        &lt;/xm:embed-xal&gt;
+        &lt;xm:embed-xal select="id('tableView')"&gt;
+            &lt;table&gt;
+                &lt;column&gt;
+                    &lt;header text="Event ID"/&gt;
+                &lt;/column&gt;
+                &lt;column&gt;
+                    &lt;header text="Event Details"&gt;
+                &lt;/column&gt;
+                &lt;row&gt;
+                    &lt;cell text="1"/&gt;
+                    &lt;cell text="Denial of Service attack detected on 192.168.0.1"/&gt;
+                &lt;/row&gt;
+            &lt;/table&gt;
+        &lt;/xm:embed-xal&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="create-document-element-type"
+            ref="create-document-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The create-document command allows you to create documents and have them registered
+with the DocumentRegistry on the client side.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The create-document command allows you to create documents and have them registered
+with the DocumentRegistry on the client side.  This element supports no attributes and
+must be the first element under the &lt;xm:modifications&gt; element.  
+
+<br><br>
+
+The create-document command supports a single child, however this child may have as many
+descendants as you like.
+
+<br><br>
+
+A sample create-document command element (using a deferred data retrieval) looks like: <br><br>
+
+&lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="myNewDocument"&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;xm:create-document&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;xi:include xmlns:xi="http://openxal.org/core/xinclude" href="/myFile.xml"/&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;/xm:create-document&gt;<br>
+&lt;/xm:modifications&gt;<br><br>
+
+Another sample create-document command element with inline content looks like: <br><br>
+
+&lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="EmotionalStatesDocument"&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;xm:create-document&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;emotional-states&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;happy/&gt;<br>
+
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;sad/&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/emotional-states&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;/xm:create-document&gt;<br>
+&lt;/xm:modifications&gt;<br><br>
+
+If the above samples were executed, the documents would be registered with the client
+side DocumentRegistry as locally available documents.
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="set-style-element-type"
+            ref="set-style-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The set-style command sets the specified attributes in all of the elements
+returned by the XPath query.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The set-style command sets the specified attributes in all of the elements
+returned by the XPath query.  All attributes to be set need to be specified as
+an style directive element (i.e. &lt;xm:style name="background-color" value="red"/&gt;)
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+The buttons below can be used to clear and reset the values of the form inputs. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div>
+         Username: <input id="username" type="text" value="janesmith"><br>
+         Password: <input id="password" type="password" value="wakeup"><br><br>
+         <input style="width:150px" type="button" value="Change Style" onclick="$.xmodify({url:'../../../operations/set-style.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>set-style.xml</b></p>
+<p>This file uses the set-style xModify instruction to change the background-color and border styles of the input.
+The select attribute of the set-style tag denotes the location of the element to change.  
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:set-style select="//INPUT"&gt;
+            &lt;xm:style name="background-color" value="red"/&gt;
+            &lt;xm:style name="border" value="3px dashed #aaa"/&gt;
+        &lt;/xm:set-style&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="remove-element-element-type"
+            ref="remove-element-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The remove-element command removes the elements returned by the XPath query of 
+the command.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The remove-element command removes the elements returned by the XPath query of 
+the command.<br><br>
+
+A sample remove-element command element looks like the following: <br><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;<br>
+        &lt;xm:remove-element select="/ui/rootPane/freePane[1]/button[1]"/&gt;<br>
+    &lt;/xm:modifications&gt;<br><br>
+</pre>
+After the above command is executed, the first child button of the first child freePane
+of the rootPane element in the document "mydocument" will be removed.<br><br>
+
+The XPath query of the remove-element command must return the following set: ( Element )*. 
+If any of the results of the XPath query is not an Element, an UpdateException is thrown
+and the execution of the &lt;xm:modifications/&gt; block is halted. If the XPath
+query selects the root Element of the Document, the root will be set to null. <br><br>
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+The buttons below can be used to clear and reset the values of the form inputs. 
+<br><br>
+
+<p>
+<table style="width:310px" id="mytable">
+    <tr style="background-color:#aaa"><th width="150px" align="left">Employee ID</th><th width="150px" align="left">Full Name</th></tr>
+    <tr type="data"><td>3456g</td><td>Jane Smith</td></tr>
+    <tr type="data"><td>9876j</td><td>Larry Doyle</td></tr>
+<table>
+<input style="width:150px" type="button" value="Add row to table" onclick="$.xmodify({url:'../../../operations/adddatarow.xml'});"/>
+<input style="width:150px" type="button" value="Clear table" onclick="$.xmodify({url:'../../../operations/clear-table.xml'});"/>
+</p>
+
+<br>
+<p><b>clear-table.xml</b></p>
+<p>This file uses the remove-element xModify instruction to change the text of the input.
+The select attribute of the remove-element tag denotes the location of the elements to remove.  
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:remove-element select="TR[@type='data']"/&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="remove-attribute-element-type"
+            ref="remove-attribute-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The remove-attribute command removes the attributes returned by the XPath query of 
+the command.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The remove-attribute command removes the attributes returned by the XPath query of 
+the command.<br><br>
+
+A sample remove-attribute command element looks like the following: <br><br>
+
+&lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;xm:remove-attribute select="/window/button[1]/@text"/&gt;<br>
+&lt;/xm:modifications&gt;<br><br>
+
+The above command removes the 'text' attribute from the first child button of the
+root window element in the document "mydocument".<br><br>
+
+The XPath query of the remove-attribute command must return the following set: ( Attribute )*. 
+If any of the results of the XPath query is not an Attribute, an UpdateException is thrown
+and the execution of the &lt;xm:modifications/&gt; block is halted.<br><br>
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="replace-element-type"
+            ref="replace-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The replace command replaces each of the results returned by the XPath
+query with the command arguments (specified as children of the command element).</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The replace command replaces each of the results returned by the XPath
+query with the command arguments (specified as children of the command element).
+<br><br>
+
+The XPath query must return the following set: ( Element | Text )*. 
+If any of the results of the XPath query is not one of the two types, an 
+UpdateException is thrown and the execution of the &lt;xm:modifications/&gt; 
+block is halted.  If the XPath query selects the root Element, the directive
+command has to have exactly one child Element which will be set as the new
+root.  If the directive element does not have exactly one child, and the 
+XPath query selects the root Element, an UpdateException will be thrown.<br><br>
+
+The following logic applies to the arguments of the replace command based 
+on the type of each argument:
+
+<ul>
+<li>value-of directive element is executed and the value of the bound variable will get
+inserted (not the directive element itself)
+<li>clone directive element is executed and the cloned elements (which is the result of
+ executing the command) will get inserted.
+<li>any other xModify directive element will get inserted as is.
+<li>element in any other namespace will be inserted as is. If the XPath query
+    returns more than 1 result, the element is cloned before the insertion to prevent
+    id conflicts (the clone is deep).
+<li>string argument is inserted as is.
+</ul>
+<br>
+
+<h4>Here is a XAL example:</h4><br>
+
+&lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;xm:replace select="id('oldWindow')"&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;window id="someOtherWindow"/&gt;<br>
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;/xm:replace&gt;<br>
+&lt;/xm:modifications&gt;<br><br>
+
+The above command will remove the selected window (id="oldWindow") and in its place
+the new window will be inserted (id="someOtherWindow").
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+Choose the anwser to the question and click "Submit", the results of the poll
+will be displayed. 
+<br><br>
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Will the Redsox win the World Series?</b></div>
+    <div>
+         <input type="radio" name="yes">Yes<br>
+         <input type="radio" name="no">No<br>
+         <input style="width:150px" type="button" value="Submit" onclick="$.xmodify({url:'../../../operations/replace.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>replace.xml</b></p>
+<p>This file uses the replace xModify instruction to replace the div that contains the poll.
+The select attribute of the replace tag denotes the location of the element to replace.  
+Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:replace select="#replace-contents"&gt;
+            &lt;![CDATA[
+            &lt;div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents"&gt;
+                &lt;div&gt;&lt;b&gt;Results of Poll.&lt;/b&gt;&lt;/div&gt;&lt;br&gt;
+                    &lt;div&gt;
+                        100% Yes&lt;br&gt;
+                        0% No
+                    &lt;/div&gt;
+                &lt;/div&gt;
+            &lt;/div&gt;
+            ]]&gt;
+        &lt;/xm:replace&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="attribute-element-type"
+            ref="attribute-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The attribute directive element is only used as an argument to the set-attribute
+directive.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The attribute directive element is only used as an argument to the set-attribute
+directive. The element contains two attributes:<br> 
+<ul>
+<li> name - the name of the attribute to be set.
+<li> value - the value of the attribute to be set.
+</ul>
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+The buttons below can be used to clear and reset the values of the form inputs. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div>
+         Username: <input id="username" type="text" value="janesmith"><br>
+         Password: <input id="password" type="password" value="wakeup"><br><br>
+         <input style="width:150px" type="button" value="Clear" onclick="$.xmodify({url:'../../../operations/clear-form.xml'});"/>
+         <input style="width:150px" type="button" value="Reset" onclick="$.xmodify({url:'../../../operations/reset-form.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>clear-form.xml</b></p>
+<p>This file uses the set-attribute xModify instruction to change the text of the input.
+The select attribute of the replace tag denotes the location of the element to change.  
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:set-attribute select="#username"&gt;
+            &lt;xm:attribute name="value" value=""/&gt;
+        &lt;/xm:set-attribute&gt;
+        &lt;xm:set-attribute select="#password"&gt;
+            &lt;xm:attribute name="value" value=""/&gt;
+        &lt;/xm:set-attribute&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="variable-element-type"
+            ref="variable-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The variable command binds an arbitrary variable name to some value (the
+result of the XPath query specified by the select attribute).</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The variable command binds an arbitrary variable name to some value (the
+result of the XPath query specified by the select attribute). A sample
+variable command element looks like this:<br><br>
+
+&nbsp;&nbsp;&nbsp;&nbsp;&lt;xm:variable name="myvar" select="/ui/rootPane/freePane[1]" clone="true"/&gt;<br><br>
+
+The variable command should be used together with other commands that can use the
+value of the bound variable. Otherwise it's not of much use. For example: <br><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:variable name="myvar" select="/ui/rootPane/freePane[1]" clone="true"/&gt;
+        &lt;xm:append select="/ui/rootPane"&gt;
+            &lt;xm:value-of name="myvar"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above set of commands does the following:
+<ul>
+<li>The first command (variable) binds a variable named "myvar" to a clone of the first
+child freePane of the rootPane element.
+<li>The second command (append) appends the value of the variable "myvar" (the cloned freePane from the first command)
+to the rootPane element of the same document.
+</ul><br>
+Variables bound by the variable command are only visible to other commands enclosed
+by the same &lt;xm:modifications/&gt; element.  They also have to appear before the
+commands that need to use the bound variables (since the commands are
+executed in order).
+
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+Change the value of the input field and click the clone button. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div><input id="username" type="text" value="janesmith"></div><br>
+    <div id="inputContainer">
+    </div>
+    <input style="width:150px" type="button" value="Clone the Input" onclick="$.xmodify({url:'../../../operations/variable.xml'});"/>
+</div>
+<br>
+<p><b>variable.xml</b></p>
+<p>This file uses the variable xModify instruction create a copy of the input field.  Then inside of the
+    append tag the value-of tag is used to refer to the variable tag. 
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:variable name="variableName" select="#username"/&gt;
+        &lt;xm:append select="#inputContainer"&gt;
+            &lt;xm:value-of name="variableName"/&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="replace-children-element-type"
+            ref="replace-children-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The replace-children command does the following: for each element returned
+by the XPath query, the element's children are removed; the command arguments
+are inserted in their place.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The replace-children command does the following: for each element returned
+by the XPath query, the element's children are removed; the command arguments
+are inserted in their place.
+<br><br>
+
+The XPath query must return the following set: ( Element | Document )*. 
+If any of the results of the XPath query is not an Element or a Document, an 
+UpdateException is thrown and the execution of the &lt;xm:modifications/&gt; 
+block is halted.  If the XPath query selects the Document object, the root 
+Element will be replaced with the child of the directive Element.  Note that 
+only one child is expected in this case. If the directive element has more than
+one child when the XPath query selects the Document object, an xModifyException 
+will be thrown.<br><br>
+
+The following logic applies to the arguments of the replace-children command based 
+on the type of each argument:
+
+<ul>
+<li>value-of directive element is executed and the value of the bound variable will get
+inserted (not the directive element itself)
+<li>clone directive element is executed and the cloned elements (which is the result of
+ executing the command) will get inserted.
+<li>any other xModify directive element will get inserted as is.
+<li>element in any other namespace will be inserted as is. If the XPath query
+    returns more than 1 result, the element is cloned before the insertion to prevent
+    id conflicts (the clone is deep).
+<li>string argument is inserted as is.
+</ul>
+<br>
+
+<h4>Here is a XAL example:</h4><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:replace-children select="id('mywindow')"&gt;
+            &lt;freePane id="somePanel"/&gt;
+        &lt;/xm:replace-children&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will remove ALL of the children of the selected window (id="mywindow")
+and in their place will append the specified freePane (id="somePanel") so the window will
+have just 1 new child element after the command is executed.
+
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+Choose the anwser to the question and click "Submit", the results of the poll
+will be displayed. 
+<br><br>
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Will the Redsox win the World Series?</b></div>
+    <div>
+         <input type="radio" name="yes">Yes<br>
+         <input type="radio" name="no">No<br>
+         <input style="width:150px" type="button" value="Submit" onclick="$.xmodify({url:'../../../operations/replace-children.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>replace-children.xml</b></p>
+<p>This file uses the replace-children xModify instruction to replace the children of the div that contains the poll.
+The select attribute of the replace tag denotes the location of the element to replace.  
+Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:replace-children select="#replace-contents"&gt;
+            &lt;![CDATA[
+                &lt;div&gt;&lt;b&gt;Results of Poll.&lt;/b&gt;&lt;/div&gt;&lt;br&gt;
+                    &lt;div&gt;
+                        100% Yes&lt;br&gt;
+                        0% No
+                    &lt;/div&gt;
+                &lt;/div&gt;
+            ]]&gt;
+        &lt;/xm:replace-children&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="insert-after-element-type"
+            ref="insert-after-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The insert-after command inserts its arguments (specified as children of 
+the command element) after each of the results returned by the XPath 
+query of the command.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The insert-after command inserts its arguments (specified as children of 
+the command element) after each of the results returned by the XPath 
+query of the command. <br><br>
+
+The XPath query must select the following set: ( Element | Text )*. 
+If some result of the XPath query is not one of the two types, an UpdateException is thrown
+and the execution of the &lt;xm:modifications/&gt; block is halted.  An UpdateException
+will also be thrown if the XPath query selects the root Element of the document.<br><br>
+
+The following logic applies to the arguments of the insert-after command based 
+on the type of each argument:
+
+<ul>
+<li>value-of directive element: the value of the bound variable will get
+inserted (not the directive element itself)
+<li>clone directive element is executed and the cloned elements (which is the result of
+ executing the command) will get inserted.
+<li>any other xModify directive element will get inserted as is.
+<li>element in any other namespace will be inserted as is. If the XPath query
+    returns more than 1 result, the element is cloned before the insertion to prevent
+    id conflicts (the clone is deep).
+<li>string argument is inserted as is.
+</ul>
+<br>
+<h4>Here is a XAL example:</h4><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:insert-after select="id('somepanel')"&gt;
+            &lt;freePane id="mypanel"/&gt;
+        &lt;/xm:insert-after&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will insert the new freePane (id="mypanel") after the 
+freePane whose id="somepanel". ("after" means the new freePane will appear after 
+the selected freePane in the list of children of the selected freePane's parent element).
+
+<h4>HTML Example:</h4><br>
+
+In the sample below pressing the "Add row to table" will create a new row in the table before the 
+the Jane Smith row.
+
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+<p>
+<table style="width:310px" id="mytable">
+    <tr style="background-color:#aaa"><th width="150px" align="left">Employee ID</th><th width="150px" align="left">Full Name</th></tr>
+    <tr id="insertAfterMe"><td>3456g</td><td>Jane Smith</td></tr>
+    <tr><td>9833o</td><td>Larry Doyle</td></tr>
+<table>
+<input style="width:150px" type="button" value="Add row to table" onclick="$.xmodify({url:'../../../operations/insert-after.xml'});"/>
+<input style="width:150px" type="button" value="Reset table" onclick="$.xmodify({url:'../../../operations/resettable2.xml'});"/>
+</p>
+<br>
+
+<p><b>insert-after.xml</b></p>
+<p>This file uses the insert-after xModify instruction to add a new row to the html table.
+The select attribute of the append tag denotes the location of the element that the contents
+be inserted before.  Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:insert-after select="#insertAfterMe"&gt;
+            &lt;![CDATA[
+            &lt;tr&gt;
+                &lt;td&gt;12390i&lt;/td&gt;
+                &lt;td&gt;Larry Franklin&lt;/td&gt;
+            &lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:insert-after&gt;
+
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="set-attribute-element-type"
+            ref="set-attribute-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The set-attribute command sets the specified attributes in all of the elements
+returned by the XPath query.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The set-attribute command sets the specified attributes in all of the elements
+returned by the XPath query.  All attributes to be set need to be specified as
+an attribute directive element (i.e. &lt;xm:attribute name="myattr" value="somevalue"/&gt;)
+<br><br>
+
+A sample set-attribute command element looks like: <br><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;<br>
+        &lt;xm:set-attribute select="/ui/rootPane/freePane[1]/button"&gt;<br>
+            &lt;xm:attribute name="myattr1" value="somevalue1"/&gt;<br>
+            &lt;xm:attribute name="myattr2" value="somevalue2"/&gt;<br>
+        &lt;/xm:set-attribute&gt;<br>
+    &lt;/xm:modifications&gt;<br><br>
+</pre>
+After the above command is executed, every button element that is a child of the 
+first child freePane of the rootPane element in the document "mydocument" will have
+2 new attributes: myattr1 and myattr2 with the specified values. <br><br>
+
+The XPath query of the set-attribute command must return the following set: ( Element )*. 
+If any of the results of the XPath query is not an Element, an UpdateException is thrown
+and the execution of the &lt;xm:modifications/&gt; block is halted.<br><br>
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+The buttons below can be used to clear and reset the values of the form inputs. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div>
+         Username: <input id="username" type="text" value="janesmith"><br>
+         Password: <input id="password" type="password" value="wakeup"><br><br>
+         <input style="width:150px" type="button" value="Clear" onclick="$.xmodify({url:'../../../operations/clear-form.xml'});"/>
+         <input style="width:150px" type="button" value="Reset" onclick="$.xmodify({url:'../../../operations/reset-form.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>clear-form.xml</b></p>
+<p>This file uses the set-attribute xModify instruction to change the text of the input.
+The select attribute of the replace tag denotes the location of the element to change.  
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:set-attribute select="#username"&gt;
+            &lt;xm:attribute name="value" value=""/&gt;
+        &lt;/xm:set-attribute&gt;
+        &lt;xm:set-attribute select="#password"&gt;
+            &lt;xm:attribute name="value" value=""/&gt;
+        &lt;/xm:set-attribute&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview
+            name="one-element-child-directive-element-type"
+            ref="one-element-child-directive-element-type.xml"
+            isAbstract="true" isMixed="false">
+            <brief-documentation>
+Elements of this type can take exactly 1 child which has to be an XML element.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+Elements of this type can take exactly 1 child which has to be an XML element.
+An example of a command that extends this type is create-document.
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="style-element-type"
+            ref="style-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+The style directive element is only used as an argument to the set-style
+directive.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+The style directive element is only used as an argument to the set-style
+directive. The element contains two attributes:<br> 
+<ul>
+<li> name - the name of the style to be set.
+<li> value - the value of the style to be set.
+</ul>
+
+<br><br>
+
+<h4>HTML Example:</h4>
+<br><br>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+The buttons below can be used to clear and reset the values of the form inputs. 
+<br><br>
+
+<div style="border:1px solid #aaa;margin:10px;padding:10px;" id="replace-contents">
+    <div><b>Please login!</b></div><br>
+    <div>
+         Username: <input id="username" type="text" value="janesmith"><br>
+         Password: <input id="password" type="password" value="wakeup"><br><br>
+         <input style="width:150px" type="button" value="Change Style" onclick="$.xmodify({url:'../../../operations/set-style.xml'});"/>
+    </div>
+</div>
+<br>
+<p><b>set-style.xml</b></p>
+<p>This file uses the set-style xModify instruction to change the background-color and border styles of the input.
+The select attribute of the set-style tag denotes the location of the element to change.  
+</p>
+<pre>
+&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:set-style select="//INPUT"&gt;
+            &lt;xm:style name="background-color" value="red"/&gt;
+            &lt;xm:style name="border" value="3px dashed #aaa"/&gt;
+        &lt;/xm:set-style&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+        <complex-type-overview name="insert-before-element-type"
+            ref="insert-before-element-type.xml" isAbstract="false" isMixed="false">
+            <brief-documentation>
+&lt;br&gt;The insert-before command inserts its arguments (specified as children of 
+the command element) before each of the results returned by the XPath 
+query of the command.</brief-documentation>
+            <xsd:annotation>
+                <xsd:documentation xml:lang="en"><![CDATA[
+<br>The insert-before command inserts its arguments (specified as children of 
+the command element) before each of the results returned by the XPath 
+query of the command. <br><br>
+
+The XPath query must select the following set: ( Element | Text )*. 
+If some result of the XPath query is not one of the two types, an UpdateException is thrown
+and the execution of the &lt;xm:modifications/&gt; block is halted. An UpdateException
+will also be thrown if the XPath query selects the root Element of the document.
+<br><br>
+
+The following logic applies to the arguments of the insert-before command based 
+on the type of each argument:
+
+<ul>
+<li>value-of directive element: the value of the bound variable will get
+inserted (not the directive element itself)
+<li>clone directive element: the cloned elements (which is the result of
+ executing the command) will get inserted.
+<li>any other xModify directive element will get inserted as is.
+<li>elements in any other namespace will be inserted as is. If the XPath query
+    returns more than 1 result, the element is cloned before the insertion to prevent
+    id conflicts (the clone is deep).
+<li>string argument is inserted as is.
+</ul>
+<br>
+<h4>Here is a XAL example:</h4><br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" document="mydocument"&gt;
+        &lt;xm:insert-before select="id('somepanel')"&gt;
+            &lt;freePane id="mypanel"/&gt;
+        &lt;/xm:insert-before&gt;
+    &lt;/xm:modifications&gt;
+</pre>
+The above command will insert the new freePane (id="mypanel") before the 
+freePane whose id="somepanel". ("before" means the new freePane will appear before 
+the selected freePane in the list of children of the selected freePane's parent element).
+
+<br><br>
+
+<h4>HTML Example:</h4><br>
+
+In the sample below pressing the "Add row to table" will create a new row in the table before the 
+the Jane Smith row.
+
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/jquery/jquery-latest.js"></script>
+<script language="JavaScript" type="text/javascript" src="../../../../../javascript/xmodify/xmodify-jquery.js"></script>
+
+<p>
+<table style="width:310px" id="mytable">
+    <tr style="background-color:#aaa"><th width="150px" align="left">Employee ID</th><th width="150px" align="left">Full Name</th></tr>
+    <tr id="insertBeforeMe"><td>3456g</td><td>Jane Smith</td></tr>
+<table>
+<input style="width:150px" type="button" value="Add row to table" onclick="$.xmodify({url:'../../../operations/insert-before.xml'});"/>
+<input style="width:150px" type="button" value="Reset table" onclick="$.xmodify({url:'../../../operations/resettable.xml'});"/>
+</p>
+<br>
+
+<p><b>insert-before.xml</b></p>
+<p>This file uses the insert-before xModify instruction to add a new row to the html table.
+The select attribute of the append tag denotes the location of the element that the contents
+be inserted before.  Typically you will use a &lt![CDATA[ ]]&gt; block to cut down on parse
+and traversal time.</p>
+<pre>&lt;xal xmlns:xm="http://openxal.org/core/xmodify"&gt;
+    &lt;xm:modifications document="html"&gt;
+        &lt;xm:insert-before select="#insertBeforeMe"&gt;
+            &lt;![CDATA[
+            &lt;tr&gt;
+                &lt;td&gt;12390i&lt;/td&gt;
+                &lt;td&gt;Larry Franklin&lt;/td&gt;
+            &lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:insert-before&gt;
+    &lt;/xm:modifications&gt;
+&lt;/xal&gt;
+</pre>
+
+]]></xsd:documentation>
+            </xsd:annotation>
+        </complex-type-overview>
+    </complex-type-list>
+    <simple-type-list>
+        <simple-type-overview name="select-attribute-type" ref="select-attribute-type.xml">
+            <brief-documentation>
+The value of this attribute is any valid XPath query which returns a result 
+set (usually a set of elements or attributes) on which the enclosing xModify 
+command then operates on.</brief-documentation>
+        </simple-type-overview>
+        <simple-type-overview name="document-attribute-type" ref="document-attribute-type.xml">
+            <brief-documentation>
+The value of the 'document' attribute is the name of the document the enclosed
+set of xModify commands will be executed against.</brief-documentation>
+        </simple-type-overview>
+    </simple-type-list>
+</overview>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/html/debug-attribute-type.html
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/html/debug-attribute-type.html?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/html/debug-attribute-type.html (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/html/debug-attribute-type.html Sun Jun 24 20:05:18 2007
@@ -0,0 +1,33 @@
+<html xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:event="http://openxal.org/ui/java/event">
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<link rel="stylesheet" type="text/css" href="../../../css/stylesheet.css">
+</head>
+<body>
+<script src="../../../js/myJS.js" language="javascript" type="text/javascript"></script>
+<h2>
+<span class="smal">http://openxal.org/ui/java </span>
+<br>debug-attribute-type</h2>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleEnumDivID');">Overview</h4>
+</div>
+<div id="simpleEnumDivID" style="display:block;visibility:visible"></div>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleDocDivID');">Documentation</h4>
+</div>
+<div id="simpleDocDivID" class="CDATAContentTable" style="display:block;visibility:visible">
+The valid value for this attribute is a string 'true' or 'false'.  
+When debug=true the result of the XPath query (specified by the 'select' attribute)
+will be logged. If debug=false, the result of the XPath query is not logged.<br><br>
+
+When it's not explicitly specified, the default value is 'false'.
+</div>
+<table class="FooterTable">
+<tr>
+<td align="left" width="50%" class="TableRowColor">Version: Based on Platform 4.5.7.1862</td><td align="right" class="TableRowColor"><span class="updateDate">last update:  2007-06-22</span></td>
+</tr>
+</table>
+</body>
+</html>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/html/document-attribute-type.html
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/html/document-attribute-type.html?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/html/document-attribute-type.html (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/html/document-attribute-type.html Sun Jun 24 20:05:18 2007
@@ -0,0 +1,33 @@
+<html xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:event="http://openxal.org/ui/java/event">
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<link rel="stylesheet" type="text/css" href="../../../css/stylesheet.css">
+</head>
+<body>
+<script src="../../../js/myJS.js" language="javascript" type="text/javascript"></script>
+<h2>
+<span class="smal">http://openxal.org/ui/java </span>
+<br>document-attribute-type</h2>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleEnumDivID');">Overview</h4>
+</div>
+<div id="simpleEnumDivID" style="display:block;visibility:visible"></div>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleDocDivID');">Documentation</h4>
+</div>
+<div id="simpleDocDivID" class="CDATAContentTable" style="display:block;visibility:visible">
+The value of the 'document' attribute is the name of the document the enclosed
+set of xModify commands will be executed against.  If the document attribute is
+not specified it is assumed the xModify commands will be executed against the
+UI DOM. <br>
+To specify the HTML document set the document attribute equal to "html"          
+</div>
+<table class="FooterTable">
+<tr>
+<td align="left" width="50%" class="TableRowColor">Version: Based on Platform 4.5.7.1862</td><td align="right" class="TableRowColor"><span class="updateDate">last update:  2007-06-22</span></td>
+</tr>
+</table>
+</body>
+</html>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/html/mustExist-attribute-type.html
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/html/mustExist-attribute-type.html?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/html/mustExist-attribute-type.html (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/html/mustExist-attribute-type.html Sun Jun 24 20:05:18 2007
@@ -0,0 +1,41 @@
+<html xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:event="http://openxal.org/ui/java/event">
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<link rel="stylesheet" type="text/css" href="../../../css/stylesheet.css">
+</head>
+<body>
+<script src="../../../js/myJS.js" language="javascript" type="text/javascript"></script>
+<h2>
+<span class="smal">http://openxal.org/ui/java </span>
+<br>mustExist-attribute-type</h2>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleEnumDivID');">Overview</h4>
+</div>
+<div id="simpleEnumDivID" style="display:block;visibility:visible"></div>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleDocDivID');">Documentation</h4>
+</div>
+<div id="simpleDocDivID" class="CDATAContentTable" style="display:block;visibility:visible">
+The valid value for this attribute is a string 'true' or 'false'. <p>
+ 
+The 'mustExist' attribute gives you control over one potential error case:
+the XPath query specified by the 'select' attribute returned 0 results. When this happens,
+if 'mustExist=true' an exception will be thrown which will halt the execution
+of the rest of the xModify commands contained within the enclosing &lt;xm:modifications/&gt; element
+as well as any other &lt;xm:modifications/&gt; blocks that come after the one where the exception
+occured. <br>
+
+If 'mustExist=false' and the XPath query returns 0 results the code will skip the
+command and proceed executing the rest of the commands.<br><br>
+
+When it's not explicitly specified, the default value is 'false'.
+</div>
+<table class="FooterTable">
+<tr>
+<td align="left" width="50%" class="TableRowColor">Version: Based on Platform 4.5.7.1862</td><td align="right" class="TableRowColor"><span class="updateDate">last update:  2007-06-22</span></td>
+</tr>
+</table>
+</body>
+</html>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/html/select-attribute-type.html
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/html/select-attribute-type.html?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/html/select-attribute-type.html (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/html/select-attribute-type.html Sun Jun 24 20:05:18 2007
@@ -0,0 +1,60 @@
+<html xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:event="http://openxal.org/ui/java/event">
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<link rel="stylesheet" type="text/css" href="../../../css/stylesheet.css">
+</head>
+<body>
+<script src="../../../js/myJS.js" language="javascript" type="text/javascript"></script>
+<h2>
+<span class="smal">http://openxal.org/ui/java </span>
+<br>select-attribute-type</h2>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleEnumDivID');">Overview</h4>
+</div>
+<div id="simpleEnumDivID" style="display:block;visibility:visible"></div>
+<div>
+<h4 class="Group">
+<img src="../../../images/minus.gif" id="simpleEnumMinus" onClick="javascript:toggleDiv(this,'simpleDocDivID');">Documentation</h4>
+</div>
+<div id="simpleDocDivID" class="CDATAContentTable" style="display:block;visibility:visible">
+The value of this attribute is any valid XPath query which returns a result 
+set (usually a set of elements or attributes) on which the enclosing xModify 
+command then operates on. <p>
+Shown below is a valid xModify command set containing just 1 command: remove-element.<br><br>
+           
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" 
+            document="mydocument"&gt;
+        &lt;xm:remove-element select="/ui/rootPane/freePane[1]/button"/&gt;
+    &lt;/xm:modifications&gt;
+</pre>             
+<br>
+The 'select' attribute of this command contains the following XPath query:
+"/ui/rootPane/freePane[1]/button". This query selects all buttons in the document "mydocument" 
+that are children of the first child freePane of the rootPane element.  All of these buttons
+are then removed from the document by the remove-element command.
+
+<br><br>
+When selecting elements in the HTML document be sure to capitalize the element names.  This is
+a result of the way the are store in the browser.  The following example will append a row to the table
+with an id of &quot;myTable&quot;.  Notice on the XPath statement also contains the TBODY which is 
+standard on all tables.
+<br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" 
+            document="html"&gt;
+        &lt;xm:append select="TABLE[@id='myTable']/TBODY"&gt;
+            &lt;![CDATA[ &lt;tr&gt;&lt;td&gt;New Person&lt/td&gt;&lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+</pre>   
+</div>
+<table class="FooterTable">
+<tr>
+<td align="left" width="50%" class="TableRowColor">Version: Based on Platform 4.5.7.1862</td><td align="right" class="TableRowColor"><span class="updateDate">last update:  2007-06-22</span></td>
+</tr>
+</table>
+</body>
+</html>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/debug-attribute-type.xml
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/debug-attribute-type.xml?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/debug-attribute-type.xml (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/debug-attribute-type.xml Sun Jun 24 20:05:18 2007
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<simpleType xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:event="http://www.w3.org/2001/XMLSchema"
+    xmlns:meta="http://www.w3.org/2001/XMLSchema" baseType="string" name="debug-attribute-type">
+    <xsd:annotation>
+        <xsd:documentation xml:lang="en"><![CDATA[
+The valid value for this attribute is a string 'true' or 'false'.  
+When debug=true the result of the XPath query (specified by the 'select' attribute)
+will be logged. If debug=false, the result of the XPath query is not logged.<br><br>
+
+When it's not explicitly specified, the default value is 'false'.
+]]></xsd:documentation>
+    </xsd:annotation>
+</simpleType>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/document-attribute-type.xml
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/document-attribute-type.xml?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/document-attribute-type.xml (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/document-attribute-type.xml Sun Jun 24 20:05:18 2007
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<simpleType xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:event="http://www.w3.org/2001/XMLSchema"
+    xmlns:meta="http://www.w3.org/2001/XMLSchema" baseType="string" name="document-attribute-type">
+    <xsd:annotation>
+        <xsd:documentation xml:lang="en"><![CDATA[
+The value of the 'document' attribute is the name of the document the enclosed
+set of xModify commands will be executed against.  If the document attribute is
+not specified it is assumed the xModify commands will be executed against the
+UI DOM. <br>
+To specify the HTML document set the document attribute equal to "html"          
+]]></xsd:documentation>
+    </xsd:annotation>
+</simpleType>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/mustExist-attribute-type.xml
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/mustExist-attribute-type.xml?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/mustExist-attribute-type.xml (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/mustExist-attribute-type.xml Sun Jun 24 20:05:18 2007
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<simpleType xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:event="http://www.w3.org/2001/XMLSchema"
+    xmlns:meta="http://www.w3.org/2001/XMLSchema" baseType="string" name="mustExist-attribute-type">
+    <xsd:annotation>
+        <xsd:documentation xml:lang="en"><![CDATA[
+The valid value for this attribute is a string 'true' or 'false'. <p>
+ 
+The 'mustExist' attribute gives you control over one potential error case:
+the XPath query specified by the 'select' attribute returned 0 results. When this happens,
+if 'mustExist=true' an exception will be thrown which will halt the execution
+of the rest of the xModify commands contained within the enclosing &lt;xm:modifications/&gt; element
+as well as any other &lt;xm:modifications/&gt; blocks that come after the one where the exception
+occured. <br>
+
+If 'mustExist=false' and the XPath query returns 0 results the code will skip the
+command and proceed executing the rest of the commands.<br><br>
+
+When it's not explicitly specified, the default value is 'false'.
+]]></xsd:documentation>
+    </xsd:annotation>
+</simpleType>

Added: incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/select-attribute-type.xml
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/select-attribute-type.xml?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/select-attribute-type.xml (added)
+++ incubator/xap/site/docs/xmodify/doc/simpleTypes/xml/select-attribute-type.xml Sun Jun 24 20:05:18 2007
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<simpleType xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+    xmlns:event="http://www.w3.org/2001/XMLSchema"
+    xmlns:meta="http://www.w3.org/2001/XMLSchema" baseType="string" name="select-attribute-type">
+    <xsd:annotation>
+        <xsd:documentation xml:lang="en"><![CDATA[
+The value of this attribute is any valid XPath query which returns a result 
+set (usually a set of elements or attributes) on which the enclosing xModify 
+command then operates on. <p>
+Shown below is a valid xModify command set containing just 1 command: remove-element.<br><br>
+           
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" 
+            document="mydocument"&gt;
+        &lt;xm:remove-element select="/ui/rootPane/freePane[1]/button"/&gt;
+    &lt;/xm:modifications&gt;
+</pre>             
+<br>
+The 'select' attribute of this command contains the following XPath query:
+"/ui/rootPane/freePane[1]/button". This query selects all buttons in the document "mydocument" 
+that are children of the first child freePane of the rootPane element.  All of these buttons
+are then removed from the document by the remove-element command.
+
+<br><br>
+When selecting elements in the HTML document be sure to capitalize the element names.  This is
+a result of the way the are store in the browser.  The following example will append a row to the table
+with an id of &quot;myTable&quot;.  Notice on the XPath statement also contains the TBODY which is 
+standard on all tables.
+<br>
+<pre>
+    &lt;xm:modifications version="1.0" xmlns:xm="http://openxal.org/core/xmodify" 
+            document="html"&gt;
+        &lt;xm:append select="TABLE[@id='myTable']/TBODY"&gt;
+            &lt;![CDATA[ &lt;tr&gt;&lt;td&gt;New Person&lt/td&gt;&lt;/tr&gt;
+            ]]&gt;
+        &lt;/xm:append&gt;
+    &lt;/xm:modifications&gt;
+</pre>   
+]]></xsd:documentation>
+    </xsd:annotation>
+</simpleType>

Added: incubator/xap/site/docs/xmodify/frame-bottom.html
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/frame-bottom.html?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/frame-bottom.html (added)
+++ incubator/xap/site/docs/xmodify/frame-bottom.html Sun Jun 24 20:05:18 2007
@@ -0,0 +1,21 @@
+<META http-equiv = "Expires" CONTENT="Sun, 31 Dec 1995 09:30:00">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional">
+<html>
+	<head>
+		<title>XAP: Welcome</title>
+		<LINK REL="STYLESHEET" HREF="../../main.css">
+	</head>
+	<body class=body>
+		<div style="width:972px;">
+			<table width=100% BORDER="0" CELLSPACING="0" CELLPADDING="0" style="background-color: white; nothing: #F7F8FA;">
+				<tr>
+					<td colspan="7" align="center" style="border-top: 1px white solid; padding-top: 8px;">
+						<span class="subheader" style="color: #295A8F; font-size: 7pt;">Copyright 2006 
+							<a href="http://www.apache.org/licenses/" target="_parent" style="font-size: 8pt; ; color: #295A8F;">The Apache Software Foundation<a>
+						</span>
+					</td>
+				</tr>
+			</table>
+		</div>
+	</body>
+</html>

Added: incubator/xap/site/docs/xmodify/frame-index.html
URL: http://svn.apache.org/viewvc/incubator/xap/site/docs/xmodify/frame-index.html?view=auto&rev=550329
==============================================================================
--- incubator/xap/site/docs/xmodify/frame-index.html (added)
+++ incubator/xap/site/docs/xmodify/frame-index.html Sun Jun 24 20:05:18 2007
@@ -0,0 +1,20 @@
+<META http-equiv = "Expires" CONTENT="Sun, 31 Dec 1995 09:30:00">
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional">
+<html>
+	<HEAD>
+	    <TITLE>Nexaweb API</TITLE>
+		<style>
+			body {
+				margin 0px; margin-top: 3px; padding: 0px;
+			}
+		</style>
+	</HEAD>
+	<frameset rows="100px,*, 40px" frameborder=0 frameborder=no>
+		<frame src="frame-top.html" name="header" scrolling="no" noresize/>
+		<frameset cols="260px,*" frameborder=0 frameborder=no>
+			<frame src="frame-left.html" noresize name="navigation" title="Navigation"/>
+			<frame src="content/overview.html" name="content" title="Content" noresize />
+		</frameset>
+		<frame src="frame-bottom.html" name="footer" scrolling="no" noresize/>
+	</frameset>
+</html>
\ No newline at end of file



Mime
View raw message