Не совсем ответ на ваш вопрос, но он определенно решаем на Java с плагинами JAXB плюс JAXB. JAXB имеет компилятор схем (XJC), который компилирует схемы XML в классы Java с аннотациями. XJC из эталонной реализации JAXB может быть дополнен плагинами, которые могут генерировать дополнительный код Я написал несколько плагинов для XJC, поэтому я бы сказал, что генерация кода шаблона посетителя не имеет большого значения.
Однако я не думаю, что классический шаблон посетителей - это правильный подход. С помощью схем OGC вы можете легко получить доступ к нескольким сотням, если не тысячи методов «посещения», так что это на самом деле не поможет.
Далее, я действительно не уверен, что это правильный подход к вашей основной задаче. Я думаю, что посетитель на самом деле не облегчит вещи, но сделает их более громоздкими. Я бы пошел на ручную обработку неупорядоченных объектов. В .Net я использовал бы один из инструментов XSD для создания отображений XML / объектов, а затем записывал обработку неупорядоченных объектов в ArcObjects вручную.
Кстати, вот парсер / сериализатор GML Я реализовал на основе сгенерированного JAXB-кода. Он конвертирует между геометриями GML и JTS. (JTS означает Java Topology Suite, один из популярных API для геометрии.)
Это почти то же самое, что вы хотите, но для Java / JTS вместо .Net / ArcObjects.