writes:
>
> Here's how VAM works in CAM right now. We have a simple
> precedence sequence.
>
> Again - in order to remain sane - and to allow implementers
> of CAM engines and writers of CAM templates - to do stuff
> that does not require Teraflops of processing power or
> excessive tearing of hair out!
>
> Anyway - the VAM is this - base rules are those in-line rules
> embedded into structure members, (or included via an included
> structure). These are overridden by any rules that match the
> same XPath target(s) that are declared in the the
> <BusinessContext> section of the template. Third - the
> <ContentReference> section provides default rules (typically
> retrieved from the central registry, but can be in-lined too)
> - that provide rules if neither the structure or context
> section provides any. Last but not least there is the
> <DataValidation> section - this is mostly for external calls
> to webservices - and so again - anything failing these checks
> will be rejected with an appropriate error - this section is
> optional though - an intended for backend internal
> integration needs against the actual data content - rather
> than structural checks.
I don't really view that as VAM, more like a default fallback mechanism.
<warning type="weak example"/>
The VAM I want would to something like understand that a researcher can
query on birth date and disease and get back a randomized patient
identifier, but the same query will fail if it contains a geographic
identifier since the population of patients (for the given disease) is
so small that including both restrictions will allow the researcher to
uniquely identify the patient.