summaryrefslogtreecommitdiff
path: root/src/xmlpatterns/schema/qxsdparticlechecker_p.h
diff options
context:
space:
mode:
authorPeter Hartmann <peter.hartmann@nokia.com>2009-12-08 19:15:58 +0100
committerPeter Hartmann <peter.hartmann@nokia.com>2010-06-14 16:48:32 +0200
commitb00cd9859d8b666b851953ee3b37def0ab078a54 (patch)
treefb3901a6e1291506a3721086ca22cfe98e28e950 /src/xmlpatterns/schema/qxsdparticlechecker_p.h
parentea8817a59e92e40927ae4cecd301771eb115fb6f (diff)
downloadqt4-tools-b00cd9859d8b666b851953ee3b37def0ab078a54.tar.gz
QXmlSchema: allow usage of xsd:all
previously, loading schemas that contained xsd:all elements was not possible because the algorithm used did not scale in that case. This patch introduces a special checking for those elements which removes the performance downside. Reviewed-by: Tobias Koenig <tokoe@kde.org> Task-number: QTBUG-6485
Diffstat (limited to 'src/xmlpatterns/schema/qxsdparticlechecker_p.h')
-rw-r--r--src/xmlpatterns/schema/qxsdparticlechecker_p.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/xmlpatterns/schema/qxsdparticlechecker_p.h b/src/xmlpatterns/schema/qxsdparticlechecker_p.h
index 742f0d08c2..40c525afcf 100644
--- a/src/xmlpatterns/schema/qxsdparticlechecker_p.h
+++ b/src/xmlpatterns/schema/qxsdparticlechecker_p.h
@@ -85,6 +85,13 @@ namespace QPatternist
static bool isUPAConform(const XsdParticle::Ptr &particle, const NamePool::Ptr &namePool);
/**
+ * Checks whether the given @p particle, which must be an xsd:all element,
+ * is valid according the UPA (http://www.w3.org/TR/xmlschema-1/#cos-nonambig) constraint.
+ * For xsd:all elements, we do not want to construct a state machine.
+ */
+ static bool isUPAConformXsdAll(const XsdParticle::Ptr &particle, const NamePool::Ptr &namePool);
+
+ /**
* Checks whether the given @p particle subsumes the given @p derivedParticle.
* (http://www.w3.org/TR/xmlschema-1/#cos-particle-restrict)
*/