Lists Home |
Date Index |
From: "DuCharme, Bob (LNG)" <firstname.lastname@example.org>
> I'd like to hear any comments and suggestions. For example, my examples are
> pretty simple; can anyone think of a reason that it might not scale well?
This is the same problem that Schematron's <phase> element addresses.
In Schematron the <phase> lists the patterns that are <active>
in it, your <sn:stages> just provide a name and the later declarations themselves
nominate which stages they belong to. In Schematron, the approach makes
sense for it because we have multiple passes over the document, so it is easy to
figure out the effects of factoring out patterns or assertions, and because the
idea of progressively validating a document (i.e. making sure the foundation
is good before checking the paintwork in the attic) is important. However,
Schematron only allows phases on a very large-grain unit: the pattern
and not on individual assertions (they can be refactored into different patterns
easily if needed.)
Bob's approach makes sense for his application where he is more interested
in variants, and in particular in variants by addition. In that case one can
expect that the variations in each stage may be quite small, so having
the declaration specify the stages it is not a bad approach.