>
> It's not really anything to do with agile or TDD, it's a no-no because
> the developers writing the code and junit tests have no need for a
> natural language abstraction layer getting in the way - the people who
> wrote the code know how to write the test.
>
The natural language does not get in the way, in the way I think Andrew means, for Schematron, anymore than a clear function name or clear comments or clear debug messages get in the way of any code. To the contrary: if a developer cannot clearly state the intent of some code, they are probably confused and the code is probably risky or wrong-headed.
I think there is a connection with tdd, by the way: one of the influential approaches is Ruby's rspec: the "describe ... it" syntax is tightly binge natural language statements of intent to code.
cheers
Rick