Вы правы, заметив, что почти любая попытка сделать это будет выходить за пределы, так как схема становится все более сложной, и вы будете постоянно пытаться улучшить свой инструмент, чтобы справиться с большей сложностью XSD, пока не поймете, что вашВесь подход ошибочен.
Во-первых: не пытайтесь отработать исходные документы XSD;отработайте скомпилированную форму модели компонентов схемы (SCM), созданной процессором схемы. Есть разные способы сделать это. Xerces предлагает Java API для SCM. Saxon предлагает XML-представление SCM, а также набор функций расширения XPath для навигации по SCM. Преимущество использования SCM заключается в том, что вы изолируете себя от множества косметических различий между различными способами написания одной и той же схемы, например, группами атрибутов, группами моделей, xs: include, именованными и анонимными типами.
SecondМногим людям нравятся электронные таблицы, и некоторые люди удивительно креативны с ними. Но, в конце концов, представить график сложной информации в двумерной сетке не так просто. Вы уверены, что это правильный подход? Вместо этого я видел, как люди генерируют визуализации с использованием HTML и SVG с обширными гиперссылками, которые кажутся гораздо более подходящими.