Author: amassari
Date: Fri Aug 14 13:15:05 2009
New Revision: 804209

URL: http://svn.apache.org/viewvc?rev=804209&view=rev
Log:
When building the key for identity constraints, use the topmost validator

Modified:
    xerces/c/trunk/src/xercesc/validators/schema/identity/ValueStore.cpp

Modified: xerces/c/trunk/src/xercesc/validators/schema/identity/ValueStore.cpp
URL: 
http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/validators/schema/identity/ValueStore.cpp?rev=804209&r1=804208&r2=804209&view=diff
==============================================================================
--- xerces/c/trunk/src/xercesc/validators/schema/identity/ValueStore.cpp 
(original)
+++ xerces/c/trunk/src/xercesc/validators/schema/identity/ValueStore.cpp Fri 
Aug 14 13:15:05 2009
@@ -44,7 +44,10 @@
 
     XMLSize_t size = valueMap->size();
     for (XMLSize_t j=0; j<size; j++) {
-        DatatypeValidator* const dv = valueMap->getDatatypeValidatorAt(j);
+        // reach the most generic datatype validator
+        DatatypeValidator* dv = valueMap->getDatatypeValidatorAt(j);
+        while(dv && dv->getBaseValidator())
+            dv = dv->getBaseValidator();
         const XMLCh* const val = valueMap->getValueAt(j);
         const XMLCh* canonVal = (dv && 
val)?dv->getCanonicalRepresentation(val, fMemoryManager):0;
         if(canonVal)



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

Reply via email to