25 void addError(
const QString &msg) { errors.append(msg); isValid =
false; }
26 void addWarning(
const QString &msg) { warnings.append(msg); }
30 ValidationResult validate(
const QDomDocument &doc)
const;
33 ValidationResult validateFile(
const QString &kmlFile)
const;
36 bool isValidEnumValue(
const QString &enumTypeName,
const QString &value)
const;
39 QStringList validEnumValues(
const QString &enumTypeName)
const;
42 bool isValidElement(
const QString &elementName)
const;
45 QStringList validElements()
const;
50 void parseSchemaDocument(
const QDomDocument &schemaDoc);
51 void extractEnumTypes(
const QDomElement &root);
52 void extractElements(
const QDomElement &root);
54 void validateElement(
const QDomElement &element, ValidationResult &result)
const;
55 void validateCoordinates(
const QString &coordString, ValidationResult &result)
const;
57 QHash<QString, QStringList> _enumTypes;
58 QSet<QString> _validElements;