diff options
-rw-r--r-- | src/xmlpatterns/schema/qxsdschemachecker.cpp | 9 | ||||
-rw-r--r-- | tests/auto/auto.pro | 8 |
2 files changed, 13 insertions, 4 deletions
diff --git a/src/xmlpatterns/schema/qxsdschemachecker.cpp b/src/xmlpatterns/schema/qxsdschemachecker.cpp index 5e4302d..57ee3e6 100644 --- a/src/xmlpatterns/schema/qxsdschemachecker.cpp +++ b/src/xmlpatterns/schema/qxsdschemachecker.cpp @@ -414,8 +414,8 @@ void XsdSchemaChecker::checkSimpleTypeConstraints() const XsdSimpleType::Ptr simpleItemType = itemType; const AnySimpleType::List memberTypes = simpleItemType->memberTypes(); for (int j = 0; j < memberTypes.count(); ++j) { - if (memberTypes.at(j)->category() != SchemaType::SimpleTypeAtomic) { - m_context->error(QtXmlPatterns::tr("Variety of member types of %1 must be atomic.").arg(formatType(m_namePool, simpleItemType)), XsdSchemaContext::XSDError, location); + if (memberTypes.at(j)->category() != SchemaType::SimpleTypeAtomic && memberTypes.at(j)->category() != SchemaType::SimpleTypeUnion) { + m_context->error(QtXmlPatterns::tr("Variety of member types of %1 must be atomic or union.").arg(formatType(m_namePool, simpleItemType)), XsdSchemaContext::XSDError, location); return; } } @@ -891,8 +891,9 @@ void XsdSchemaChecker::checkSimpleDerivationRestrictions() const XsdSimpleType::Ptr simpleItemType = itemType; const AnySimpleType::List memberTypes = simpleItemType->memberTypes(); for (int j = 0; j < memberTypes.count(); ++j) { - if (memberTypes.at(j)->category() != SchemaType::SimpleTypeAtomic) { - m_context->error(QtXmlPatterns::tr("Variety of member types of %1 must be atomic.").arg(formatType(m_namePool, simpleItemType)), XsdSchemaContext::XSDError, location); + if (memberTypes.at(j)->category() != SchemaType::SimpleTypeAtomic && memberTypes.at(j)->category() != SchemaType::SimpleTypeUnion) { + m_context->error(QtXmlPatterns::tr("Variety of member types of %1 must be atomic or union.").arg(formatType(m_namePool, simpleItemType)), + XsdSchemaContext::XSDError, location); return; } } diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro index 40f4c5c..dfec856 100644 --- a/tests/auto/auto.pro +++ b/tests/auto/auto.pro @@ -57,3 +57,11 @@ qtHaveModule(quick): SUBIDIRS += qquickxmllistmodel !cross_compile: SUBDIRS += host.pro +# these tests depend on auxiliary files to be deployed so they +# fail on Android. Given the state of the module, we simply +# disable them - the code is already tested on regular Linux. +android: SUBDIRS-= checkxmlfiles \ + patternistexamples \ + qabstractxmlnodemodel \ + qxmlquery + |