Pull to refresh

Comments 24

UFO just landed and posted this here
я и не говорю что это претендует на уникальность, но:
1. XSLT2
2. Bean scripting Framework это совсем не тоже самое что полноценный Javascript движок.
3. Да и ключевое слово мне кажется «можно приделать»…
UFO just landed and posted this here
Раз уж подключил мозиловский движок, то разумнее использовать Javascript with E4X — Javascript для XML. Который оперирует с XML объектами более элегантно, а не в виде костылей «startElement(...);»
E4X is implemented in SpiderMonkey (Gecko's Javascript engine) since version 1.6.0[1] and in Rhino (Mozilla's other Javascript engine written in Java instead of C) since version 1.6R1. Осталось только найти как его включить. А проблема со startElement(...) не в том чтобы Javascript научить работать с XML а в том чтобы обеспечить двухстороннее конвертирование объектов между рантаймом Rhino и XSLT.
Ужас, XSLT всегда использовали что бы отделить логику от представления, а тут опять всего намешали.
Почему просто не использовать XSLT в JS не делать «ужасный коктейль»
а Вы не путаете со Smarty?
Нет не путаю, хотя идеи похожи ;)
Так все таки, вам не кажется более логичным вызывать XSLT из JS, а не наоборот?
нет не кажется, XSLT это не шаблонизатор а полноценный функциональный язык программирования, я могу представить где ваше предложение себя оправдает, но в данном конкретном случае ситуация иная.
Мне кажетсяя, что XSLT тяжеловат и немного неуклюж для полноценного языка программирования. Когда-то давно я его хотел использовать в таком качестве, но потом оказалось, что большинство задач решается проще классическим подходом.

Но есть рассматривать XSLT как язык программирования, то возникает несогласование парадигм. XSLT — это функциональный язык, JS — императивный. При их сложении получается нечто, что наследует ограничения обоих языков. Например, функциональные языки отлично распаралливаются, у императивных же, как только логика становится чуть сложнее, все ощутимо хуже — требуется привлекать различные способы синхронизации.
как то противоречиво: расширять «полноценный функциональный декларативный язык программирования»
и все же он предназначен для преобразований XML-документов, и расширять его дополнительными конструкциями (тем более внедрять внутрь другой язык ) не самая лучшая практика (хотя вполне уместна в некоторых случаях — возможно в вашем)
опустим то для чего он изначально был предназначен (Javascript изначально тоже был предназначен для того чтобы приделывать всякие рюшечки на вебстраницу, а не для написание фреймворков и веб — приложений), XML — это входные данные и ничего больше не лучше и не хуже других типов данных.
Так и не понял ответа на вопрос «Зачем это нужно ?»

Для того чтобы расширить возможности XSLT существует библиотека EXSLT
Добавление еще каких то скриптовых возможностей внутрь XSLT по моему противоречит самой концепции использования связки XML/XSLT

Наверно ответ на Ваш вопрос — «Я уже сделал а как и где применить, и применять ли вообще решайте сами»
Мне кажется я привел примеры использования…
Да пример использования — есть

но только не понятно зачем реализовывать это на уровне XSLT
а не с помощью того же серверного Javascript, если уж на то пошло,
генерируя XML и преобразовывая его в другой формат используя XSLT
Потому что то, что вы описываете это другой подход к проблеме если таковая существует, для меня проблема была в том что вход — это XML а процессинг основан на XSLT… решение соответствующее. Повторюсь также что это XSLT 2 ни одной реализации Javascript движка со встроенным XSLT 2 либо возможностью его как либо прикрутить я не знаю.
Нестыковочка просто получилась

В начале статьи вы пишете
"[проект] как я думаю может быть полезен многим из вас"
а теперь говорите что это решение для частного случая с причудливыми исходными требованиями :)
да жизнь вообще причудливая штука а потому и требования могут быть причудливыми, тем не менее надеюсь кому то может пригодиться!
Да примеры есть, но они они показывают как сделать смесь XSLT, Javascript, Java, а не как просто решить поставленную задачу
Нужно знать всего 3 языка, чтобы выбрать данные из базы и сгенерировать XML дерево — как по мне, использовать это можна «Just for Fun»
ну предположим для вас это выглядит как just for fun, для меня и возможно для кого то ещо это так не выглядит. Круг задач разный.
Я активно использую XSLT поледние лет пять
честно говоря у меня сложилось то же самое мнение — JFF
Sign up to leave a comment.

Articles