Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / SAX / 10 сообщений из 10, страница 1 из 1
16.01.2007, 16:59:21
    #34259444
andrei77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
такой вопрос. можно ли с помощбю SAX сделать следующее:

есть xml вида:

<Element>Элемент
<name>имя</name>
<number>номер</number>
<type>тип</type>
<unit>чтонибудь</unit>
<class>класскакойто</class>
<Element>Элемент
<name>имя</name>
<number>номер</number>
<type>тип</type>
<unit>чтонибудь</unit>
<class>класскакойто</class>
</Element>
<Element>Элемент
<name>имя</name>
<number>номер</number>
<type>тип</type>
<unit>чтонибудь</unit>
<class>класскакойто</class>
<Element>Элемент
<name>имя</name>
<number>номер</number>
<type>тип</type>
<unit>чтонибудь</unit>
<class>класскакойто</class>
</Element>
</Element>
</Element>




то есть есть некоторый кусок который повторяется = это элемент Element
и в нем мужет бытьдо кучи таких Element и туда дальше...
так вот можно бы было сделать так, чтобы при парсинге на отрезке <Element> </Element> вызывалась процедура (функция) которая бы создавала определеный xml с учетом этих данных но в другом виде?
...
Рейтинг: 0 / 0
16.01.2007, 17:21:02
    #34259527
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
А почему нельзя? А может все-таки XSLT?
...
Рейтинг: 0 / 0
16.01.2007, 17:48:57
    #34259616
andrei77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
мне кажется SAXом проще, а ты как думаешь Blazkowicz ?
...
Рейтинг: 0 / 0
16.01.2007, 18:21:43
    #34259732
y3u
y3u
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
самое оптимальное:
1) для валидации XML-ника использовать:
а) DTD для валидации только структуры данных
б) XML Scheme для более гибкой валидации с учетом типа данных

2) если надо получить из одного XML другой XML нужно использовать трансформы XSLT

3) если нужно ручками просто заметить данные из XML на бины нужно использовать SAX модель и хендлер

4) если нужно получить из XML дерево, которое предполагается модифицировать, можно, в зависимости от задачи:
а) использовать DOM модель и работать с деревом в Java коде
б) использовать, опять же, XSLT, но для некоторых узлов продергивать методы из Java классов

обо всем этом можно найти информацию тут на форуме, если поискать
...
Рейтинг: 0 / 0
16.01.2007, 20:16:24
    #34259975
Anarion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
Все зависит от масштабов. Если входная и выходная XML статичны, то проще и производительнее собирать ее руками.SAX травишь на <Element>, берешь значения и в StringBuffer собираешь новую XML.

Если планируется поддержка многих выходных XML или выходная XML нестатична, то проще будет поддерживать систему с XSLT.
...
Рейтинг: 0 / 0
17.01.2007, 09:39:28
    #34260540
andrei77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
спасибо большое за ответы.

А почему нельзя использовать SAX для динамических страниц, с разным кол-вом вложений этих Element?

Так много слышу про XSLT, скажите а можно там встречая новый Элемент, создавать новые элементы в зависимости от того сколько дочерних элементов. например:

<Element>

<a1>378</a1>
<a2>324</a2>
<a3>235</a3>

<Element/>(дальше там тоже внутри что-то похожее на весь родительский Element)
<Element/>(дальше там тоже внутри что-то похожее на весь родительский Element)
<Element/>(дальше там тоже внутри что-то похожее на весь родительский Element)

</Element>

и мне нужно сделать новых три элемента (если дочерних 7, то 7 элементов) в которых есть ещё и счетчик ?? хватит ли на это средств XSLT или придется обращаться к Java, как подсказывали мне в соседней теме?
...
Рейтинг: 0 / 0
17.01.2007, 13:56:40
    #34261705
Anarion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
авторА почему нельзя использовать SAX для динамических страниц, с разным кол-вом вложений этих Element?
Можно.

авторТак много слышу про XSLT, скажите а можно там встречая новый Элемент, создавать новые элементы в зависимости от того сколько дочерних элементов
Можно. Только это стильные такие извращения.

Если скорость не критична, то, ИМХО, лучше всего DOM. Больше возможностей, меньше геммора.
...
Рейтинг: 0 / 0
17.01.2007, 15:42:46
    #34262122
andrei77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
интересно услышать, что думает Blazkowicz ...(о использовании XSLT в этом контексте)

и не есть ли XSLT, в каких-то серьезных решениях, ну если не говорить о простых преобразованиях... форматированых... язык "стилевого извращения"?
...
Рейтинг: 0 / 0
17.01.2007, 17:08:27
    #34262448
andrei77
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
а есть ли какая-нибудь цифра, при которой обработка DOM xml файла определенного размера резко снижается?
...
Рейтинг: 0 / 0
17.01.2007, 17:11:10
    #34262460
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SAX
andrei77интересно услышать, что думает Blazkowicz ...
Польщен

andrei77(о использовании XSLT в этом контексте)
В каком контексте? Постановка задачи: "мне надо вот этот XML перегнать в какой-то там другой". К сожалению я не на столько силен в XSLT чтобы угадать сможет ли он создать какой-то другой XML, удовлетворяющий никому не известным требованиям.

andrei77и не есть ли XSLT, в каких-то серьезных решениях, ну если не говорить о простых преобразованиях... форматированых... язык "стилевого извращения"?
Вопроса не понял. XSLT создан для трансформирования одного XML в другой. С какой стати называть его непонятно чем?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / SAX / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]