We had a different use of PIs.
We are testing transformations, and so we could that the output has
the same number of text nodes as the input. But the output untags
many pieces of text. So we replaced stripped tags with PIs, thus
maintaining the text node boundaries and allowing the count.
We could also use XML comments for this, but IIRC we use comments for
other things. So we could use XML comments and then add some
signature string at the start of the comment value to distinguish the
different kinds of comments. But why go to the trouble when XML
already provides a second kind of free tag (i,e, PIs).
I guess from a software engineering perspective, what PIs allow is a
separation of concerns that reduces coordination effort: in the case
above, we have a thorough but heavyweight schema development regime,
so the requirements of testers could be accommodated by developers
without needing to go to back to analysts and schema developers nor
forward to presentation developers.
Cheers
Rick