LINUX.ORG.RU

Сайты на XML/XSLT


0

1

Если кто находил, скиньте на сие чудо ссылку поофигевать. Интересует сайт, страницы которого - читаемый и пригодный для автоматической обработки XML, а если открыть в браузере, то получается обычная Web-страница с всякими JavaScript/CSS.

Причина почему смотрю в эту сторону, так как в моей програме есть web - браузер файлов, который бы хотелось сделать доступным для автоматических приложений. Пока что есть Web-UI, но если передать параметр type=json или type=xml, то получаем ответ не в форме text/html, а в соответствующей.

Тяга к интерестным решениям (и боли в заднице) вызывает желание исследовать, можно ли попытаться включить xsl. Может быть элегантное решение.

★★★★★
Ответ на: комментарий от Deleted

Я посмотрел как у вас сделано, если правильно понял, то у вас сам XML - это то что я хочу получить после первой фазы. У вас есть <content>, <title> - тоесть это вообщем-то уже подготовленные к отображению вещи. Они уже как бы связаны с отображением, они наполовину отображение - но я хочу на вход подавать чистую информацию, как веб-сервис.

Ладно, напишу пример всех фаз. Нюансы типо namespace пропущу

Вход:

<files>
<file name="file1.txt" size="100"/>
<file name="video.avi" size="1331312312"/>
</files>

Вторая фаза

<page>
<title>Листинг файлов</title>
<content>
<h:h1>Листинг</h:h1>
<h:table>...</h:table>
</content>
</page>

Последняя фаза

<html>...</html>

Итого - первая фаза пригодна в качестве веб-сервиса, не содержит XHTML. Вторая фаза - сненерирован контент и з данных, но еше нет UI, CSS, div, всей верстки. Третья фаза - готовый документ.

Вторая фаза специфична для страницы. Третья фаза - общий для всего сайта шаблон.

У вас сразу вторая фаза, тоесть данные не совсем в чистом виде, есть XHTML

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Там XHTML и есть данные: статья, например. «Вторая фаза» не нужна сама по себе (в твоём примере такой необходимости точно нет). Всё оформление уже должно лежать в XSLT файле. Оно же не обязательно применит все правила. Только те, что совпадут. А нет и нет. Ну и + xsl:if иногда, если очень нужно.

Если есть какие-то отдельные редкие совсем уж правила и так прям не хочется их в основной XSLT, то можно создать ещё один, записать туда все отдельные правила и подключить основной XSLT, например:

<xsl:include href="/transform/base.xsl"/>

см. http://serenareem.net/transform/tech.xsl

Иначе только грузить «вторую фазу» как данные через document().

Deleted
()
Ответ на: комментарий от vertexua

Почему XSLT блокируется NoScipt? Его использование достаточно опасно или использует опасные и/или нежелательные технологии?

Deleted
()
Ответ на: комментарий от Deleted

Потому что NoScipt — говно, очевидно же. По ссылке непонятная фигня, которой непонятно зачем нужен XSLT, но это уже совсем другая история :]

Deleted
()
Ответ на: комментарий от Deleted

Подразумевалось что XSLT - одна из технологий, на основе которой совместно с XML, XHTML, CSS, JavaScript можно построить весь веб

vertexua ★★★★★
() автор топика
Ответ на: комментарий от Deleted

И? Носкриптопроблемы такие проблемы. Если у вас скриптоблокер блокирует что-то кроме скриптов или пишет что-то прямо в XML, то плагин — говно. Пиши багрепорт.

Deleted
()
Ответ на: комментарий от Deleted

> Если у вас скриптоблокер блокирует что-то кроме скриптов или пишет что-то прямо в XML
Ну это вы сначала докажите, прежде чем утверждать.

Пиши багрепорт.

Это не баг, он нарочно: http://images.netbynet.ru/imgs/7a0e1d19363c976ef3b49bf91b9f3c51.png

Deleted
()
Ответ на: комментарий от Deleted

>Ну это вы сначала докажите, прежде чем утверждать.

LOLWUT? Выбираешь любой браузер, выключаешь в нём жабаскрипт. Профит.

Это не баг, он нарочно


ССЗБ.

Deleted
()
Ответ на: комментарий от vertexua

Подразумевалось что XSLT - одна из технологий, на основе которой совместно с XML, XHTML, CSS, JavaScript можно построить весь веб

Нельзя.

XML, как протокол, не предполагает потерю части информации и её восстановление без перезагрузки всего XML-документа. Интернет же работает из предположения, что информация передаётся с потерями, а вся ответственность за восстановление лежит на протоколе TCP и протоколах прикладного уровня. Так вот, XML в «ненадёжном интернете» работать просто не будет, так как перезагрузка контента станет перманентной БЕЗУСПЕШНОЙ попыткой хоть что-то прочитать.

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

У нас с вами разные Интернеты. Времена дайл-апа канули в лета, ошибок не бывает и все грузится всегда полностью, успешно и быстро

vertexua ★★★★★
() автор топика
Ответ на: комментарий от iZEN

В XML нету механизма восстановления частей документа и/или обработки контента без некоторых (потерянных) частей, в отличие от нестрогого HTML, который можно отобразить не весь.

iZEN ★★★★★
()
Ответ на: комментарий от vertexua

Тем не менее, интернет до сих пор строится на тех же принципах, что и диалапный коммутируемый доступ. Сюрприз?

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

Не сюрприз. Все те же пакеты IP и простокол TCP. Но теперь ВСЕ сайты ВСЕГДА грузятся, быстро и качественно. Исключение - перегрузка говносервера

vertexua ★★★★★
() автор топика
Ответ на: комментарий от vertexua

Не надо продукты строить с учетом попахивающих RIPом вещей. )

vertexua ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.