[ 
https://issues.apache.org/jira/browse/XERCESJ-1675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Mukul Gandhi resolved XERCESJ-1675.
-----------------------------------
      Assignee: Mukul Gandhi
    Resolution: Not A Problem

Apologies for a delayed response.

I think that, the assert test expression that you've written in your XSD 
document, should be following,
test="count(distinct-values(descendant::node()/@ADMID)) eq 
count(descendant::node()/@ADMID)"

instead of,
test="count(distinct-values(descendant::node()/@ADMID)) eq 
count(descendant::node()[@ADMID])"

I think, you wrongly write [@ADMID] instead of /@ADMID after 'eq'.

The example you've posted in your bug report, gives me expected result with 
XercesJ 2.12.0.

I'm resolving this Jira issue. Please reopen, if there's still a concern.

> Assert evaluation fails when using distinct-values function
> -----------------------------------------------------------
>
>                 Key: XERCESJ-1675
>                 URL: https://issues.apache.org/jira/browse/XERCESJ-1675
>             Project: Xerces2-J
>          Issue Type: Bug
>    Affects Versions: 2.11.0
>            Reporter: Patrick Gratz
>            Assignee: Mukul Gandhi
>            Priority: Major
>
> It seems that there is a problem with the usage of the function 
> distinct-values in xs:assert tests. Validating the following schema-compliant 
> example against the related schema fails with the error message:
> {noformat}
> cvc-assertion.3.13.4.1: Assertion evaluation 
> ('count(distinct-values(descendant::node()/@ADMID)) eq 
> count(descendant::node()[@ADMID])') for element 'mets' with type 'metsType' 
> did not succeed.
> {noformat}
> {code:xml|title=example_schema.xsd}
> <?xml version="1.0" encoding="UTF-8"?>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
>    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"; 
> xmlns="http://www.loc.gov/METS/";
>    xmlns:mets="http://www.loc.gov/METS/";
>    xmlns:cellar-mets="http://publications.europa.eu/cellar-mets-extensions";
>    xmlns:xlink="http://www.w3.org/1999/xlink"; 
> targetNamespace="http://www.loc.gov/METS/";
>    elementFormDefault="qualified" attributeFormDefault="unqualified" 
> vc:minVersion="1.1"
>    version="3.0">
>    <xs:element name="mets">
>       <xs:complexType>
>          <xs:complexContent>
>             <xs:extension base="metsType"/>
>          </xs:complexContent>
>       </xs:complexType>
>    </xs:element>
>   
>    <xs:complexType name="metsType">
>       <xs:sequence>
>          <xs:any processContents="lax" maxOccurs="unbounded"/>
>       </xs:sequence>
>       <xs:anyAttribute processContents="lax"/>
>      <xs:assert
>          test="count(distinct-values(descendant::node()/@ADMID)) eq 
> count(descendant::node()[@ADMID])"
>          xpathDefaultNamespace="##targetNamespace">
>          <xs:annotation>
>             <xs:documentation xml:lang="en">The set of ADMID attributes has 
> to contain only unique
>                values.</xs:documentation>
>             <xs:appinfo>
>                <metsSection>multiSection</metsSection>
>             </xs:appinfo>
>          </xs:annotation>
>       </xs:assert>
>    </xs:complexType>
> </xs:schema>
> {code}
> {code:xml|title=example_instance.xml}
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <mets xmlns="http://www.loc.gov/METS/"; 
> xmlns:xlink="http://www.w3.org/1999/xlink"; TYPE="create" 
> cellar-mets:version="3.0" 
> PROFILE="http://publications.europa.eu/mdr/mets/cellar-mets-3_profile.xml"; 
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
> xmlns:cellar-mets="http://publications.europa.eu/cellar-mets-extensions"; 
> xsi:schemaLocation="http://www.loc.gov/METS/ 
> http://www.loc.gov/standards/mets/version111/mets.xsd";>
>       <metsHdr CREATEDATE="2016-08-22T10:30:01.540+02:00">
>               
> <metsDocumentID>celex_02009R1223-20150716_create_item</metsDocumentID>
>       </metsHdr>
>       <dmdSec ID="md_fragment_item_tiff_3">
>               <mdRef LOCTYPE="URL" MIMETYPE="application/rdf+xml" 
> CHECKSUM="acbbccd7fd286dc00a65cb0c99c0e832579e631400fa495265fa943dcbd86851" 
> CHECKSUMTYPE="SHA-256" xlink:href="md_L_2009342EN.01020304.tif.rdf" 
> MDTYPE="OTHER" OTHERMDTYPE="CDM"/>
>       </dmdSec>
>       <amdSec ID="amd_fmx">
>               <techMD ID="techMd_tiff_3">
>                       <mdRef LOCTYPE="URL" MIMETYPE="application/rdf+xml" 
> CHECKSUM="803e7110abce30d535e0db8f305ec863afcd19858dd70692d304e20f9e2684a3" 
> CHECKSUMTYPE="SHA-256" xlink:href="techMd_L_2009342EN.01020304.tif.rdf" 
> MDTYPE="OTHER" OTHERMDTYPE="TDM"/>
>               </techMD>
>       </amdSec>
>       <fileSec>
>               <fileGrp>
>                       <file ID="file_tiff_3" MIMETYPE="image/tiff" 
> CHECKSUM="3c0b9b898bc3e39f5b61946fd7e3977c98f9d3a139c7af29d5eedd688f91aa23" 
> CHECKSUMTYPE="SHA-256" ADMID="techMd_tiff_3" DMDID="md_fragment_item_tiff_3">
>                               <FLocat LOCTYPE="URL" 
> xlink:href="L_2009342EN.01020304.tif"/>
>                       </file>
>                       
>               </fileGrp>
>       </fileSec>
>       <structMap ID="structMap_1">
>               <div TYPE="work" CONTENTIDS="celex:02009R1223-20150716">
>                       <div TYPE="expression" 
> CONTENTIDS="celex:02009R1223-20150716.ENG">
>                               <div TYPE="manifestation" 
> CONTENTIDS="celex:02009R1223-20150716.ENG.fmx4">
>                                       <fptr FILEID="file_tiff_3" 
> CONTENTIDS="celex:02009R1223-20150716.ENG.fmx4.L_2009342EN.01020304.tif"/>
>                               </div>
>                       </div>
>               </div>
>       </structMap>
> </mets>
> {code}



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to