Анализатор Xerces2 XML и процессор Xalan XSLT: состояние и замена?

На дворе 2018 год. Каково состояние парсера Xerces2 XML и Xalan XSLT-процессор библиотеки для Java? Их последними выпусками являются 2.11.0 в 2013 году и 2.7.2 в 2014 году соответственно.

  • Они до сих пор сохраняются?

  • Неужели они настолько совершенны, что не нуждаются даже в периодическом выпуске патчей?

  • Существуют ли заменяющие библиотеки от разных поставщиков, которые можно было бы использовать вместо этого? Являются ли эти замены бесплатными так же, как эти два?

  • Можно ли вообще обойтись без них только с тем, что предлагает JDK?


person wilx    schedule 10.04.2018    source источник
comment
Я предпочитаю Saxon как процессор XSLT.   -  person lexicore    schedule 10.04.2018
comment
Saxon 9.8 HE — это процессор XSLT 3.0, доступный с открытым исходным кодом на SourceForge sourceforge. .net/projects/saxon/files/latest/ и на Maven, поэтому его можно считать заменой Xalan, поскольку Xalan реализует XSLT и XPath 1.0 с 1999 года, а Saxon 9.8 поддерживает последние версии XSLT 3.0 и XPath 3.1 с 2017 года.   -  person Martin Honnen    schedule 10.04.2018


Ответы (2)


Активная разработка Xerces и Xalan остановилась намного раньше этих последних релизов. В промежутках было выпущено множество патчей для исправления ошибок. Вполне естественно, что после нескольких лет выпуска только исправлений ошибок, без каких-либо новых разработок, программное обеспечение становится очень стабильным, и дальнейшие обновления не требуются.

В течение многих лет я советовал использовать версию Xerces для Apache, потому что она была более надежной, чем версия в JDK: в версии JDK было несколько неприятных ошибок, и Sun/Oracle, похоже, не спешили их исправлять. Я думаю, что теперь это изменилось; версии JDK теперь вполне пригодны для использования.

Если вам нужны функции XSLT выше уровня 1.0, переключитесь с Xalan на Saxon.

person Michael Kay    schedule 10.04.2018
comment
При всем уважении, пожалуйста, сообщите о своей принадлежности. - person lexicore; 10.04.2018
comment
Версия JDK имеет ограниченный необходимый и очень полезный функционал библиотеки. - person Mike; 12.03.2021

В основном это реализации jaxp, которые были подарены Apache разными компаниями. Crimson — еще один, подаренный SUN. В наши дни реализация jaxp связана с JDK, поэтому очень мало причин использовать альтернативную реализацию. Насколько я помню, вы обычно использовали xerces или xalan в качестве зависимости при создании приложений j2ee, прежде чем это было так.

ознакомьтесь с неофициальными часто задаваемыми вопросами о jaxp

person Jilles van Gurp    schedule 10.04.2018