Всем привет!
Народ, у меня тут такое дело случилось:
Написали сайт на ASP, все документы сохранили в XML формате. Используем MS XML парсер для преобразования в HTML-документ. Но тут нам заявили, что нужно использовать бесплатные технологии, потому как винда видите ли дорого стоит. Я порылся в инете и наткнулся на информацию о том, что в PHP можно работать с XML и XSL. Нашел даже доки о том, как работать с DOM. Но о том, как можно использовать XSL в PHP нигде ничего нету! Может кто-то подскажет?
Мне в общем и нужно не много: преобразовать XML по правилам, описанным в XSL.
И еще: насколько безболезненным может оказаться переход с MSXML парсера на другой в плане того, что Microsoft всегда как-то по-своему трактует спецификации?
Огромнейшее спасибо всем, кто откликнется!
Здравствуйте Artyom, Вы писали:
A>Народ, у меня тут такое дело случилось: A>Написали сайт на ASP, все документы сохранили в XML формате. Используем MS XML парсер для преобразования в HTML-документ. Но тут нам заявили, что нужно использовать бесплатные технологии, потому как винда видите ли дорого стоит. Я порылся в инете и наткнулся на информацию о том, что в PHP можно работать с XML и XSL. Нашел даже доки о том, как работать с DOM. Но о том, как можно использовать XSL в PHP нигде ничего нету! Может кто-то подскажет? A>Мне в общем и нужно не много: преобразовать XML по правилам, описанным в XSL. A>И еще: насколько безболезненным может оказаться переход с MSXML парсера на другой в плане того, что Microsoft всегда как-то по-своему трактует спецификации?
Ничего не понял. Вы хотите избавиться от msxml парсера? Ну так он бесплатный. Или от win платформы вобще? Тогда я бы посоветовал jsp. Парсер есть в JRE начиная с 1.4 встроенный.
Здравствуйте Artyom, Вы писали:
A>Всем привет! A>Народ, у меня тут такое дело случилось: A>Написали сайт на ASP, все документы сохранили в XML формате. Используем MS XML парсер для преобразования в HTML-документ. Но тут нам заявили, что нужно использовать бесплатные технологии, потому как винда видите ли дорого стоит. Я порылся в инете и наткнулся на информацию о том, что в PHP можно работать с XML и XSL. Нашел даже доки о том, как работать с DOM. Но о том, как можно использовать XSL в PHP нигде ничего нету! Может кто-то подскажет? A>Мне в общем и нужно не много: преобразовать XML по правилам, описанным в XSL. A>И еще: насколько безболезненным может оказаться переход с MSXML парсера на другой в плане того, что Microsoft всегда как-то по-своему трактует спецификации? A>Огромнейшее спасибо всем, кто откликнется!
Насколько я знаю, начиная с четвертой версии PHP, он (PHP) поставляется с XSLT-процессором Sablotron. Говорят, что Sablotron слегка ущербный — не видел, не знаю. Он должен подключаться к PHP как расширение. Должна быть там dll-ка или несколько. Ну и функции там соответственно должны быть по применению преобразования к xml-файлу, вобщем, все как везде. Если идея PHP для тебя принципиальна, то я могу порыть у Валикова в "Технологии XSLT", там был именно тот простой пример с PHP и XSLT, который тебе нужен. Но это уже в понедельник
Здравствуйте Artyom, Вы писали:
A>Всем привет! A>Народ, у меня тут такое дело случилось: A>Написали сайт на ASP, все документы сохранили в XML формате. Используем MS XML парсер для преобразования в HTML-документ. Но тут нам заявили, что нужно использовать бесплатные технологии, потому как винда видите ли дорого стоит. Я порылся в инете и наткнулся на информацию о том, что в PHP можно работать с XML и XSL. Нашел даже доки о том, как работать с DOM. Но о том, как можно использовать XSL в PHP нигде ничего нету! Может кто-то подскажет?
В документации по PHP есть раздел по работе с xslt: XSLT functions
A>Мне в общем и нужно не много: преобразовать XML по правилам, описанным в XSL. A>И еще: насколько безболезненным может оказаться переход с MSXML парсера на другой в плане того, что Microsoft всегда как-то по-своему трактует спецификации?
В плане xsl микрософт трактует спецификацию по спецификации.
A>Огромнейшее спасибо всем, кто откликнется!
Здравствуйте Captain Crocus, Вы писали:
CC>Насколько я знаю, начиная с четвертой версии PHP, он (PHP) поставляется с XSLT-процессором Sablotron. Говорят, что Sablotron слегка ущербный — не видел, не знаю. Он должен подключаться к PHP как расширение. Должна быть там dll-ка или несколько. Ну и функции там соответственно должны быть по применению преобразования к xml-файлу, вобщем, все как везде. Если идея PHP для тебя принципиальна, то я могу порыть у Валикова в "Технологии XSLT", там был именно тот простой пример с PHP и XSLT, который тебе нужен. Но это уже в понедельник
Здравствуйте AndrewVK, Вы писали:
AVK>Ничего не понял. Вы хотите избавиться от msxml парсера? Ну так он бесплатный. Или от win платформы вобще? Тогда я бы посоветовал jsp. Парсер есть в JRE начиная с 1.4 встроенный.
В общем дело обстоит так, что мне вообще не приходится выбирать из чего-то. Там, где будет хоститься сайт, доступны PHP и Perl. Добиться установки еще чего-то, хоть даже и бесплатного, очень тяжело.
Здравствуйте Artyom, Вы писали:
A>Здравствуйте Captain Crocus, Вы писали:
CC>>Насколько я знаю, начиная с четвертой версии PHP, он (PHP) поставляется с XSLT-процессором Sablotron. Говорят, что Sablotron слегка ущербный — не видел, не знаю. Он должен подключаться к PHP как расширение. Должна быть там dll-ка или несколько. Ну и функции там соответственно должны быть по применению преобразования к xml-файлу, вобщем, все как везде. Если идея PHP для тебя принципиальна, то я могу порыть у Валикова в "Технологии XSLT", там был именно тот простой пример с PHP и XSLT, который тебе нужен. Но это уже в понедельник
A>Был бы очень признателен!
Сначала кусок о подключении под Windows32:
1. Убедиться, что файл php_sablot.dll присутствует в каталоге расширений.
2. Убедиться, что в файле php.ini присутствует строка extension=php_sablot.dll/
3. Убедиться, что библиотеки expat.dll и sablot.dll находятся в каталоге, указанном в переменной окружения PATH.
Теперь об использовании на других платформах:
На других платформах потребуется cконфигурировать php c флагом --with-sablot. В остальном установка совершенно аналогична.
К сожалению, о подключении все
Теперь об использовании:
Использование Sablotron возможно только в том случае если хостер пойдет вам навстречу и установит expat и скомпилирует php c поддержкой sablotron
У Зенона например есть такой план профи, который позволяет скомпилировать под себя php, apache.
Здравствуйте vicgor, Вы писали:
V>Использование Sablotron возможно только в том случае если хостер пойдет вам навстречу и установит expat и скомпилирует php c поддержкой sablotron V>У Зенона например есть такой план профи, который позволяет скомпилировать под себя php, apache. V> V>Саблотрон работает вполне нормально V> V>Возможно еще посмотреть что есть для Перла
Спасибо!
Конечно то, что прийдется напрягать провайдера, не очень радует, так как он неохотно идет на помощь. Перл в принципе тоже поддерживается. Я просто зациклился на PHP потому, что с перлом почти не работал. Однако скритовая часть сайта небольшая, и если бы перл можно было использовать для преобразования XML без всяких конфигураций — это было бы просто здорово. Попробую найти что-нибудь по этому поводу самостоятельно, но не уверен, что найду, потому буду признателен за любую инфу по этому поводу.
Для справки: Sablotron работает со следующими платформами: C++, Perl, PHP, Python. Насчет стандартных конфигураций Perl'a у хостеров мне, к сожаленю, ничего неизвестно. Наверное, опять придется напрягать.
Здравствуйте Artyom, Вы писали:
A>В общем дело обстоит так, что мне вообще не приходится выбирать из чего-то. Там, где будет хоститься сайт, доступны PHP и Perl. Добиться установки еще чего-то, хоть даже и бесплатного, очень тяжело.
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте Artyom, Вы писали:
A>>В общем дело обстоит так, что мне вообще не приходится выбирать из чего-то. Там, где будет хоститься сайт, доступны PHP и Perl. Добиться установки еще чего-то, хоть даже и бесплатного, очень тяжело.
AVK>А сменить хостера?
Не могу я сменить хостера. Это универститетский сайт, и хоститься он должен универом.
Здравствуйте, Captain Crocus, Вы писали:
CC>Для справки: Sablotron работает со следующими платформами: C++, Perl, PHP, Python. Насчет стандартных конфигураций Perl'a у хостеров мне, к сожаленю, ничего неизвестно. Наверное, опять придется напрягать.
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте Artyom, Вы писали:
A>>Не могу я сменить хостера. Это универститетский сайт, и хоститься он должен универом.
AVK>И что из етого? Они там Windows-сервер найти не могут? Или это принципиальная позиция местных гуру?
Представь себе: у них нет денег на Windows сервер! И вообще они какие-то недоброжелательные, совсем не хотят помогать.
В общем я уже понял, что так просто мне не удасться использовать XML/XSL под PHP или Perl. Нужно ставить Sablotron на сервер... Только вот что это такое и с чем его едят?...
Люди! Кто нить может дать полезную ссылку или кинуть доку? Я вообще в юниксах не шарю, а тут нужно разобраться с Sablotron, понять как его установить и как его использовать в PHP. Только вот нигде не могу найти приличного руководства для чайников, а так сразу перестроиться с виндов на линукс — тяжко... Может у кого-нить доки есть по этому делу или линку кто-то может дать, где я могу найти руководства от А до Я (или хотя бы до Ъ . Или если кто-то уже был на моем месте, то посоветуйте, что почитать (не печатное), чтобы быстро понять, что мне нужно для работы с XML и XSL.
Здравствуйте Artyom, Вы писали:
A>Представь себе: у них нет денег на Windows сервер! И вообще они какие-то недоброжелательные, совсем не хотят помогать.