Good article. I've seen substitutionGroups used heavily in the OAGIS-8 schema. Is there a chance you missed these or did this project not make it into your data set?
You are correct in that the 8.x version of OAGiS used substitutionGroups. I used the 9.0 version for my analysis, but made note of the fact that sGroups are used for extensibility. And in the data section at the end, I mention that their global element design was in part intended to accomodate later substitution via sGroups.