Der folgende Beitrag wurde am 02. 08. 2007, 15:02 Uhr von Gab veröffentlicht.
Hallo,
ich baue gerade einen kleinen Script, um XML-Files auf ein Schema zu validieren.
Allerdings bringt mir die derzeitige Version keine Fehlermeldung, auch wenn ein Fehler vorliegt:
Function OrgDateiEinlesen (Datendatei)
' Schema definieren und laden
Dim schema, SchemaCache
' set schema = CreateObject (ma
Set schema = CreateObject("Msxml2.DOMDocument.6.0")
Set SchemaCache = CreateObject("Msxml2.XMLSchemaCache.6.0")
schema.ASync = False
schema.Load (schemapfad)
SchemaCache.Add "http://www.w3.org/1999/xhtml", schema
' Die Originaldatei laden
Set OrgDatei = CreateObject("Msxml4.DOMDocument.6.0")
' Schema zuweisen
Set OrgDatei.schemas = SchemaCache
OrgDatei.async=False
OrgDatei.validateOnParse = True
OrgDatei.resolveExternals = False
OrgDatei.setProperty "SelectionLanguage", "XPath"
OrgDatei.load (Datendatei)
WScript.Echo OrgDatei.parseError.errorCode
End Function
Woran kann es liegen und wie sieht eine Lösung aus?
Danke
Gab
Der folgende Beitrag wurde am 02. 08. 2007, 16:30 Uhr von Frank (no reg) veröffentlicht.
Hi,
XmlDocument.parseError gibt imho nur Fehler zurück, die der Wohlgeformtheit des Dokuments (syntaktische Gültigkeit) entgegenstehen. Mit Schema Validation hat das noch nix zu tun.
Du solltest vielleicht einfach folgendes an die richtige Stelle einfügen:
Dim oError As IXMLDOMParseError
Set oError = OrgDatei.Validate
If oError.errorCode <> 0 Then
strout = strout + vbTab _
+ "XMLDoc is not valid because " _
+ vbNewLine + oError.reason + vbNewLine
End If
Gruss,
Frank
© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4