Поддержка EclipseLink MOXy @XmlPath для неравенства предикатов
Ранее опубликовал поддержку EclipseLink MOXy @XmlPath для осей / родителей
Я все еще работаю с аннотацией @XmlPath, и мне кажется, что предикатное неравенство не поддерживается?
@XmlPath("node[@attr != 'a']")
Также действительным для меня было бы проверить наличие атрибута
@XmlPath("node[@x]")
Или даже лучше, что он не существует
@XmlPath("node[not(@x)]")
Есть ли высокая стоимость внедрения этих функций? Я привык иметь весь массив функций XPath. MOXy предоставил мне фантастическую функциональность, за которую я очень благодарен, но она кажется немного негибкой в этом отношении.
1 ответ
Примечание. Я являюсь лидером EclipseLink JAXB (MOXy) и являюсь членом группы экспертов JAXB 2 (JSR-222).
MOXy в настоящее время поддерживает:
@XmlPath("node[@x='foo']")
но нет:
@XmlPath("node[@x!='foo']")
@XmlPath("node[@x]")
@XmlPath("node[not(@x)]")
Фон
В настоящее время MOXy использует один и тот же XPath для маршалинга и демаршаллинга. Это на 100% ясно, что означает каждый из неподдерживаемых XPath с точки зрения отмены маршалинга, это немного менее ясно с точки зрения сортировки (но, вероятно, не неразрешимо).
Пункты действий
Пожалуйста, введите запрос расширения для этой функции (укажите MOXy в качестве компонента). Ошибки, введенные внешними пользователями, имеют приоритет в нашем журнале.
Для дополнительной информации