![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| polosatij |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 22.2.2004 Где: Stuttgart<-> ;Karlsruhe, Germany Репутация: 1 Всего: 8 |
есть некая структура..
нужно из неё сделать следующее:
и так далее.. т.к. структура xsd у меня include-ирует другие структуры и сама по себе просто огромная, писать некий .xslt можно, но сильно напряжно.. мысль такая, попробовать конвертнуть всё в какой-нибудь другой формат и от туда уже, чтоб было по проще, написать некий парсер, что выташит все пути... кому какая мысль в голову приходит? пы.сы. в наличии есть, например, oxygen Это сообщение отредактировал(а) polosatij - 10.10.2008, 21:54 |
||||
|
|||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
Думаю, самописный SAX парсер должен справится с такой задачей.
|
|||
|
||||
| polosatij |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 22.2.2004 Где: Stuttgart<-> ;Karlsruhe, Germany Репутация: 1 Всего: 8 |
слишком долго писать.. root файл около 1000 элементов, вложеная структура в этих элементов до 20 Element-ов в первом уровне и 50 на втором уровне ( это уже возможно другой файл), возможно есть ещё третий уровень.. итого более 50.000 элементов.. возможно, 1/3 или 2/3 из них повториться, но всё равно меня цифра убивает Это сообщение отредактировал(а) polosatij - 10.10.2008, 22:29 |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 47 Всего: 159 |
Если необходимо получить лист путей документа, то алгоритм получается однотипный и небольшой. По крайней мере, то преобразование что показано в вашем первом посте не должно вызвать никаких затруднений. Если для каждого узла, в добавок, нужно навесить уникальную логику преобразования, то тут конечно сложнее, но скорее всего от этого никуда не убежать. Логику придётся так или иначе реализовывать.
Это сообщение отредактировал(а) powerOn - 10.10.2008, 22:37 |
|||
|
||||
| polosatij |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 22.2.2004 Где: Stuttgart<-> ;Karlsruhe, Germany Репутация: 1 Всего: 8 |
powerOn, а как поступить с теми файлами, что include-ируются в root-овский файл? можно ли как-то SAX-у сказать, что у меня не один входной файл и если вдруг путь обрывается, он должен смотреть в другой файл?
|
|||
|
||||
| polosatij |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 22.2.2004 Где: Stuttgart<-> ;Karlsruhe, Germany Репутация: 1 Всего: 8 |
powerOn, да, кстати.. наверно, я не правильно описал вверху структуру, она у меня не xml, а хsd
|
|||
|
||||
| polosatij |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 22.2.2004 Где: Stuttgart<-> ;Karlsruhe, Germany Репутация: 1 Всего: 8 |
вообще, не помешал бы какой-нибудь xsd to xquery |
|||
|
||||
| polosatij |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 22.2.2004 Где: Stuttgart<-> ;Karlsruhe, Germany Репутация: 1 Всего: 8 |
пока пошёл таким путём.. взял xmlbeans и сгенерировал .xml из .xsd, получился файл размером в 450К.. первое, что мне не нравится, у меня были уже в прошлом траблы с xmlbeans, он сам по себе buggy проверил oxygen, к сожалению параметры раставлены не правильно.. тьфу-тьфу, вроде всё остальное намана.. теперь рекурсивно пишу path, взяв за основу apache commons configurations.. поскольку др. варианты никто не предлогал и уже написано 50% кода и решено, трабл, помечаю топик как "решён".. |
|||
|
||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 20 Всего: 54 |
Сколько пользовал - не припоминаю. А у вас что за проблемы были? Это сообщение отредактировал(а) w1nd - 13.10.2008, 14:17 -------------------- ![]() ![]() |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |