From 2c52f9b9a411dd0b1f7bed8dee1c9a6f8771b3ee Mon Sep 17 00:00:00 2001 From: Alberto Massari <amassari@apache.org> Date: Tue, 30 Jan 2007 16:50:31 +0000 Subject: [PATCH] Allow 'list' and 'union' in the finalDefault attribute of a schema (XERCESC-1633) git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@501463 13f79535-47bb-0310-9956-ffa450edef68 --- src/xercesc/validators/schema/TraverseSchema.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/xercesc/validators/schema/TraverseSchema.cpp b/src/xercesc/validators/schema/TraverseSchema.cpp index d629f0609..7aea95c12 100644 --- a/src/xercesc/validators/schema/TraverseSchema.cpp +++ b/src/xercesc/validators/schema/TraverseSchema.cpp @@ -5158,7 +5158,7 @@ int TraverseSchema::parseFinalSet(const DOMElement* const elem, XMLCh* token = tokenizer.nextToken(); if (XMLString::equals(token, SchemaSymbols::fgELT_UNION) - && finalType == S_Final) { + && (finalType == S_Final || finalType == ECS_Final)) { if ((finalSet & SchemaSymbols::XSD_UNION) == 0) { finalSet += SchemaSymbols::XSD_UNION; @@ -5168,7 +5168,7 @@ int TraverseSchema::parseFinalSet(const DOMElement* const elem, } } else if (XMLString::equals(token, SchemaSymbols::fgATTVAL_EXTENSION) - && finalType != S_Final) { + && (finalType == EC_Final || finalType == ECS_Final)) { if ((finalSet & SchemaSymbols::XSD_EXTENSION) == 0) { finalSet += SchemaSymbols::XSD_EXTENSION; @@ -5178,7 +5178,7 @@ int TraverseSchema::parseFinalSet(const DOMElement* const elem, } } else if (XMLString::equals(token, SchemaSymbols::fgELT_LIST) - && finalType == S_Final) { + && (finalType == S_Final || finalType == ECS_Final)) { if ((finalSet & SchemaSymbols::XSD_LIST) == 0 ) { finalSet += SchemaSymbols::XSD_LIST; -- GitLab