powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / SAX
10 сообщений из 10, страница 1 из 1
SAX
    #34259444
andrei77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
такой вопрос. можно ли с помощбю 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
SAX
    #34259527
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему нельзя? А может все-таки XSLT?
...
Рейтинг: 0 / 0
SAX
    #34259616
andrei77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне кажется SAXом проще, а ты как думаешь Blazkowicz ?
...
Рейтинг: 0 / 0
SAX
    #34259732
y3u
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
самое оптимальное:
1) для валидации XML-ника использовать:
а) DTD для валидации только структуры данных
б) XML Scheme для более гибкой валидации с учетом типа данных

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

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

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

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

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

А почему нельзя использовать 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
SAX
    #34261705
Anarion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА почему нельзя использовать SAX для динамических страниц, с разным кол-вом вложений этих Element?
Можно.

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

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

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

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

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


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