An Empty VAST Wrapper Is Schema-Valid in 4.4. It Was Not in 2.0.
A VAST wrapper with no AdSystem, no VASTAdTagURI and no Impression validates against the VAST 4.4 draft schema. The same document has been invalid in every version from 2.0 through 4.2. It is one line of XSD, and it is almost certainly a side effect of the CTV Ad Portfolio restructure rather than a decision anyone made on purpose. I have filed it with IAB Tech Lab. This post is the working,…
A VAST wrapper containing no AdSystem, VASTAdTagURI, or Impression element was found to be schema-valid in VAST 4.4, a change that did not exist in versions from 2.0 through 4.2. This alteration is attributed to a change in the Content Delivery Network (CTV) Ad Portfolio restructure, rather than a deliberate decision. The issue was reported to the IAB Tech Lab.
The modification in the vast_4.4.xsd schema resulted in the compositor element governing the content model, allowing for zero or more child elements. Individual child elements only describe a single selection from the choice, meaning that the minOccurs attribute on the child elements has no effect. Consequently, an empty wrapper validates in 4.4, just as it does in 4.2, but also an empty inline VAST wrapper.
Furthermore, the maxOccurs attribute set to unbounded allows any branch of the choice to be selected repeatedly, meaning that multiple AdSystem elements can coexist within an inline VAST wrapper. This change implies that everything is optional, and an empty wrapper can still validate, even if previously it had been required to have an AdSystem element.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — it may contain errors, so check the original before relying on it.




