Are there missing validity checks in NeTEx?

Where possible NeTEx enforces validity checks in the XML schema so that data is correct and consistent.  XML schema can provide  data typing and useful identity and referential integrity checks, so for example it is possible to ensure that not only are fields in the right format (as say for dates, times, email addresses or enumerated values) but also that a document is complete (every referenced element is present) and unique (a given identifier is only used once). However schema cannot describe a number of more complex integrity constraints (for example; that passing times on successive stops in a journey are monotonically increasing) and such checks need to be implemented programmatically by validation or import tools.

A deliberate decision has been made to leave out one type of validity check. In XML schema it is also possible to specify whether an element must be present or is optional. However in order to allow a single XML schema to be used for many different uses case, NeTEx  makes the majority of schema elements optional, and leaves it up to the individual application to check for completeness. (Note that NeTEx profiles can be used to express this requirement also).