For
a message to be truly valid, i.e. complying in full with the data exchange
partner agreement, the structural validation does not suffice: The values
embedded in the message need to be validated too. Such Value Validation has
commonly been encoded within custom built applications. There is the risk that
the Value Validation is not equivalent when the data exchange partners use
different applications. They may even produce inconsistent error messages for
one and the same XML instance.
The effort required to build the validation logic in each application and the
issues associated with such decentralised, platform-dependent value validation call for
an improvement: Wouldn't it be great if the values within an XML instance could
be validated just the way we validate its structure against the XML Schema,
using platform-independent open standards?
There
is good news: In 2006 OASIS
defined
UMCLVV, the draft OASIS
UBL Methodology for Code List and Value Validation. While UMCLVV was designed
to meet UBL needs, it could be applied to any
context. UMCLVV has since been split into three fully approved standards: OASIS
Genericode 1.0,
OASIS Context Value Association 1.0 and ISO Schematron. The deployment of these
integrated standards delivers some major benefits:
-
A
standardised XML format for code lists: OASIS Genericode. For details, see Tony
Coates and UBL
Code List Representation Technical Committee
-
Adoption
and re-use of Genericode lists defined by external bodies (ISO, UN/CEFACT,
Statistics New Zealand, etc.)
-
Restrictions
and extensions of standardised code lists
-
Context-specific
code list validation using
OASIS Context Value Association
-
Meta
data validation for code lists
-
Complex
business rule validation using ISO Schematron
-
Platform-independent
validation
-
Simple
run-time requirement: XSLT W3C
Stylesheet Transformation
-
Consistent
error messages, default or user-defined
-
Using
open standards: XML, OASIS
Genericode 1.0,
OASIS Context Value Association 1.0, W3C
XPath, ISO Schematron, XSLT
-
One
validation standard applicable to any XML context
-
Opportunities
to gradually improve data quality, using fatal errors and optionally warnings
-
Opportunities
to simplify application design and testing
|