summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/xmlpatterns/schema/qxsdschemachecker.cpp9
-rw-r--r--tests/auto/auto.pro8
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
+