XML Parsing without AbtXmlObjectCache

50 views
Skip to first unread message

Joachim Tuchel

unread,
Oct 1, 2025, 5:20:24 AMOct 1
to VAST Community Forum
Dear Group,

I need to implement stuff that requires me to work with multiple versions of the same XML Schema. The Schema may change every 6 months and documents that are valid today may not be valid any more with the next version of the schema. So I need to manage multple versions of an xsd, eacvh of which may include the same tags and types, but may also have more or less tags etc. than other versions.

Afaiu, this is not compatible with the idea of AbtXmlObjectCache. If there is a tag named "invoiceNumber" and it has different validity rules in two versions of the schema, I will get into trouble because the SAX ad DOM Parsers will look for the tag name - independently of the schema version, right?

Or am I getting this wrong? 

Has anybody implemented something like this in VAST? Either by using the AbtXmlObjectCache "correctly" or not using it at all?

Joachim



Joachim Tuchel

unread,
Oct 16, 2025, 4:56:17 AMOct 16
to VAST Community Forum
Ok, I'll ask my question differently:


is there a way to simply say: here's a schema, validate this xml file for me?
I mean without using AbtXmlObjectCache, which in my case won't work.


Joachim

Dusty

unread,
Oct 16, 2025, 5:09:36 AMOct 16
to VAST Community Forum
When you say XML Schema, do you mean DTD Validation?
We use multple DTDs for various kinds of inputs to our tool so we do something like

aXmlDtd := XmlDTD new parseFrom: (ReadStream on: (self getStandardXmlDtd)).
aXMLDoc := (XmlDocumentParser usingDTD: aXmlDtd).
[aXMLDoc parseStream: aFileData] whenExceptionDo: [ 'DTD Failed' ]

This is simplified, but the self getStandardXmlDtd can be changed to get a specific DtD.

Joachim Tuchel

unread,
Oct 16, 2025, 5:15:10 AMOct 16
to VAST Community Forum
Hi Dusty,

no, I only have a Schema (xsd), no DTD.
Reply all
Reply to author
Forward
0 new messages