xmlbeans-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ce...@apache.org
Subject svn commit: r160610 [1/3] - in xmlbeans/site: build/site/docs/2.0.0/guide/ build/site/documentation/ build/site/samples/ build/site/sourceAndBinaries/ src/documentation/content/docs/2.0.0/guide/ src/documentation/content/xdocs/documentation/ src/documentation/content/xdocs/sourceAndBinaries/
Date Fri, 08 Apr 2005 21:14:45 GMT
Author: cezar
Date: Fri Apr  8 14:14:42 2005
New Revision: 160610

URL: http://svn.apache.org/viewcvs?view=rev&rev=160610
Log:
Yana Kadiyska. Checking in updated docs

Added:
    xmlbeans/site/build/site/docs/2.0.0/guide/tools.html
Modified:
    xmlbeans/site/build/site/docs/2.0.0/guide/conSelectingXMLwithXQueryPathXPath.html
    xmlbeans/site/build/site/documentation/conInstallGuide.html
    xmlbeans/site/build/site/documentation/conInstallGuide.pdf
    xmlbeans/site/build/site/documentation/tutorial_getstarted.html
    xmlbeans/site/build/site/documentation/tutorial_getstarted.pdf
    xmlbeans/site/build/site/samples/AbstractTypes.html
    xmlbeans/site/build/site/samples/vxsdb.html
    xmlbeans/site/build/site/sourceAndBinaries/index.html
    xmlbeans/site/build/site/sourceAndBinaries/index.pdf
    xmlbeans/site/src/documentation/content/docs/2.0.0/guide/conSelectingXMLwithXQueryPathXPath.html
    xmlbeans/site/src/documentation/content/xdocs/documentation/conInstallGuide.xml
    xmlbeans/site/src/documentation/content/xdocs/documentation/tutorial_getstarted.xml
    xmlbeans/site/src/documentation/content/xdocs/sourceAndBinaries/index.xml

Modified: xmlbeans/site/build/site/docs/2.0.0/guide/conSelectingXMLwithXQueryPathXPath.html
URL: http://svn.apache.org/viewcvs/xmlbeans/site/build/site/docs/2.0.0/guide/conSelectingXMLwithXQueryPathXPath.html?view=diff&r1=160609&r2=160610
==============================================================================
--- xmlbeans/site/build/site/docs/2.0.0/guide/conSelectingXMLwithXQueryPathXPath.html (original)
+++ xmlbeans/site/build/site/docs/2.0.0/guide/conSelectingXMLwithXQueryPathXPath.html Fri Apr  8 14:14:42 2005
@@ -1,270 +1 @@
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
-
-<!-- Copyright 2004 The Apache Software Foundation
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License. -->
-<html>
-<head>
-<!-- InstanceBeginEditable name="doctitle" -->
-<title>Selecting XML with XQuery and XPath</title>
-<!-- InstanceEndEditable -->
-<!--(Meta)==========================================================-->
-
-<meta http-equiv=Content-Type content="text/html; charset=$CHARSET;">
-
-
-<!-- InstanceBeginEditable name="metatags" -->
-
-<meta content="your name" name="author">
-<meta content="A description of the topic contents." name="description">
-<meta content="keywords to help in searches" name="keywords">
-<meta content="10/25/02" name="date last modified">
-<!-- InstanceEndEditable -->
-
-<!--(Links)=========================================================-->
-<!-- InstanceBeginEditable name="head" -->
-<link href="../xmlbeans.css" rel="stylesheet" type="text/css">
-<!-- InstanceEndEditable -->
-<link href="../xmlbeans.css" rel="stylesheet" type="text/css">
-<a href="../../../core/index.html" id="index"></a>
-<script language="JavaScript" src="../../../core/topicInfo.js"></script>
-<script language="JavaScript" src="../../../core/CookieClass.js"></script>
-<script language="JavaScript" src="../../../core/displayContent.js"></script>
-</head>
-
-<!--(Body)==========================================================-->
-<body>
-<script language="JavaScript">
-
-</script>
-<!-- InstanceBeginEditable name="body" -->
-<h1> Selecting XML with XQuery and XPath</h1>
-<div id="topictext">
-  <p>You can use XQuery and XPath to retrieve specific pieces of XML as you might
-    retrieve data from a database. XQuery and XPath provide a syntax for specifying
-    which elements and attributes you're interested in. The XMLBeans API provides
-    two methods for executing XQuery and XPath expressions, and two differing
-    ways to use them. The methods are <span class="langinline">selectPath</span>
-    and <span class="langinline">execQuery</span>, and you can call them from
-    <a href="../reference/org/apache/xmlbeans/XmlObject.html"><span class="langinline">XmlObject</span></a>
-    (or an object inheriting from it) or <a href="../reference/org/apache/xmlbeans/XmlCursor.html"><span class="langinline">XmlCursor</span></a>.
-    The results for the methods differ somewhat. </p>
-  <h2>Using the selectPath Method</h2>
-</div>
-<div>
-  <p>The <span class="langinline">selectPath</span> method is the most efficient
-    way to execute XPath expressions. The <span class="langinline">selectPath</span>
-    method is optimized for XPath. When you use XPath with the <span class="langinline">selectPath</span>
-    method, the value returned is an array of values from the <em>current document</em>.
-    In contrast, when you use <span class="langinline">execQuery</span>, the value
-    returned is a <em>new document</em>.</p>
-  <h3>Calling from XmlObject</h3>
-  <p>When called from <span class="langinline">XmlObject</span> (or a type that
-    inherits from it), this method returns an array of objects. If the expression
-    is executed against types generated from schema, then the type for the returned
-    array is one of the Java types corresponding to the schema. </p>
-  <p>For example, imagine you have the following XML containing employee information.
-    You've compiled the schema describing this XML and the types generated from
-    schema are available to your code.</p>
-<pre>
-&lt;xq:employees xmlns:xq=&quot;http://openuri.org/selectPath&quot;&gt;
-    &lt;xq:employee&gt;
-        &lt;xq:name&gt;Fred Jones&lt;/xq:name&gt;
-        &lt;xq:address location=&quot;home&quot;&gt;
-            &lt;xq:street&gt;900 Aurora Ave.&lt;/xq:street&gt;
-            &lt;xq:city&gt;Seattle&lt;/xq:city&gt;
-            &lt;xq:state&gt;WA&lt;/xq:state&gt;
-            &lt;xq:zip&gt;98115&lt;/xq:zip&gt;
-        &lt;/xq:address&gt;
-        &lt;xq:address location=&quot;work&quot;&gt;
-            &lt;xq:street&gt;2011 152nd Avenue NE&lt;/xq:street&gt;
-            &lt;xq:city&gt;Redmond&lt;/xq:city&gt;
-            &lt;xq:state&gt;WA&lt;/xq:state&gt;
-            &lt;xq:zip&gt;98052&lt;/xq:zip&gt;
-        &lt;/xq:address&gt;
-        &lt;xq:phone location=&quot;work&quot;&gt;(425)555-5665&lt;/xq:phone&gt;
-        &lt;xq:phone location=&quot;home&quot;&gt;(206)555-5555&lt;/xq:phone&gt;
-        &lt;xq:phone location=&quot;mobile&quot;&gt;(206)555-4321&lt;/xq:phone&gt;
-    &lt;/xq:employee&gt;
-&lt;/xq:employees&gt;
-</pre>
-  If you wanted to find the phone numbers whose area code was 206, you could capture
-  the XPath expression in this way:
-  <pre>
-String queryExpression =
-    &quot;declare namespace xq='http://openuri.org/selectPath'&quot; +
-    &quot;$this/xq:employees/xq:employee/xq:phone[contains(., '(206)')]&quot;
-</pre>
-  <p>Notice in the query expression that the variable <span class="langinline">$this</span>
-    represents the current context node (the <span class="langinline">XmlObject</span>
-    that you are querying from). In this example you are querying from the document
-    level <span class="langinline">XmlObject</span>.</p>
-  <p>You could then print the results with code such as the following:</p>
-  <pre>
-/*
- * Retrieve the matching phone elements and assign the results to the corresponding
- * generated type.
- */
-PhoneType[] phones = (PhoneType[])empDoc.selectPath(queryExpression);
-/*
- * Loop through the results, printing the value of the phone element.
- */
-for (int i = 0; i < phones.length; i++)
-{
-    System.out.println(phones[i].stringValue());
-}  </pre>
-
-  <h3>Calling from XmlCursor</h3>
-  <p>When called from an <span class="langinline">XmlCursor</span> instance, the
-    <span class="langinline">selectPath</span> method retrieves a list of selections,
-    or locations in the XML. The selections are remembered by the cursor instance.
-    You can use methods such as <span class="langinline">toNextSelection</span>
-    to navigate among them.</p>
-  <div>
-    <p>The <span class="langinline">selectPath</span> method takes an XPath expression.
-      If the expression returns any results, each of those results is added as
-      a selection to the cursor's list of selections. You can move through these
-      selections in the way you might use <span class="langinline">java.util.Iterator</span>
-      methods to move through a collection.</p>
-    <p> For example, for a path such as <span class="langinline">$this/employees/employee</span>,
-      the results would include a selection for each employee element found by
-      the expression. Note that the variable <span class="langinline">$this</span>
-      is always bound to the current context node, which in this example is the
-      document. After calling the <span class="langinline">selectPath</span> method,
-      you would use various &quot;selection&quot;-related methods to work with
-      the results. These methods include:</p>
-  </div>
-  <ul>
-    <li>
-      <div><span class="langinline">getSelectionCount() </span>to retrieve the
-        number of selections resulting from the query.</div>
-    </li>
-    <li>
-      <div> <span class="langinline">toNextSelection()</span> to move the cursor
-        to the next selection in the list (such as to the one pointing at the
-        next employee element found).</div>
-    </li>
-    <li>
-      <div> <span class="langinline">toSelection(int)</span> to move the cursor
-        to the selection at the specified index (such as to the third employee
-        element in the selection).</div>
-    </li>
-    <li>
-      <div> <span class="langinline">hasNextSelection()</span> to find out if
-        there are more selections after the cursor's current position.</div>
-    </li>
-    <li>
-      <div><span class="langinline"> clearSelections()</span> clears the selections
-        from the current cursor. This doesn't modify the document (in other words,
-        it doesn't delete the selected XML); it merely clears the selection list
-        so that the cursor is no longer keeping track of those positions.</div>
-    </li>
-  </ul>
-  <div>
-    <p>The following example shows how you might use <span class="langinline">selectPath</span>,
-      in combination with the <span class="langinline">push</span> and <span class="langinline">pop</span>
-      methods, to maneuver through XML, retrieving specific values. </p>
-    <pre>
-public void printZipsAndWorkPhones(XmlObject xml)
-{
-    // Declare the namespace that will be used.
-    String xqNamespace =
-        &quot;declare namespace xq='http://openuri.org/selectPath'&quot;;
-
-    // Insert a cursor and move it to the first element.
-    XmlCursor cursor = xml.newCursor();
-    cursor.toFirstChild();
-    /*
-     * Save the cursor's current location by pushing it
-     * onto a stack of saved locations.
-     */
-    cursor.push();
-    // Query for zip elements.
-    cursor.selectPath(xqNamespace + &quot;$this//xq:zip&quot;);
-    /*
-     * Loop through the list of selections, getting the value of
-     * each element.
-     */
-    while (cursor.toNextSelection())
-    {
-        System.out.println(cursor.getTextValue());
-    }
-    // Pop the saved location off the stack.
-    cursor.pop();
-    // Query again from the top, this time for work phone numbers.
-    cursor.selectPath(xqNamespace + &quot;$this//xq:phone[@location='work']&quot;);
-    /*
-     * Move the cursor to the first selection, them print that element's
-     * value.
-     */
-    cursor.toNextSelection();
-    System.out.println(cursor.getTextValue());
-    // Dispose of the cursor.
-    cursor.dispose();
-}
-</pre>
-    <p>Using selections is somewhat like tracking the locations of multiple cursors
-      with a single cursor. This becomes especially clear when you remove the
-      XML associated with a selection. When you do so the selection itself remains
-      at the location where the removed XML was, but now the selection's location
-      is immediately before the XML that was after the XML you removed. In other
-      words, removing XML created a kind of vacuum that was filled by the XML
-      after it, which shifted up into the space &#8212; up into position immediately
-      after the selection location. This is exactly the same as if the selection
-      had been another cursor.</p>
-    <p>Finally, when using selections keep in mind that the list of selections
-      is in a sense &quot;live&quot;. The cursor you're working with is keeping
-      track of the selections in the list. In other words, be sure to call the
-      <span class="langinline">clearSelections</span> method when you're finished
-      with the selections, just as you should call the <span class="langinline">XmlCursor.dispose()</span>
-      method when you're finished using the cursor.</p>
-  </div>
-  <h2>Using the execQuery Method</h2>
-  <p>Use the <span class="langinline">execQuery</span> method to execute XQuery
-    expressions that are more sophisticated than paths. These expressions include
-    more sophisticated loops and FLWR (For, Let, Where, and Results) expressions.
-  </p>
-  <p class="notepara"><strong>Note:</strong> Be sure to see the simpleExpressions
-    sample in the SamplesApp application for a sampling of XQuery expressions
-    in use.</p>
-  <h3>Calling from XmlObject</h3>
-  <p>Unlike <span class="langinline">selectPath</span>, calling <span class="langinline">execQuery</span>
-    from an <span class="langinline">XmlObject</span> instance will return an
-    <span class="langinline">XmlObject</span> array. If the <span class="langinline">XmlObject</span>
-    instances resulting from the XQuery match a recognized XMLBeans type (the
-    namespace and top level element name match up with an XMLBeans type) then
-    the <span class="langinline">XmlObject</span> will be typed; otherwise the
-    <span class="langinline">XmlObject</span> will be untyped.</p>
-  <h3>Calling from XmlCursor</h3>
-</div>
-
-<div>
-  <p>Calling <span class="langinline">execQuery</span> from an <span class="langinline">XmlCursor</span>
-    instance returns a new <span class="langinline">XmlCursor</span> instance.
-    The cursor returned is positioned at the beginning of a new xml document representing
-    the query results, and you can use it to move through the results, cursor-style
-    (for more information, see <a href="conNavigatingXMLwithCursors.html">Navigating
-    XML with Cursors</a>). If the document resulting from the query execution
-    represents a recognized XMLBeans type (the namespace and top level element
-    name match up with an XMLBeans type) then the document resulting from the
-    xquery will have that Java type; otherwise the resulting document will be
-    untyped.</p>
-  <h2>Related Topics</h2>
-</div>
-<p><a href="conGettingStartedwithXMLBeans.html">Getting Started with XMLBeans</a></p>
-<!-- InstanceEndEditable -->
-<script language="JavaScript">
-
-</script>
-</body>
-</html>
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">

<!-- Copyright 2004 The Apache Software Foundation

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

         http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License. -->
<html>
<head>
<!-- InstanceBeginEditable name="doctitle" -->
<title>Selecting XML with XQuery and XPath</title>
<!-- InstanceEndEditable -->
<!--(Meta)==========================================================-->

<meta http-equiv=Content-Type content="text/html; charset=$CHARSET;">


<!-- InstanceBeginEditable name="metatags" -->

<meta content="your name" name="author">
<meta content="A description of the topic contents." name="description">
<meta content="keywords to help in searches" name="keywords">
<meta content="10/25/02" name="date last modified">
<!-- InstanceEndEditable -->

<!--(Links)=========================================================-->
<!-- InstanceBeginEditable name="head" -->
<link href="../xmlbeans.css" rel="stylesheet" type="text/css">
<!-- InstanceEndEditable -->
<link href="../xmlbeans.css" rel="stylesheet" type="text/css">
<a href="../../../core/index.html" id="index"></a>
<script language="JavaScript" src="../../../core/topicInfo.js"></script>
<script language="JavaScript" src="../../../core/CookieClass.js"></script>
<script language="JavaScript" src="../../../core/displayContent.js"></script>
</head>

<!--(Body)==========================================================-->
<body>
<script language="JavaScript">

</script>
<!-- InstanceBeginEditable name="body" -->
<h1> Selecting XML with XQuery and XPath</h1>
<div id="topictext">
    <p>You can use XQuery and XPath to retrieve specific pieces of XML as you might
        retrieve data from a database. XQuery and XPath provide a syntax for specifying
        which elements and attributes you're interested in. The XMLBeans API provides
        two methods for executing XQuery and XPath expressions, and two differing
        ways to use them. The methods are <span class="langinline">selectPath</span>
        and <span class="langinline">execQuery</span>, and you can call them from
        <a href="../reference/org/apache/xmlbeans/XmlObject.html"><span class="langinline">XmlObject</span></a>
        (or an object inheriting from it) or <a href="../reference/org/apache/xmlbeans/XmlCursor.html"><span class="langinline">XmlCursor</span></a>.
        The results for the methods differ somewhat. </p>
    <p class="notepara"><strong>Note:</strong> Be sure to see the XMLBeans <a href="../../../documentation/conInstallGuide.html">installation instructions</a> for getting full support for XPath and XQuery. </p>
    <h2>Using the selectPath Method</h2>
</div>
<div>
  <p>The <span class="langinline">selectPath</span> method is the most efficient
    way to execute XPath expressions. The <span class="langinline">selectPath</span>
    method is optimized for XPath. When you use XPath with the <span class="langinline">selectPath</span>
    method, the value returned is an array of values from the <em>current document</em>.
    In contrast, when you use <span class="langinline">execQuery</span>, the value
    returned is a <em>new document</em>.</p>
    <p> Note that XPath itself does not provide syntax for declaring prefix to URI bindings. For user convenience, we allow XQuery syntax to be used for such purposes. You can consult the latest XQuery draft when using syntax for declaring namespaces.</p>

  <h3>Calling from XmlObject</h3>
  <p>When called from <span class="langinline">XmlObject</span> (or a type that
    inherits from it), this method returns an array of objects. If the expression
    is executed against types generated from schema, then the type for the returned
    array is one of the Java types corresponding to the schema. </p>
  <p>For example, imagine you have the following XML containing employee information.
    You've compiled the schema describing this XML and the types generated from
    schema are available to your code.</p>
<pre>
&lt;xq:employees xmlns:xq=&quot;http://openuri.org/selectPath&quot;&gt;
    &lt;xq:employee&gt;
        &lt;xq:name&gt;Fred Jones&lt;/xq:name&gt;
        &lt;xq:address location=&quot;home&quot;&gt;
            &lt;xq:street&gt;900 Aurora Ave.&lt;/xq:street&gt;
            &lt;xq:city&gt;Seattle&lt;/xq:city&gt;
            &lt;xq:state&gt;WA&lt;/xq:state&gt;
            &lt;xq:zip&gt;98115&lt;/xq:zip&gt;
        &lt;/xq:address&gt;
        &lt;xq:address location=&quot;work&quot;&gt;
            &lt;xq:street&gt;2011 152nd Avenue NE&lt;/xq:street&gt;
            &lt;xq:city&gt;Redmond&lt;/xq:city&gt;
            &lt;xq:state&gt;WA&lt;/xq:state&gt;
            &lt;xq:zip&gt;98052&lt;/xq:zip&gt;
        &lt;/xq:address&gt;
        &lt;xq:phone location=&quot;work&quot;&gt;(425)555-5665&lt;/xq:phone&gt;
        &lt;xq:phone location=&quot;home&quot;&gt;(206)555-5555&lt;/xq:phone&gt;
        &lt;xq:phone location=&quot;mobile&quot;&gt;(206)555-4321&lt;/xq:phone&gt;
    &lt;/xq:employee&gt;
&lt;/xq:employees&gt;
</pre>
  If you wanted to find the phone numbers whose area code was 206, you could capture
  the XPath expression in this way:
  <pre>
String queryExpression =
    &quot;declare namespace xq='http://openuri.org/selectPath';&quot; +
    &quot;$this/xq:employees/xq:employee/xq:phone[contains(., '(206)')]&quot;
</pre>
  <p>Notice in the query expression that the variable <span class="langinline">$this</span>
    represents the current context node (the <span class="langinline">XmlObject</span>
    that you are querying from). In this example you are querying from the document
    level <span class="langinline">XmlObject</span>.</p>
  <p>You could then print the results with code such as the following:</p>
  <pre>
/*
 * Retrieve the matching phone elements and assign the results to the corresponding
 * generated type.
 */
PhoneType[] phones = (PhoneType[])empDoc.selectPath(queryExpression);
/*
 * Loop through the results, printing the value of the phone element.
 */
for (int i = 0; i < phones.length; i++)
{
    System.out.println(phones[i].stringValue());
}  </pre>

  <h3>Calling from XmlCursor</h3>
  <p>When called from an <span class="langinline">XmlCursor</span> instance, the
    <span class="langinline">selectPath</span> method retrieves a list of selections,
    or locations in the XML. The selections are remembered by the cursor instance.
    You can use methods such as <span class="langinline">toNextSelection</span>
    to navigate among them.</p>
  <div>
    <p>The <span class="langinline">selectPath</span> method takes an XPath expression.
      If the expression returns any results, each of those results is added as
      a selection to the cursor's list of selections. You can move through these
      selections in the way you might use <span class="langinline">java.util.Iterator</span>
      methods to move through a collection.</p>
    <p> For example, for a path such as <span class="langinline">$this/employees/employee</span>,
      the results would include a selection for each employee element found by
      the expression. Note that the variable <span class="langinline">$this</span>
      is always bound to the current context node, which in this example is the
      document. After calling the <span class="langinline">selectPath</span> method,
      you would use various &quot;selection&quot;-related methods to work with
      the results. These methods include:</p>
  </div>
  <ul>
    <li>
      <div><span class="langinline">getSelectionCount() </span>to retrieve the
        number of selections resulting from the query.</div>
    </li>
    <li>
      <div> <span class="langinline">toNextSelection()</span> to move the cursor
        to the next selection in the list (such as to the one pointing at the
        next employee element found).</div>
    </li>
    <li>
      <div> <span class="langinline">toSelection(int)</span> to move the cursor
        to the selection at the specified index (such as to the third employee
        element in the selection).</div>
    </li>
    <li>
      <div> <span class="langinline">hasNextSelection()</span> to find out if
        there are more selections after the cursor's current position.</div>
    </li>
    <li>
      <div><span class="langinline"> clearSelections()</span> clears the selections
        from the current cursor. This doesn't modify the document (in other words,
        it doesn't delete the selected XML); it merely clears the selection list
        so that the cursor is no longer keeping track of those positions.</div>
    </li>
  </ul>
  <div>
    <p>The following example shows how you might use <span class="langinline">selectPath</span>,
      in combination with the <span class="langinline">push</span> and <span class="langinline">pop</span>
      methods, to maneuver through XML, retrieving specific values. </p>
    <pre>
public void printZipsAndWorkPhones(XmlObject xml)
{
    // Declare the namespace that will be used.
    String xqNamespace =
        &quot;declare namespace xq='http://openuri.org/selectPath';&quot;;

    // Insert a cursor and move it to the first element.
    XmlCursor cursor = xml.newCursor();
    cursor.toFirstChild();
    /*
     * Save the cursor's current location by pushing it
     * onto a stack of saved locations.
     */
    cursor.push();
    // Query for zip elements.
    cursor.selectPath(xqNamespace + &quot;$this//xq:zip&quot;);
    /*
     * Loop through the list of selections, getting the value of
     * each element.
     */
    while (cursor.toNextSelection())
    {
        System.out.println(cursor.getTextValue());
    }
    // Pop the saved location off the stack.
    cursor.pop();
    // Query again from the top, this time for work phone numbers.
    cursor.selectPath(xqNamespace + &quot;$this//xq:phone[@location='work']&quot;);
    /*
     * Move the cursor to the first selection, them print that element's
     * value.
     */
    cursor.toNextSelection();
    System.out.println(cursor.getTextValue());
    // Dispose of the cursor.
    cursor.dispose();
}
</pre>
    <p>Using selections is somewhat like tracking the locations of multiple cursors
      with a single cursor. This becomes especially clear when you remove the
      XML associated with a selection. When you do so the selection itself remains
      at the location where the removed XML was, but now the selection's location
      is immediately before the XML that was after the XML you removed. In other
      words, removing XML created a kind of vacuum that was filled by the XML
      after it, which shifted up into the space &#8212; up into position immediately
      after the selection location. This is exactly the same as if the selection
      had been another cursor.</p>
    <p>Finally, when using selections keep in mind that the list of selections
      is in a sense &quot;live&quot;. The cursor you're working with is keeping
      track of the selections in the list. In other words, be sure to call the
      <span class="langinline">clearSelections</span> method when you're finished
      with the selections, just as you should call the <span class="langinline">XmlCursor.dispose()</span>
      method when you're finished using the cursor.</p>
  </div>
  <h2>Using the execQuery Method</h2>
  <p>Use the <span class="langinline">execQuery</span> method to execute XQuery
    expressions that are more sophisticated than paths. These expressions include
    more sophisticated loops and FLWR (For, Let, Where, and Results) expressions.
  </p>
  <p class="notepara"><strong>Note:</strong> Be sure to see the simpleExpressions
    sample in the SamplesApp application for a sampling of XQuery expressions
    in use.</p>
  <h3>Calling from XmlObject</h3>
  <p>Unlike <span class="langinline">selectPath</span>, calling <span class="langinline">execQuery</span>
    from an <span class="langinline">XmlObject</span> instance will return an
    <span class="langinline">XmlObject</span> array. If the <span class="langinline">XmlObject</span>
    instances resulting from the XQuery match a recognized XMLBeans type (the
    namespace and top level element name match up with an XMLBeans type) then
    the <span class="langinline">XmlObject</span> will be typed; otherwise the
    <span class="langinline">XmlObject</span> will be untyped.</p>
  <h3>Calling from XmlCursor</h3>
</div>

<div>
  <p>Calling <span class="langinline">execQuery</span> from an <span class="langinline">XmlCursor</span>
    instance returns a new <span class="langinline">XmlCursor</span> instance.
    The cursor returned is positioned at the beginning of a new xml document representing
    the query results, and you can use it to move through the results, cursor-style
    (for more information, see <a href="conNavigatingXMLwithCursors.html">Navigating
    XML with Cursors</a>). If the document resulting from the query execution
    represents a recognized XMLBeans type (the namespace and top level element
    name match up with an XMLBeans type) then the document resulting from the
    xquery will have that Java type; otherwise the resulting document will be
    untyped.</p>
  <h2>Related Topics</h2>
</div>
<p><a href="conGettingStartedwithXMLBeans.html">Getting Started with XMLBeans</a></p>
<!-- InstanceEndEditable -->
<script language="JavaScript">

</script>
</body>
</html>
\ No newline at end of file

Added: xmlbeans/site/build/site/docs/2.0.0/guide/tools.html
URL: http://svn.apache.org/viewcvs/xmlbeans/site/build/site/docs/2.0.0/guide/tools.html?view=auto&rev=160610
==============================================================================
--- xmlbeans/site/build/site/docs/2.0.0/guide/tools.html (added)
+++ xmlbeans/site/build/site/docs/2.0.0/guide/tools.html Fri Apr  8 14:14:42 2005
@@ -0,0 +1,542 @@
+<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN"> <!-- Copyright 2004 The Apache Software Foundation
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License. -->
+<html>
+	<head>
+		<!-- InstanceBeginEditable name="doctitle" -->
+		<title>
+			XMLBeans Tools
+		</title>
+		<!-- InstanceEndEditable --> <!--(Meta)==========================================================-->
+		<meta http-equiv=Content-Type content="text/html; charset=$CHARSET;">
+		<!-- InstanceBeginEditable name="metatags" -->
+		<meta name="author" content="your name">
+		<meta name="description" content="A description of the topic contents.">
+		<meta name="keywords" content="keywords to help in searches">
+		<meta name="date last modified" content="10/25/02">
+		<!-- InstanceEndEditable --> <!--(Links)=========================================================--> <!-- InstanceBeginEditable name="head" --> <link href="../xmlbeans.css" rel="stylesheet" type="text/css"> <!-- InstanceEndEditable --> <link href="../xmlbeans.css" rel="stylesheet" type="text/css"> 
+		<script language="JavaScript" src="../../../core/topicInfo.js"></script>
+		<script language="JavaScript" src="../../../core/CookieClass.js"></script>
+		<script language="JavaScript" src="../../../core/displayContent.js"></script>
+	</head>
+	<!--(Body)==========================================================-->
+	<body>
+		<script language="JavaScript">
+
+</script>
+<!-- InstanceBeginEditable name="body" --> 
+<h1> XMLBeans Tools </h1>
+<p> XMLBeans includes several command-line tools you might find handy as shortcuts 
+  for common tasks. You'll find these tools in the bin directory of the XMLBeans 
+  installation or source tree.</p>
+<dl>
+  <dt> <a href="#dumpxsb">dumpxsb (XSB File Dumper)</a> </dt>
+  <dd> Prints the contents of an XSB file in human-readable form. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#inst2xsd">inst2xsd (Instance to Schema Tool)</a> </dt>
+  <dd> Generates XML schema from XML instance files. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#scomp">scomp (Schema Compiler)</a> </dt>
+  <dd> Compiles a schema into XMLBeans classes and metadata. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#scopy">scopy (Schema Copier)</a> </dt>
+  <dd> Copies the XML schema at the specified URL to the specified file. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#sdownload">sdownload (Schema Downloader)</a> </dt>
+  <dd> Maintains &quot;xsdownload.xml,&quot; an index of locally downloaded XSD 
+    files. URLs that are specified are downloaded if they aren't already cached. 
+    If no files or URLs are specified, all indexed files are relevant. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#sfactor">sfactor (Schema Factoring Tool)</a> </dt>
+  <dd> Factors redundant definitions out of a set of schemas and uses imports 
+    instead. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#svalidate">svalidate (Streaming Instance Validator)</a> </dt>
+  <dd> Validates a schema definition and instances within the schema. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#validate">validate (Instance Validator)</a> </dt>
+  <dd> Validates an instance against a schema. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#xpretty">xpretty (XML Pretty Printer)</a> </dt>
+  <dd> Pretty prints the specified XML to the console. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#xsd2inst">xsd2inst (Schema to Instance Tool)</a> </dt>
+  <dd> Prints an XML instance from the specified global element using the specified 
+    schema. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="#xsdtree">xsdtree (Schema Type Hierarchy Printer)</a> </dt>
+  <dd> Prints an inheritance hierarchy of the types defined in a schema. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <a href="antXmlbean.html">xmlbean Ant task</a> </dt>
+  <dd> Compiles a set of XSD and/or WSDL files into XMLBeans types. </dd>
+</dl>
+<h2> <a name="dumpxsb"></a>dumpxsb (XSB File Dumper) </h2>
+<p> Prints the contents of an XSB file in human-readable form. An XSB file contains 
+  schema meta information needed to perform tasks such as binding and validation. 
+  &quot;XSB&quot; stands for XML Schema Binary.</p>
+<h3> Syntax </h3>
+<pre><strong>dumpxsb </strong><em>myfile.xsb</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <em>myfile.xsb</em> </dt>
+  <dd> The name of an XSB file. </dd>
+</dl>
+<h3> Example </h3>
+<p> The following command and output example use an XSB file generated by compiling 
+  the schema (in EasyPo.xsd) that accompanies the SubstitutionGroup sample. </p>
+<pre>dumpxsb PurchaseOrderDocument.xsb</pre>
+<p> Output: </p>
+<pre>PurchaseOrderDocument.xsb
+  Magic cookie: da7ababe
+  Major version: 2
+  Minor version: 22
+  Release number: 0
+  Filetype: FILETYPE_SCHEMAPOINTER
+  String pool (2):
+  1 = &quot;schema.system.s633ECC92E6CC0ACA137B11B7B38CA3A8&quot;
+  Type system: schema.system.s633ECC92E6CC0ACA137B11B7B38CA3A8</pre>
+<h2> <a name="inst2xsd"></a>inst2xsd (Instance to Schema Tool) </h2>
+<p> Generates XML schema from XML instance files. </p>
+<h3> Syntax </h3>
+<pre><strong>inst2xsd </strong>[<em>options</em>] <em>instance.xml</em>*</pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-design </strong>[<strong>rd </strong>|<strong> ss </strong>|<strong> 
+    vb</strong>] </dt>
+  <dd> The XML schema design type to use for the generated schema. </dd>
+  <dd> <strong>rd</strong> &#8212; Use russian doll design; local elements and 
+    local types. </dd>
+  <dd> <strong>ss</strong> &#8212; Use salami slice design; global elements and 
+    local types. </dd>
+  <dd> <strong>vb</strong> (default) &#8212; Use venetian blind design; local 
+    elements and global complex types. </dd>
+</dl>
+<dt> <strong>-simple-content-types</strong> [<strong>smart</strong> | <strong>string</strong>] 
+</dt>
+<dd> The manner for detecting content types (leaf text) </dd>
+<dd> <strong>smart</strong> (default) &#8212; Use a likely type, such as xs:byte 
+  for a value of &quot;123&quot;. </dd>
+<dd> <strong>string</strong> &#8212; Use xs:string as the type. </dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-enumerations</strong> [<strong>never</strong> | <em>number</em>] 
+</dt>
+<dd> Whether to use enumerations. </dd>
+<dd> <strong>never</strong> &#8212; Never use enumerations. </dd>
+<dd> <em>number</em> (default: 10) &#8212; Use <em>number</em> as the threshold 
+  for enumerations. Specifying &quot;2&quot; will create enumerations for elements 
+  with no more than two different values. </dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-outDir</strong> [<em>dir</em>] </dt>
+<dd> The directory for output files. </dd>
+<dd> <em>dir</em> &#8212; Directory path. Default is '.' (the current directory). 
+</dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-outPrefix</strong> [<em>file_name_prefix</em>] </dt>
+<dd> The prefix for output file names. </dd>
+<dd> <em>file_name_prefix</em> &#8212; Prefix to use. Default is &quot;schema&quot;. 
+</dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-validate</strong> </dt>
+<dd> Validate input instances against generated schemas. </dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-verbose</strong> </dt>
+<dd> Print more informational messages. </dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-license</strong> </dt>
+<dd> Print license information. </dd>
+<dt>&nbsp; </dt>
+<dt> <strong>-help</strong> </dt>
+<dd> Print help information. </dd>
+<h3> Example </h3>
+<p> The following example generates schema0.xsd from Purchase-Order.xml, with 
+  salami slice schema design, simple content types detected where possible, and 
+  enumerations limited to elements with four different values. </p>
+<pre>inst2xsd -design ss -simple-content-types smart -enumerations 4 Purchase-Order.xml</pre>
+<h2> <a name="scomp"></a>scomp (Schema Compiler) </h2>
+<p> Compiles schema into Java XMLBeans classes and metadata. Schema-related work 
+  with XMLBeans begins by compiling schema to generated Java types. You can use 
+  scomp to compile schema from the command line. XMLBeans also provides an Ant 
+  task, <a href="antXmlbean.html">xmlbeans</a>, which you can use to compile schemas. 
+  For run-time schema compilation that doesn't generate files, see the org.apache.xmlbeans.XmlBeans.compileXsd 
+  methods.</p>
+<p>For more information about the types resulting from compiling schema, see <a href="conJavaTypesGeneratedFromUserDerived.html">Java 
+  Types Generated from User-Derived Schema Types</a>, <a href="conXMLBeansSupportBuiltInSchemaTypes.html">XMLBeans 
+  Support for Built-In Schema Types</a>, and <a href="conMethodsForGeneratedJavaTypes.html">Methods 
+  for Types Generated From Schema</a>. </p>
+<p>For more information on getting started with XMLBeans, see <a href="conGettingStartedwithXMLBeans.html">Getting 
+  Started with XMLBeans</a>.</p>
+<h3> Syntax </h3>
+<pre><strong>scomp</strong> [<em>options</em>] [<em>dirs</em>]* [<em>schemaFile.xsd</em>]* [<em>service.wsdl</em>]* [<em>config.xsdconfig</em>]*</pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-cp</strong> [<em>pathA;pathB;pathC</em>] </dt>
+  <dd> Classpath specifying classes to include during compilation. </dd>
+  <dd> <em>pathA;pathB;pathC</em> &#8212; Class search path of directories and 
+    JAR files. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-d</strong> [<em>dir</em>] </dt>
+  <dd> Target directory for CLASS and XSB files. </dd>
+  <dd> <em>dir</em> &#8212; The directory path. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-src</strong> [<em>dir</em>] </dt>
+  <dd> Target directory for generated JAVA files. </dd>
+  <dd> <em>dir</em> &#8212; The directory path. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-srconly</strong> </dt>
+  <dd> Do not compile JAVA files or jar the output. </dd>
+  <dt>&nbsp; </dt>
+  <dd> Note that XSB files are needed in order for CLASS files compiled from the 
+    sources to be useful as XMLBeans classes. To get <em>only JAVA files</em>, 
+    use -src to specify a directory for the JAVA files. To get <em>JAVA and XSB 
+    files in the same directory</em>, use -d to specify a directory that will 
+    include both. To get <em>JAVA and XSB files in separate directories</em>, 
+    use -src for the JAVA file destination and -d for the XSB file destination. 
+  </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-out</strong> [<em>jarFileName</em>] </dt>
+  <dd> The name of the output JAR that will contain the result of compilation. 
+    The default is &quot;xmltypes.jar&quot;. </dd>
+  <dd> <em>jarFileName</em> &#8212; The name for the JAR containing generated 
+    files. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-dl</strong> </dt>
+  <dd> Permit network downloads for imports and includes (this permission is off 
+    by default). </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-noupa</strong> </dt>
+  <dd> Do not enforce the unique particle attribution rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-nopvr</strong> </dt>
+  <dd> Do not enforce the particle valid (restriction) rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-noann</strong> </dt>
+  <dd> Ignore annotations. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-novdoc</strong> </dt>
+  <dd> Do not validate contents of &lt;documentation&gt; elements. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-compiler</strong> </dt>
+  <dd> Path to external Java compiler. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-javasource</strong> [<em>version</em>] </dt>
+  <dd> Generate Java source compatible for the specified Java version (1.4 or 
+    1.5). </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-ms</strong> </dt>
+  <dd> Initial memory for external Java compiler; the default is &quot;8m&quot;. 
+  </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-mx</strong> </dt>
+  <dd> Maximum memory for external Java compiler; the default is &quot;256m&quot;. 
+  </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-debug</strong> </dt>
+  <dd> Compile with debug symbols. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-quiet</strong> </dt>
+  <dd> Print fewer informational messages. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-verbose</strong> </dt>
+  <dd> Print more informational messages. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-version</strong> </dt>
+  <dd> Print version information. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-license</strong> </dt>
+  <dd> Print license information. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-allowmdef</strong> &quot;[<em>namespace</em>] [<em>namespace</em>] 
+    [<em>namespace</em>]&quot; </dt>
+  <dd> Ignore multiple defs in given namespaces. Use <code> ##local </code> to 
+    specify the no-namespace in that list. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-catalog</strong> [<em>fileName</em>] </dt>
+  <dd> Catalog file to use for resolving external entities. With this option, 
+    scomp uses <code> org.apache.xml.resolver.tools.CatalogResolver </code> for 
+    resolving. Note that to use this option, your classpath must include resolver.jar 
+    from http://xml.apache.org/commons/components/resolver/index.html). Copy resolver.jar 
+    to the XMLBEANS_HOME/lib directory, so that the script can pick it up from 
+    there. You can use the <a href="#sdownload">sdownload</a> tool to ensure that 
+    required schemas are present for compilation. </dd>
+  <dd> <em>fileName &#8212; </em>A path to the catalog file. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>dirs</em> </dt>
+  <dd> Directories containing XSD (and possibly XSDCONFIG) files that should be 
+    compiled. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>schemaFile.xsd</em> </dt>
+  <dd> The names of XSD files that should be compiled. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>service.wsdl</em> </dt>
+  <dd> A WSDL file for which types should be generated. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>config.xsdconfig</em> </dt>
+  <dd> The name of an XSDCONFIG file. Use an XSDCONFIG file to guide the naming 
+    of generated classes and packages. Without an XSDCONFIG file, scomp uses the 
+    schema's type names and URI for classes and packages. </dd>
+</dl>
+<h3> Example </h3>
+<p> In the following example, scomp compiles EasyPO.xsd, guiding type naming with 
+  po.xsdconfig. scomp puts generated CLASS and XSB files into a classes directory 
+  one level up, and JAVA source files into a src directory one level up. Source 
+  files will be compatible with Java version 1.5. </p>
+<pre>scomp -d ..\classes -src ..\src -javasource 1.5 EasyPO.xsd po.xsdconfig</pre>
+<p> Here, scomp compiles all of the contents of the schemas directory and puts 
+  the generated files into poschema.jar one level up. </p>
+<pre>scomp -out ..\poschema.jar schemas</pre>
+<p> The following example generates JAVA source and XSB files from the schema 
+  in EasyPO.xsd. No CLASS files are generated, and the JAVA and XSB files are 
+  put into src and xsb directories, respectively. </p>
+<pre>scomp -srconly -src ..\src -d ..\xsb EasyPO.xsd</pre>
+<p> When the schema features imports or includes and you want to use a catalog, 
+  you can tell scomp to use the default catalog resolver (<code>org.apache.xml.resolver.tools.CatalogResolver</code>); 
+  you specify a catalog file with the -catalog option, as in the example below. 
+  (Note that this requires resolver.jar, as noted above for the -catalog option.) 
+  In this example, scomp compiles schemaThatUsesRequiredSchema.xsd into myschemas.jar, 
+  resolving imports from requiredSchema.xsd through xsdownload.xml. The <a href="#sdownload">sdownload</a> 
+  tool is executed first &#8212; this ensures that requiredSchema.xsd is present 
+  for compilation, but does not actually download requiredSchema.xsd unless the 
+  URL at which it's found isn't already cached. This is more efficient than using 
+  scomp's -dl option, which attempts to download every time.</p>
+<pre>sdownload "http://some.org/requiredSchema.xsd" 
+scomp -out ..\myschemas.jar -catalog xsdownload.xml schemaThatUsesRequiredSchema.xsd</pre>
+<p> When a schema features multiple element declarations of the same qname, such 
+  as multiple &lt;xs:any&gt; particles, you might want to disable to &quot;unique 
+  particle validation&quot; rule, which would ordinarily invalidate the schema. 
+  To do this, use the -noupa option, as in the following example. </p>
+<pre>scomp -out ..\myschemas.jar -noupa schemas</pre>
+<h2> <a name="scopy"></a>scopy (Schema Copier) </h2>
+<p> Copies the XML schema at the specified URL to the specified file. </p>
+<h3> Syntax </h3>
+<pre><strong>schemacopy</strong> <em>sourceurl</em> [<em>targetfile</em>]</pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>sourceurl</strong> </dt>
+  <dd> The URL at which the schema is located. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>targetfile</em> </dt>
+  <dd> The file to which the schema should be copied. </dd>
+</dl>
+<h2> <a name="sdownload"></a>sdownload (Schema Downloader) </h2>
+<p> Maintains &quot;xsdownload.xml,&quot; an index of locally downloaded XSD files. 
+  URLs that are specified are downloaded if they aren't already cached. If no 
+  files or URLs are specified, all indexed files are relevant. </p>
+<p> You can use this tool when using <a href="#scomp">scomp</a>, in conjunction 
+  with scomp's -catalog option, to ensure the presence of schemas that are required 
+  for compilation because they're imported or included. This is an alternative 
+  to using scomp's -dl option, which would hit the Internet on every invocation 
+  of scomp. When you use sdownload with -catalog, the download occurs only if 
+  the URL is not already cached. See the scomp section for an example.</p>
+<h3> Syntax </h3>
+<pre><strong>sdownload</strong> [<strong>-dir</strong> <em>directory</em>] [<strong>-refresh</strong>] [<strong>-recurse</strong>] [<strong>-sync</strong>] [<em>url/file</em>]</pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-dir </strong><em>directory</em> </dt>
+  <dd> The directory for the xsdownload.xml file (the default is &quot;.&quot;). 
+  </dd>
+  <dd> <em>directory</em> &#8212; The directory path. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-sync</strong> </dt>
+  <dd> Synchronize the index to any local XSD files in the tree. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-recurse</strong> </dt>
+  <dd> Recursively download imported and included XSD files. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-refresh</strong> </dt>
+  <dd> Re-download all indexed XSD files. </dd>
+</dl>
+<h2> <a name="sfactor"></a>sfactor (Schema Factoring Tool) </h2>
+<p> Factors redundant definitions out of a set of schemas and uses imports instead. 
+</p>
+<h3> Syntax </h3>
+<pre><strong>sfactor</strong> [<strong>-import</strong> <em>common.xsd</em>] [<strong>-out</strong> <em>outputdir</em>] <em>inputdir [-license]</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-import</strong> </dt>
+  <dd> The XSD file to contain redundant definitions for importing. </dd>
+  <dd> <em>common.xsd</em> &#8212; A path to the file. </dd>
+  <dt> <strong>-out</strong> <em>outputdir</em> </dt>
+  <dd> The directory into which to place XSD files resulting from refactoring, 
+    plus a commonly imported common.xsd. </dd>
+  <dt> inputdir </dt>
+  <dd> The directory containing the XSD files with redundant definitions. </dd>
+  <dt> -license </dt>
+  <dd> Print license information. </dd>
+</dl>
+<h2> <a name="svalidate"></a>svalidate (Streaming Instance Validator) </h2>
+<p> Validates the specified instance against the specified schema. Unlike the 
+  <a href="#validate">validate</a> tool, svalidate uses a streaming model through 
+  which you can validate very large documentation with less memory (if the schema 
+  permits it).</p>
+<h3> Syntax </h3>
+<pre><strong>svalidate</strong> [<em>options</em>] <em>schema.xsd</em> <em>instance.xml</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-dl</strong> </dt>
+  <dd> Enable network downloads for imports and includes. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-nopvr</strong> </dt>
+  <dd> Disable particle valid (restriction) rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-noupa</strong> </dt>
+  <dd> Disable unique particle attribution rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-license</strong> </dt>
+  <dd> Print license information. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>schema.xsd</em> </dt>
+  <dd> The schema against which to validate. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>instance.xm</em>l </dt>
+  <dd> The instance to validate. </dd>
+</dl>
+<h2> <a name="validate" id="validate"></a>validate (Instance Validator) </h2>
+<p> Validates a the specified instance against the specified schema. Compare this 
+  tool with the <a href="#svalidate">svalidate</a> tool, which is useful for validating 
+  very large documents. </p>
+<h3> Syntax </h3>
+<pre><strong>validate</strong> [<em>options</em>] <em>schema.xsd</em> <em>instance.xml</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-dl</strong> </dt>
+  <dd> Enable network downloads for imports and includes. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-nopvr</strong> </dt>
+  <dd> Disable particle valid (restriction) rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-noupa</strong> </dt>
+  <dd> Disable unique particle attribution rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-license</strong> </dt>
+  <dd> Print license information. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>schema.xsd</em> </dt>
+  <dd> The schema against which to validate. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>instance.xml</em> </dt>
+  <dd> The instance to validate. </dd>
+</dl>
+<h3> Example </h3>
+<p> The following simple example validates PurchaseOrder.xml against EasyPO.xsd. 
+</p>
+<pre>validate ..\schemas\EasyPO.xsd PurchaseOrder.xml</pre>
+<p> In this example, MySchema imports types from another schema and also includes 
+  multiple particles defined as &lt;xsd:any&gt; types. The validate command here 
+  locates the external schemas for importing (providing there is network access 
+  to the schemas) and ignores the validation rule whereby multiple particles of 
+  the same qname render the schema invalid. </p>
+<pre>validate -dl -noupa ..\schemas\MySchema.xsd AnInstance.xml</pre>
+<h2> <a name="xpretty"></a>xpretty (XML Pretty Printer) </h2>
+<p> Pretty prints the specified XML to the console. </p>
+<h3> Syntax </h3>
+<pre><strong>xpretty</strong> [<em>options</em>] <em>file.xml</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-indent</strong> <em>numberOfSpaces</em> </dt>
+  <dd> Indent the specified number of spaces. </dd>
+  <dd> <em>numberOfSpaces</em> &#8212; The number of spaces to indent. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-license</strong> </dt>
+  <dd> Print license information. </dd>
+</dl>
+<h2> <a name="xsd2inst"></a>xsd2inst (Schema to Instance Tool) </h2>
+<p> Prints an XML instance from the specified global element using the specified 
+  schema. </p>
+<h3> Syntax </h3>
+<pre><strong>xsd2inst</strong> <em>schemafile.xsd</em> <strong>-name</strong> <em>globalElementName</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <em>schemafile.xsd</em> </dt>
+  <dd> The schema file defining the element to print. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-name</strong> </dt>
+  <dd> The name of the global element </dd>
+  <dd> <em>globalElementName </em>&#8212; The local name of the global element 
+    to use as the root of the printed instance. </dd>
+</dl>
+<h3> Example </h3>
+<p> The following command and output use the schema that accompanies the SubstitutionGroup 
+  sample. </p>
+<pre>xsd2inst easypo.xsd -name invoice-header</pre>
+<p> Output </p>
+<pre>&lt;eas:invoice-header xmlns:eas=&quot;http://xmlbeans.apache.org/samples/substitutiongroup/easypo&quot;&gt;
+    &lt;eas:ship-to&gt;
+        &lt;eas:name&gt;string&lt;/eas:name&gt;
+        &lt;eas:address&gt;string&lt;/eas:address&gt;
+    &lt;/eas:ship-to&gt;
+    &lt;eas:bill-to&gt;
+        &lt;eas:name&gt;string&lt;/eas:name&gt;
+        &lt;eas:address&gt;string&lt;/eas:address&gt;
+    &lt;/eas:bill-to&gt;
+    &lt;!--Optional:--&gt;
+    &lt;eas:product id=&quot;3&quot;/&gt;
+    &lt;!--Optional:--&gt;
+    &lt;eas:comment&gt;string&lt;/eas:comment&gt;
+&lt;/eas:invoice-header&gt;</pre>
+<h2> <a name="xsdtree"></a>xsdtree (Schema Type Hierarchy Printer) </h2>
+<p> Prints inheritance hierarchy of types defined in a schema. </p>
+<h3> Syntax </h3>
+<pre><strong>xsdtree</strong> [<strong>-noanon</strong>] [<strong>-nopvr</strong>] [<strong>-noupa</strong>] [<strong>-partial</strong>] [<strong>-license</strong>] <em>schemafile.xsd*</em></pre>
+<h4> Options </h4>
+<dl>
+  <dt> <strong>-noanon</strong> </dt>
+  <dd> Don't include anonymous types in the tree. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-nopvr</strong> </dt>
+  <dd> Disable particle valid (restriction) rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-noupa</strong> </dt>
+  <dd> Disable unique particle attribution rule. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-partial</strong> </dt>
+  <dd> Print only part of the hierarchy. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <strong>-license</strong> </dt>
+  <dd> Print license information. </dd>
+  <dt>&nbsp; </dt>
+  <dt> <em>schemafile.xsd</em> </dt>
+  <dd> The file containing the schema whose hierarchy should be printed. </dd>
+</dl>
+<h3> Example </h3>
+<p> The following command and output use the schema that accompanies the SubstitutionGroup 
+  sample. </p>
+<pre>xsdtree easypo.xsd</pre>
+<p> Output: </p>
+<pre>xmlns:xs=&quot;http://www.w3.org/2001/XMLSchema&quot;
+xmlns:eas=&quot;http://xmlbeans.apache.org/samples/substitutiongroup/easypo&quot;
++-xs:anyType (builtin)
+    +-xs:anySimpleType (builtin)
+    | +-xs:string (builtin)
+    | +-xs:normalizedString (builtin)
+    | +-xs:token (builtin)
+    | +-type of color element in eas:clothing-type (enumeration)
+    +-type of element eas:invoice-header
+    +-type of element eas:purchase-order
+    +-eas:product-type
+    | +-eas:clothing-type
+    | +-eas:book-type
+    +-eas:name-address</pre>
+<h2> <a name="xmlbeans_ant"></a>xmlbean Ant task </h2>
+<p> Compiles a set of XSD and/or WSDL files into XMLBeans types. See <a href="antXmlbean.html">xmlbean 
+  Ant Task</a> for more complete documentation on the task. </p>
+<div> 
+  <p class="relatedtopics"> Related Topics </p>
+  <p> <a href="conGettingStartedwithXMLBeans.html">Getting Started with XMLBeans</a> 
+  </p>
+</div>
+<!-- InstanceEndEditable --> 
+<script language="JavaScript">
+
+</script>
+	</body>
+</html>

Modified: xmlbeans/site/build/site/documentation/conInstallGuide.html
URL: http://svn.apache.org/viewcvs/xmlbeans/site/build/site/documentation/conInstallGuide.html?view=diff&r1=160609&r2=160610
==============================================================================
--- xmlbeans/site/build/site/documentation/conInstallGuide.html (original)
+++ xmlbeans/site/build/site/documentation/conInstallGuide.html Fri Apr  8 14:14:42 2005
@@ -250,16 +250,16 @@
 			
 <li>To get started more quickly, you can 
 			<a href="../sourceAndBinaries/index.html#XMLBeans+Binary+and+Development+Kit">Download the
-			XMLBeans release.</a>
-</li>
-			
+				XMLBeans release.</a> For full XQuery and XPath support, be sure to download the Saxon
+				XQuery processor (version 8.2 and above) at the <a href="http://sourceforge.net/projects/saxon">Saxon site</a>.</li>
+				
 <li>If you're interested, you can also <a href="../sourceAndBinaries/index.html#XMLBeans+Source">build 
 			from the source</a>.</li>
 			
 </ul>
 </div>
 		
-<a name="N10034"></a><a name="Set+Environment+Variables"></a>
+<a name="N10039"></a><a name="Set+Environment+Variables"></a>
 <h3>Set Environment Variables</h3>
 <div style="margin-left: 0 ; border: 2px">
 <p>After downloading and unzipping XMLBeans, you'll need to add environment variables that allow you to 
@@ -278,7 +278,7 @@
         ...
         lib (location of xbean.jar)
         ...</pre>
-<a name="N1004D"></a><a name="Windows+Setup"></a>
+<a name="N10052"></a><a name="Windows+Setup"></a>
 <h4>Windows Setup</h4>
 <div style="margin-left: 0 ; border: 2px">
 <p>On Windows, do the following:</p>
@@ -307,7 +307,7 @@
 			information, see the <a target="_top" href="http://wiki.apache.org/xmlbeans/XmlBeansV1Faq#scompFindingJavac">XMLBeans 
 			FAQ</a>.</p>
 </div>
-<a name="N1008E"></a><a name="UNIX%2FLinux+Setup"></a>
+<a name="N10093"></a><a name="UNIX%2FLinux+Setup"></a>
 <h4>UNIX/Linux Setup</h4>
 <div style="margin-left: 0 ; border: 2px">
 <p>On UNIX/Linux, update your environment as follows:</p>

Modified: xmlbeans/site/build/site/documentation/conInstallGuide.pdf
URL: http://svn.apache.org/viewcvs/xmlbeans/site/build/site/documentation/conInstallGuide.pdf?view=diff&r1=160609&r2=160610
==============================================================================
Binary files - no diff available.

Modified: xmlbeans/site/build/site/documentation/tutorial_getstarted.html
URL: http://svn.apache.org/viewcvs/xmlbeans/site/build/site/documentation/tutorial_getstarted.html?view=diff&r1=160609&r2=160610
==============================================================================
--- xmlbeans/site/build/site/documentation/tutorial_getstarted.html (original)
+++ xmlbeans/site/build/site/documentation/tutorial_getstarted.html Fri Apr  8 14:14:42 2005
@@ -283,7 +283,7 @@
                 
 <li>A schema object model through which, in Java code, you can examine a compiled
                     XML schema. (Note: this aspect of XMLBeans is not covered in this tutorial. For
-                    more information, see <a href="../docs/guide/conIntroToTheSchemaTypeSystem.html">Introduction to the
+                    more information, see <a href="../docs/2.0.0/guide/conIntroToTheSchemaTypeSystem.html">Introduction to the
                         Schema Type System.</a>
                 
 </li>
@@ -554,7 +554,7 @@
                         will be covered in the last part of this tutorial.</p>
 <div class="frame note">
 <div class="label">Note</div>
-<div class="content">For more information about the types generated from schema, see <a href="../docs/guide/conJavaTypesGeneratedFromUserDerived.html">Java Types Generated from User-Derived Schema Types</a>. To learn more about generated methods, see <a href="../docs/guide/conMethodsForGeneratedJavaTypes.html">Methods for Types Generated from Schema</a>. Also, XMLBeans provides its own Java types for built-in schema data types such as <span class="codefrag">xs:dateTime</span>, <span class="codefrag">xs:decimal</span>, and so on. To read more about these, see <a href="../docs/guide/conXMLBeansSupportBuiltInSchemaTypes.html">XMLBeans Support for Built-In Schema Types</a>.</div>
+<div class="content">For more information about the types generated from schema, see <a href="../docs/2.0.0/guide/conJavaTypesGeneratedFromUserDerived.html">Java Types Generated from User-Derived Schema Types</a>. To learn more about generated methods, see <a href="../docs/2.0.0/guide/conMethodsForGeneratedJavaTypes.html">Methods for Types Generated from Schema</a>. Also, XMLBeans provides its own Java types for built-in schema data types such as <span class="codefrag">xs:dateTime</span>, <span class="codefrag">xs:decimal</span>, and so on. To read more about these, see <a href="../docs/2.0.0/guide/conXMLBeansSupportBuiltInSchemaTypes.html">XMLBeans Support for Built-In Schema Types</a>.</div>
 </div>
 </div>
 </div>
@@ -834,7 +834,7 @@
                         instance document as <span class="codefrag">&lt;foo
                         bar="baz"/&gt;</span> will have a <span class="codefrag">START</span>,
                         <span class="codefrag">ATTR</span>, and <span class="codefrag">END</span> token even though it does not have
-                        an end tag. You can learn more about token types at <a href="../docs/guide/conUnderstandingXMLTokens.html">Understanding XML Tokens</a>.</div>
+                        an end tag. You can learn more about token types at <a href="../docs/2.0.0/guide/conUnderstandingXMLTokens.html">Understanding XML Tokens</a>.</div>
 </div>
 <p>Here's the method's full code:</p>
 <pre class="code">private static String addLineItemWithCursor(File purchaseOrder, String itemDescription,
@@ -930,7 +930,7 @@
                     </a> method before passing the edited XML along.</p>
 <div class="frame note">
 <div class="label">Note</div>
-<div class="content">To learn more about using the <span class="codefrag">XmlCursor</span> interface, see <a href="../docs/guide/conNavigatingXMLwithCursors.html">Navigating XML with Cursors</a>.</div>
+<div class="content">To learn more about using the <span class="codefrag">XmlCursor</span> interface, see <a href="../docs/2.0.0/guide/conNavigatingXMLwithCursors.html">Navigating XML with Cursors</a>.</div>
 </div>
 </div>
 </div>

Modified: xmlbeans/site/build/site/documentation/tutorial_getstarted.pdf
URL: http://svn.apache.org/viewcvs/xmlbeans/site/build/site/documentation/tutorial_getstarted.pdf?view=diff&r1=160609&r2=160610
==============================================================================
Binary files - no diff available.



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xmlbeans.apache.org
For additional commands, e-mail: commits-help@xmlbeans.apache.org


Mime
View raw message