powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вопрос по XSD/JXAP: как выловить данные из схемы?
4 сообщений из 4, страница 1 из 1
Вопрос по XSD/JXAP: как выловить данные из схемы?
    #33564692
botpride
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем хай,
вот возник вопрос, к которому не знаю как подступиться:

в джава-приложении для проверок XML-документов я прикрутил штатный джавовский парсер (Xerces), задаю валидацию по XSD, которая в том числе содержит текстовые описания тэгов (<xs:documentation>).
Ловлю ошибки, локализовал сообщения.
А теперь проблема: как бы из XSD прямо по ходу парсинга выловить эти описания? Чтобы, например, писать не "Ошибка в тэге <FileId>", а, скажем, "Ошибка в тэге <Идентификатор файла>"?
Через класс Schema уже и так и этак пытался - только до TypeInfo достучался, но мне оно не нужно...
...
Рейтинг: 0 / 0
Вопрос по XSD/JXAP: как выловить данные из схемы?
    #33565509
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пример кода.
...
Рейтинг: 0 / 0
Вопрос по XSD/JXAP: как выловить данные из схемы?
    #33566485
botpride
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да код как код, почти на 90% содран из статьи индуса с www.javasoft.com:
Парсер создается примерно так:

String language = XMLConstants.W3C_XML_SCHEMA_NS_URI;
SchemaFactory factory = SchemaFactory.newInstance(language);
StreamSource ss = new StreamSource(new File(schemaFileName));
Schema schema = factory.newSchema(ss);
SAXParserFactory spf = SAXParserFactory.newInstance();
spf.setNamespaceAware(true);
spf.setSchema(schema);
SAXParser saxParser = spf.newSAXParser();
дальше, естественно, saxParser.parse(....)

Ошибки ловятся тоже стандартно, через переопределенный error():

public void error(SAXParseException e)
throws SAXParseException {
//тут из e.getMessage(), e.getColumnNumber(), e.getLineNumber() конструируем сообщение в лог
}

Вот собственно в этом сообщении и хотелось бы достать ссылочку на то место в XSD, которое к нему относится.
...
Рейтинг: 0 / 0
Вопрос по XSD/JXAP: как выловить данные из схемы?
    #33577064
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мало исходной информации - хотел было помочь, да нет времени собирать код по кускам. Приведите полный пример, чтобы только скомпилировать осталось и посмотреть...

Приглашаю посетить сайт ИСКАТЕЛИ АЛМАЗОВ и другие эстонские юморески
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вопрос по XSD/JXAP: как выловить данные из схемы?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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