Here’s our favorite
(from the comments in the ISOSTS Schematron Rule Set)
<!-- All sec should have @id except
1) within boxed-text or
2) sec which are not part of the structure,
e.g. inside Corrigenda or some Prolog Notes -->