Я знаю, что начало этого вопроса спорно, поэтому я надеюсь, что я добавил достаточно уточнений, и что люди читают их.
1002 * У меня есть довольно сложный XSD-файл (также набор из XSD файлы, для каждой версии схемы).
В конечном итоге я ищу набор файлов XSLT, который может взять файл XML, совместимый с XSD v12, и преобразовывать его (отбрасывать много материала) до тех пор, пока становится XSD v3-совместимым XML файлом. Возможно, что некоторые из преобразований будут немного умнее, как, например, взятие градиентаStartColor и присвоение его backgroundFillColor, если градиентМод = "3" ... но я не ищу, чтобы эта часть выполнялась автоматически.
Таким образом, мой Шаг 1 будет следующим: создать XSLT-файл, который «соответствует» XSD-файлу, так что совместимый со схемой файл XML проходит через нетронутым. Но там, где файл, несовместимый со схемой XML, содержит все эти несовместимые атрибуты / элементы. Я бы даже не заботился о проверке значений.
Я ожидал, что найдется способ автоматически сгенерировать такой XSLT-файл. Но мой поиск в Google не дал результатов.
Я понимаю, что XSLT изначально не поддерживает схемы (по крайней мере, в XSLT 1), но я ожидаю, что некоторое автоматическое c создание шаблона XSLT может перечислите через XSD, чтобы добавить «привязку», достаточную для эмуляции схемы.
Или я заблуждаюсь в этой мысли?
Спасибо