You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-users@xerces.apache.org by Scott Shaver <Sc...@mcdata.com> on 2006/04/20 17:05:26 UTC

Xerces 1.4.4, XML, XSD and validation

I'm having trouble with the 1.4.4 xerces trying to validate an xml doc
against a XSD schema.
It always gives me the error shown below. I know it is finding the
schema file because when it
doesn't I get a exception telling me so.

Here are:

Error message
XML
XSD
The code

==========================
The Error
==========================

The content of element type "shippingRequest" must match
"(order_date,brand_name,shipRequestType,shipHow,exportDocsURL,so,po,cust
omer_po?,shipInstructions?,shipTo,items,comment?)". Column: 19 Line: 43
PublicID: null

==========================
The XML
==========================

<?xml version="1.0"?>
<shippingRequest xmlns="http://foo.comp.com"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://foo.comp.com/downloads/it/schema
riverbed_ship_request.xsd">
    <order_date>2006-03-09</order_date>
    <brand_name>FOO</brand_name>
    <shipRequestType>Evaluation</shipRequestType>
    <shipHow shippingCarrier="ROUTED" shippingServiceLevel="NEXT DAY AM"
modeOfTransport="AIR" freightTerms="WE PAY"/>
    <exportDocsURL>https://foo.comp.com</exportDocsURL>
    <so>99165</so>
    <po>65512</po>
    <customer_po>77836 NRR</customer_po>
    <shipTo>
            <company>GENERAL AIRCRAFT ENGINES - OH</company>
            <attn>DAVID SMITHY</attn>
            <address>ONE MAN WAY</address>
            <city>CINCINNATI</city>
            <state>OH</state>
            <postalCode>2342315</postalCode>
            <country>US</country>
    </shipTo>
    <items>
            <item>
                    <item_reason>NEW</item_reason>
                    <type>STANDARD</type>
                    <creation_date>2006-03-09</creation_date>
                    <update_date>2006-03-09</update_date>
                    <schedule_ship_date>2006-03-16</schedule_ship_date>
                    <order_line_id>799082</order_line_id>
                    <quantity>2</quantity>
                    <part_num>M23SHA-03010</part_num>
            </item>
            <item>
                    <item_reason>NEW</item_reason>
                    <type>STANDARD</type>
                    <creation_date>2006-03-09</creation_date>
                    <update_date>2006-03-09</update_date>
                    <schedule_ship_date>2006-03-16</schedule_ship_date>
                    <order_line_id>799091</order_line_id>
                    <quantity>1</quantity>
                    <part_num>M324CMC-08003</part_num>
            </item>
    </items>
    <comment>ATTN:  DAVID SMITHY</comment>
</shippingRequest>

=======================
The Schema
=======================
<?xml version="1.0"?>

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://foo.comp.com" xmlns="http://foo.comp.com">
  <!-- Schema definition for shipping requests sent to rbed from foo -->

  <xsd:element name="shippingRequest" type="ShippingRequestType"/>

  <xsd:complexType name="ShippingRequestType">
    <xsd:sequence>
      <!-- create date of the order -->
      <xsd:element name="order_date" type="xsd:date"/>

      <!-- rbed or OEM (foo) name -->
      <xsd:element name="brand_name" type="xsd:string"/>

      <xsd:element name="shipRequestType" type="ShipRequestType"/>

      <xsd:element name="shipHow" type="ShippingMethod"/>

      <!-- URL pointing to a PDF file containing the export documents
-->
      <xsd:element name="exportDocsURL" type="xsd:string"/>

      <!-- foo so (order) number (this is used in the documentation file
names) -->
      <xsd:element name="so"   type="xsd:string"/>

      <!-- rbed or OEM (foo) po number -->
      <xsd:element name="po" type="xsd:string"/>

       <!-- rbed or OEM customer's PO number -->
      <xsd:element name="customer_po" type="xsd:string" minOccurs="0"
maxOccurs="1"/>

      <xsd:element name="shipInstructions" type="xsd:string"
minOccurs="0" maxOccurs="1"/>

      <xsd:element name="shipTo" type="Address"/>

      <xsd:element name="items" type="Items"/>

        <xsd:element name="comment" type="xsd:string" minOccurs="0"/>

    </xsd:sequence>
  </xsd:complexType>

  <xsd:simpleType name="ShipRequestType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="Sale"/>
      <xsd:enumeration value="Evaluation"/>
      <xsd:enumeration value="RMA Replacement"/>
    </xsd:restriction>
  </xsd:simpleType>

  <xsd:complexType name="ShippingMethod">
    <xsd:attribute name="shippingCarrier" type="xsd:string"/>
    <xsd:attribute name="shippingServiceLevel" type="xsd:string"/>
    <xsd:attribute name="modeOfTransport" type="xsd:string"/>
    <xsd:attribute name="freightTerms" type="xsd:string"/>
  </xsd:complexType>

  <xsd:complexType name="Address">
    <xsd:sequence>
      <xsd:element name="company"  type="xsd:string"/>
      <xsd:element name="attn"     type="xsd:string" minOccurs="0"
maxOccurs="1"/>
      <xsd:element name="address"  type="xsd:string"/>
      <xsd:element name="address2" type="xsd:string" minOccurs="0"
maxOccurs="1"/>
      <xsd:element name="address3" type="xsd:string" minOccurs="0"
maxOccurs="1"/>
      <xsd:element name="city"     type="xsd:string"/>
      <xsd:element name="state"    type="xsd:string"/>
      <xsd:element name="postalCode" type="xsd:string"/>
      <xsd:element name="country" type="xsd:string"/>
      <xsd:element name="phone"   type="xsd:string" minOccurs="0"
maxOccurs="1"/>
      <xsd:element name="email"   type="xsd:string" minOccurs="0"
maxOccurs="1"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:simpleType name="LineItemType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="MODEL"/>
      <xsd:enumeration value="CLASS"/>
      <xsd:enumeration value="OPTION"/>
      <xsd:enumeration value="CONFIG"/>
    </xsd:restriction>
  </xsd:simpleType>

  <!--
    An item is a single line item from the foo order system. It doesn't
necessarily
    represent an actuall orderable part number. Sometime it is just
there to show
    configuration information.
  -->
  <xsd:complexType name="Items">
    <xsd:sequence>
      <xsd:element name="item" minOccurs="1" maxOccurs="unbounded">
        <xsd:complexType>
          <xsd:sequence>
            <!-- the reson this line is in the data -->
            <xsd:element name="item_reson" type="xsd:string"/>

            <!-- the type of this line on the order -->
            <xsd:element name="type" type="LineItemType"/>

            <!-- create date of the line item -->
            <xsd:element name="creation_date" type="xsd:date"/>

            <!-- date of last update to the line item -->
            <xsd:element name="update_date" type="xsd:date"/>

            <!-- date the line item is supposed to be shipped -->
            <xsd:element name="schedule_ship_date" type="xsd:date"/>

            <!-- this is the order_line_id of the item on the order that
is this items parent line,
                if this line is it's own parent then it is the top of a
configured item. This happens
                when the part_num element is a star "*" part. A
generated part number for a config.
            -->
            <xsd:element name="parent_line_id" type="xsd:integer"
minOccurs="0" maxOccurs="1"/>

            <!-- uniquely identifies this PO line item in our OEM's
database -->
            <xsd:element name="order_line_id" type="xsd:integer"
minOccurs="1" maxOccurs="1"/>

            <xsd:element name="quantity">
              <xsd:simpleType>
                <xsd:restriction base="xsd:positiveInteger">
                  <xsd:maxExclusive value="100"/>
                </xsd:restriction>
              </xsd:simpleType>
            </xsd:element>

            <!-- used in the packing list -->
            <xsd:element name="part_num" type="xsd:string"/>

            <!-- Special packing instructions, shipping instructions,
etc. -->
              <xsd:element name="note" type="xsd:string" minOccurs="0"
maxOccurs="1"/>

          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
 
</xsd:schema>


=================
The code
=================
    public boolean validateSchema(String schemaURL, String xml, String
ordernumber)
    {
        boolean retval = true;
        try
        {
            DOMParser domParser = new DOMParser();
           

domParser.setFeature("http://xml.org/sax/features/validation",true);

domParser.setFeature("http://apache.org/xml/features/validation/schema",
true);

domParser.setFeature("http://apache.org/xml/features/validation/schema-f
ull-checking",true);

domParser.setProperty("http://apache.org/xml/properties/schema/external-
schemaLocation",schemaURL);
           
            Validator handler=new Validator();
            domParser.setErrorHandler(handler); 
            domParser.parse(new InputSource(new StringReader(xml)));

            if(handler.validationError==true)
            {
                doLogging("validateSchema()","XML failed
validation:"+handler.saxParseException.getMessage()+" Column:
"+handler.saxParseException.getColumnNumber()+" Line:
"+handler.saxParseException.getLineNumber()+" PublicID:
"+handler.saxParseException.getPublicId(),true,true,false);
                logError(ordernumber,"XML failed validation:","System");
                //handler.saxParseException.printStackTrace();
                retval=false;
            }
            else
                doLogging("validateSchema()","XML has been
validated",true,true,false);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

        return retval;
    }

    private class Validator extends DefaultHandler    
    {         
        public boolean  validationError = false;    
        public SAXParseException saxParseException=null;
       
        public void error(SAXParseException exception) throws
SAXException    
        {
            validationError = true;    
            saxParseException=exception;
        }         

        public void fatalError(SAXParseException exception) throws
SAXException         
        {         
            validationError = true;    
            saxParseException=exception;    
        }         

        public void warning(SAXParseException exception) throws
SAXException         
        {         
        }    
    }




SPECIAL NOTICE

All information transmitted hereby is intended only for the use of the
addressee(s) named above and may contain confidential and privileged
information. Any unauthorized review, use, disclosure or distribution
of confidential and privileged information is prohibited. If the reader
of this message is not the intended recipient(s) or the employee or agent
responsible for delivering the message to the intended recipient, you are
hereby notified that you must not read this transmission and that disclosure,
copying, printing, distribution or use of any of the information contained
in or attached to this transmission is STRICTLY PROHIBITED.

Anyone who receives confidential and privileged information in error should
notify us immediately by telephone and mail the original message to us at
the above address and destroy all copies.  To the extent any portion of this
communication contains public information, no such restrictions apply to that
information. (gate01)

---------------------------------------------------------------------
To unsubscribe, e-mail: j-users-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-users-help@xerces.apache.org


Re: Xerces 1.4.4, XML, XSD and validation

Posted by Jeff Greif <jg...@alumni.princeton.edu>.
A hunch: It's possible that you need to tell Xerces to
"normalize-space" so that the whitespace after the shippingRequestTag
is not treated as content, making it appear that your instance
document does not match the content model.  See the docs for how to do
this in that version of Xerces, which is extremely old and should be
replaced by something newer.

The only thing I noticed that's not quite right about your XML is the
namespace in the xsi:schemaLocation attribute, which does not agree
with that of the schema.  However, it's obvious from the error message
that the schema is being found, so that's not the problem.

Jeff

On 4/20/06, Scott Shaver <Sc...@mcdata.com> wrote:
>
> I'm having trouble with the 1.4.4 xerces trying to validate an xml doc
> against a XSD schema.
> It always gives me the error shown below. I know it is finding the
> schema file because when it
> doesn't I get a exception telling me so.
>
> Here are:
>
> Error message
> XML
> XSD
> The code
>
> ==========================
> The Error
> ==========================
>
> The content of element type "shippingRequest" must match
> "(order_date,brand_name,shipRequestType,shipHow,exportDocsURL,so,po,cust
> omer_po?,shipInstructions?,shipTo,items,comment?)". Column: 19 Line: 43
> PublicID: null
>

---------------------------------------------------------------------
To unsubscribe, e-mail: j-users-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-users-help@xerces.apache.org


Re: Xerces 1.4.4, XML, XSD and validation

Posted by Michael Glavassevich <mr...@ca.ibm.com>.
The local element declarations in your schema have no target namespace. 
You either need to change your schema (for instance by adding the 
attribute elementFormDefault="qualified" to xsd:schema) or fix the 
namespace declarations in your instance document.

Michael Glavassevich
XML Parser Development
IBM Toronto Lab
E-mail: mrglavas@ca.ibm.com
E-mail: mrglavas@apache.org

"Scott Shaver" <Sc...@mcdata.com> wrote on 04/20/2006 11:05:26 AM:

> 
> I'm having trouble with the 1.4.4 xerces trying to validate an xml doc
> against a XSD schema.
> 
> It always gives me the error shown below. I know it is finding the
> schema file because when it
> doesn't I get a exception telling me so.
> 
> 
> Here are:
> 
> Error message
> XML
> XSD
> The code
> 
> ==========================
> The Error
> ==========================
> 
> The content of element type "shippingRequest" must match
> "(order_date,brand_name,shipRequestType,shipHow,exportDocsURL,so,po,cust
> omer_po?,shipInstructions?,shipTo,items,comment?)". Column: 19 Line: 43
> PublicID: null
> 
> ==========================
> The XML
> ==========================
> 
> <?xml version="1.0"?>
> <shippingRequest xmlns="http://foo.comp.com"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://foo.comp.com/downloads/it/schema
> riverbed_ship_request.xsd">
>     <order_date>2006-03-09</order_date>
>     <brand_name>FOO</brand_name>
>     <shipRequestType>Evaluation</shipRequestType>
>     <shipHow shippingCarrier="ROUTED" shippingServiceLevel="NEXT DAY AM"
> modeOfTransport="AIR" freightTerms="WE PAY"/>
>     <exportDocsURL>https://foo.comp.com</exportDocsURL>
>     <so>99165</so>
>     <po>65512</po>
>     <customer_po>77836 NRR</customer_po>
>     <shipTo>
>             <company>GENERAL AIRCRAFT ENGINES - OH</company>
>             <attn>DAVID SMITHY</attn>
>             <address>ONE MAN WAY</address>
>             <city>CINCINNATI</city>
>             <state>OH</state>
>             <postalCode>2342315</postalCode>
>             <country>US</country>
>     </shipTo>
>     <items>
>             <item>
>                     <item_reason>NEW</item_reason>
>                     <type>STANDARD</type>
>                     <creation_date>2006-03-09</creation_date>
>                     <update_date>2006-03-09</update_date>
>                     <schedule_ship_date>2006-03-16</schedule_ship_date>
>                     <order_line_id>799082</order_line_id>
>                     <quantity>2</quantity>
>                     <part_num>M23SHA-03010</part_num>
>             </item>
>             <item>
>                     <item_reason>NEW</item_reason>
>                     <type>STANDARD</type>
>                     <creation_date>2006-03-09</creation_date>
>                     <update_date>2006-03-09</update_date>
>                     <schedule_ship_date>2006-03-16</schedule_ship_date>
>                     <order_line_id>799091</order_line_id>
>                     <quantity>1</quantity>
>                     <part_num>M324CMC-08003</part_num>
>             </item>
>     </items>
>     <comment>ATTN:  DAVID SMITHY</comment>
> </shippingRequest>
> 
> =======================
> The Schema
> =======================
> <?xml version="1.0"?>
> 
> <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> targetNamespace="http://foo.comp.com" xmlns="http://foo.comp.com">
>   <!-- Schema definition for shipping requests sent to rbed from foo -->
> 
>   <xsd:element name="shippingRequest" type="ShippingRequestType"/>
> 
>   <xsd:complexType name="ShippingRequestType">
>     <xsd:sequence>
>       <!-- create date of the order -->
>       <xsd:element name="order_date" type="xsd:date"/>
> 
>       <!-- rbed or OEM (foo) name -->
>       <xsd:element name="brand_name" type="xsd:string"/>
> 
>       <xsd:element name="shipRequestType" type="ShipRequestType"/>
> 
>       <xsd:element name="shipHow" type="ShippingMethod"/>
> 
>       <!-- URL pointing to a PDF file containing the export documents
-->
>       <xsd:element name="exportDocsURL" type="xsd:string"/>
> 
>       <!-- foo so (order) number (this is used in the documentation 
> file
names) -->
>       <xsd:element name="so"   type="xsd:string"/>
> 
>       <!-- rbed or OEM (foo) po number -->
>       <xsd:element name="po" type="xsd:string"/>
> 
>        <!-- rbed or OEM customer's PO number -->
>       <xsd:element name="customer_po" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
> 
>       <xsd:element name="shipInstructions" type="xsd:string"
> minOccurs="0" maxOccurs="1"/>
> 
>       <xsd:element name="shipTo" type="Address"/>
> 
>       <xsd:element name="items" type="Items"/>
> 
>         <xsd:element name="comment" type="xsd:string" minOccurs="0"/>
> 
>     </xsd:sequence>
>   </xsd:complexType>
> 
>   <xsd:simpleType name="ShipRequestType">
>     <xsd:restriction base="xsd:string">
>       <xsd:enumeration value="Sale"/>
>       <xsd:enumeration value="Evaluation"/>
>       <xsd:enumeration value="RMA Replacement"/>
>     </xsd:restriction>
>   </xsd:simpleType>
> 
>   <xsd:complexType name="ShippingMethod">
>     <xsd:attribute name="shippingCarrier" type="xsd:string"/>
>     <xsd:attribute name="shippingServiceLevel" type="xsd:string"/>
>     <xsd:attribute name="modeOfTransport" type="xsd:string"/>
>     <xsd:attribute name="freightTerms" type="xsd:string"/>
>   </xsd:complexType>
> 
>   <xsd:complexType name="Address">
>     <xsd:sequence>
>       <xsd:element name="company"  type="xsd:string"/>
>       <xsd:element name="attn"     type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
>       <xsd:element name="address"  type="xsd:string"/>
>       <xsd:element name="address2" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
>       <xsd:element name="address3" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
>       <xsd:element name="city"     type="xsd:string"/>
>       <xsd:element name="state"    type="xsd:string"/>
>       <xsd:element name="postalCode" type="xsd:string"/>
>       <xsd:element name="country" type="xsd:string"/>
>       <xsd:element name="phone"   type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
>       <xsd:element name="email"   type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
>     </xsd:sequence>
>   </xsd:complexType>
> 
>   <xsd:simpleType name="LineItemType">
>     <xsd:restriction base="xsd:string">
>       <xsd:enumeration value="MODEL"/>
>       <xsd:enumeration value="CLASS"/>
>       <xsd:enumeration value="OPTION"/>
>       <xsd:enumeration value="CONFIG"/>
>     </xsd:restriction>
>   </xsd:simpleType>
> 
>   <!--
    An item is a single line item from the foo order system. 
> It doesn't
necessarily
    represent an actuall orderable part 
> number. Sometime it is just
there to show
    configuration information.
  -->
>   <xsd:complexType name="Items">
>     <xsd:sequence>
>       <xsd:element name="item" minOccurs="1" maxOccurs="unbounded">
>         <xsd:complexType>
>           <xsd:sequence>
>             <!-- the reson this line is in the data -->
>             <xsd:element name="item_reson" type="xsd:string"/>
> 
>             <!-- the type of this line on the order -->
>             <xsd:element name="type" type="LineItemType"/>
> 
>             <!-- create date of the line item -->
>             <xsd:element name="creation_date" type="xsd:date"/>
> 
>             <!-- date of last update to the line item -->
>             <xsd:element name="update_date" type="xsd:date"/>
> 
>             <!-- date the line item is supposed to be shipped -->
>             <xsd:element name="schedule_ship_date" type="xsd:date"/>
> 
>             <!-- this is the order_line_id of the item on the order 
> that
is this items parent line,
                if this line is it's
> own parent then it is the top of a
configured item. This happens
 
> when the part_num element is a star "*" part. A
generated part 
> number for a config.
            -->
>             <xsd:element name="parent_line_id" type="xsd:integer"
> minOccurs="0" maxOccurs="1"/>
> 
>             <!-- uniquely identifies this PO line item in our OEM's

> database -->
>             <xsd:element name="order_line_id" type="xsd:integer"
> minOccurs="1" maxOccurs="1"/>
> 
>             <xsd:element name="quantity">
>               <xsd:simpleType>
>                 <xsd:restriction base="xsd:positiveInteger">
>                   <xsd:maxExclusive value="100"/>
>                 </xsd:restriction>
>               </xsd:simpleType>
>             </xsd:element>
> 
>             <!-- used in the packing list -->
>             <xsd:element name="part_num" type="xsd:string"/>
> 
>             <!-- Special packing instructions, shipping instructions,
etc. -->
>               <xsd:element name="note" type="xsd:string" minOccurs="0"
> maxOccurs="1"/>
> 
>           </xsd:sequence>
>         </xsd:complexType>
>       </xsd:element>
>     </xsd:sequence>
>   </xsd:complexType>
> 
> 
> </xsd:schema>
> 
> 
> =================
> The code
> =================
>     public boolean validateSchema(String schemaURL, String xml, String
> ordernumber)
>     {
>         boolean retval = true;
>         try
> 
>         {
>             DOMParser domParser = new DOMParser();
> 
> 
> 
> 
> domParser.setFeature("http://xml.org/sax/features/validation",true);
> 
> 
> domParser.setFeature("http://apache.org/xml/features/validation/schema",
> true);
> 
> 
> domParser.setFeature("http://apache.org/xml/features/validation/schema-f
> ull-checking",true);
> 
> 
> domParser.setProperty("http://apache.org/xml/properties/schema/external-
> schemaLocation",schemaURL);
> 
> 
>             Validator handler=new Validator();
>             domParser.setErrorHandler(handler); 
> 
>             domParser.parse(new InputSource(new StringReader(xml)));
> 
>             if(handler.validationError==true)
>             {
>                 doLogging("validateSchema()","XML failed
> validation:"+handler.saxParseException.getMessage()+" Column:
> "+handler.saxParseException.getColumnNumber()+" Line:
> "+handler.saxParseException.getLineNumber()+" PublicID:
> "+handler.saxParseException.getPublicId(),true,true,false);
>                 logError(ordernumber,"XML failed validation:","System");
>                 //handler.saxParseException.printStackTrace();
>                 retval=false;
>             }
>             else
>                 doLogging("validateSchema()","XML has been
> validated",true,true,false);
>         }
> 
>         catch (Exception e)
> 
>         {
>             e.printStackTrace();
>         }
> 
>         return retval;
>     }
> 
> 
>     private class Validator extends DefaultHandler 
> 
>     { 
> 
>         public boolean  validationError = false; 
> 
>         public SAXParseException saxParseException=null;
> 
> 
>         public void error(SAXParseException exception) throws
> SAXException 
> 
>         {
>             validationError = true; 
> 
>             saxParseException=exception;
>         } 
> 
> 
>         public void fatalError(SAXParseException exception) throws
> SAXException 
> 
>         { 
> 
>             validationError = true; 
> 
>             saxParseException=exception; 
> 
>         } 
> 
> 
>         public void warning(SAXParseException exception) throws
> SAXException 
> 
>         { 
> 
>         } 
> 
>     }
> 
> 
> 
> 
> SPECIAL NOTICE
> 
> 
> All information transmitted hereby is intended only for the use of the
> addressee(s) named above and may contain confidential and privileged
> information. Any unauthorized review, use, disclosure or distribution
> of confidential and privileged information is prohibited. If the reader
> of this message is not the intended recipient(s) or the employee or 
agent
> responsible for delivering the message to the intended recipient, you 
are
> hereby notified that you must not read this transmission and that 
disclosure,
> copying, printing, distribution or use of any of the information 
contained
> in or attached to this transmission is STRICTLY PROHIBITED.
> 
> Anyone who receives confidential and privileged information in error 
should
> notify us immediately by telephone and mail the original message to us 
at
> the above address and destroy all copies.  To the extent any portion of 
this
> communication contains public information, no such restrictions apply to 
that
> information. (gate01)
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: j-users-unsubscribe@xerces.apache.org
> For additional commands, e-mail: j-users-help@xerces.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: j-users-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-users-help@xerces.apache.org