← Back to team overview

zorba-coders team mailing list archive

[Bug 872799] Re: validate-in-place can set incorrect types

 

** Changed in: zorba
       Status: Fix Released => Fix Committed

** Changed in: zorba
    Milestone: None => 2.1

-- 
You received this bug notification because you are a member of Zorba
Coders, which is the registrant for Zorba.
https://bugs.launchpad.net/bugs/872799

Title:
  validate-in-place can set incorrect types

Status in Zorba - The XQuery Processor:
  Fix Committed

Bug description:
  validate-in-place can set incorrect types.
  The following query should produce a "smallEl" with type "smallEl", but it produces a "smallEl" typed as "bigEl".

  import module namespace schema = "http://www.zorba-xquery.com/modules/schema";;
  import schema namespace d="http://www.example.com/doc"; at "test23.xsd";
  import module namespace file = "http://expath.org/ns/file";;
  declare revalidation lax;

  variable $doc:=<items xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
         xmlns="http://www.zorba-xquery.org/schema";>
    <bigEl>
      <a>old</a>
    </bigEl>
  </items>;

  (
    schema:validate-in-place($doc),
    rename node $doc/*:bigEl as QName("http://www.zorba-xquery.org/schema","smallEl";)
  );

  for $x in ($doc//*)
  return (<node name="{node-name($x)}" type="{schema:schema-type($x)}"/>)

  Schema
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
  targetNamespace="http://www.zorba-xquery.org/schema"; xmlns="http://www.zorba-xquery.org/schema";
      elementFormDefault="qualified">

    <xs:element name="items">
      <xs:complexType>
        <xs:choice maxOccurs="unbounded">
          <xs:element name="bigEl" type="bigEl"/>
          <xs:element name="smallEl" type="smallEl"/>
       </xs:choice>
     </xs:complexType>
   </xs:element>

             <xs:complexType name="bigEl">
  	     <xs:sequence>
                 <xs:element name="a" type="xs:string"/>
               </xs:sequence>
             </xs:complexType>

             <xs:complexType name="smallEl">
               <xs:sequence>
                 <xs:element name="a" type="xs:string"/>
               </xs:sequence>
             </xs:complexType>

  
  </xs:schema>

To manage notifications about this bug go to:
https://bugs.launchpad.net/zorba/+bug/872799/+subscriptions


References