Программирование игр, создание игрового движка, OpenGL, DirectX, физика, форум
GameDev.ru / Программирование / Форум / Валидация нескольких XML по одному XSD (2 стр)

Валидация нескольких XML по одному XSD (2 стр)

Поделиться
Страницы: 1 2 3 4 Следующая »
IskanderУдалёнwww26 июня 20109:46#15
DevilDevil
Это неверно. Бухгалтер не сможет править руками XML, хотя бы потому что XML вообще не правится руками, он не предназначен для чтения человеком.

То что ты хочешь сделать вещь напоминает логический контроль. У нас в системе это реализовано примерно так  - пишутся условия примерно
(Отчет о [многабукав]).Итоговый_Баланс  = (Отчет о [многабукав]).Суммарная_задолженность + (Другой о [многабукав]).Суммарные_поступления

Такую хрень написать бухгалтер сможет, особенно если ему дать инструмент для этого. Затем парсер идет, и проверяет все отчеты по формулам.
Это именно проверка данных - схема проверяется отдельно. Причем сгеннерированные нами XML есстественно не проверяется - он по определению правилен.

DevilDevil
> данные для генерации xml представляют пользователи
> поэтому сверка с xsd в первую очередь нужна им
Они предоставляют данные - ну и подставляй данные в готовую схему. Схема представления - отдельно, данные отдельно, обработка данных отдельно.

DevilDevil
> мне надоело разводить холивар
Это не холивар. Валидация XML по схеме никак не может проверить правильность данных. Только соответствие типов данных. Тебе цмные вещи говорят, а ты уперся в валидацию, классическая XY проблема. Ну а раз так хочешь - Xerces тебе в руки. Чтобы бухи поняли лог, очевидно надо его писать понятным.

DevilDevil
> 1) xml генерирую я
> 2) я могу ошибиться и мой xml не будет соответствовать нужному xsd
Я раньше не понимал, как некоторые программы для создания виртуальных дисков умудрялись так снять образ, что не могли его прочитать.
X512Постоялецwww26 июня 201010:03#16
Iskander
> он не предназначен для чтения человеком.
ЩИТО? Зачем его тогда текстовым сделали? Есть же бинарные форматы хранения иерархических данных, которые работают намного быстрее, занимают меньше места и более простые в реализации. Единственное оправданное использование текстового формата - предназначение для чтения человеком.
IskanderУдалёнwww26 июня 201010:25#17
X512
> ЩИТО? Зачем его тогда текстовым сделали?
Чтобы решить проблемы с различным числом бит, big/little endian и т.п. при обмене данными

> Есть же бинарные форматы хранения
> иерархических данных, которые работают намного быстрее, занимают меньше места и
> более простые в реализации.
Пока ты на x86 да.

> Единственное оправданное использование текстового
> формата - предназначение для чтения человеком.
Не единственное.

GalantПостоялецwww26 июня 201010:28#18
Изощренная месть бухгалтерам...
X512Постоялецwww26 июня 201010:36#19
Iskander
> Чтобы решить проблемы с различным числом бит
Покажи хоть один девайс с не 8 битным байтом, который повсеместно применяется. Даже на микроконтроллёрах байт 8 битный.

> big/little endian и т.п. при обмене данными
Конвертируется без всяких проблем.

Если уж такие страшные проблемы с передачей данных(что почти невозможно), то используется Base64.

IskanderУдалёнwww26 июня 201011:16#20
X512
> Конвертируется без всяких проблем.
Чтобы не конвертировать сделали текст.
X512
> что почти невозможно
Ключевое слово здесь почти.
X512
> то используется Base64.
Так подожди, он же текстовый? Зачем? Ведь бинарные форматы работают намного быстрее, занимают меньше места и более простые в реализации.э

PS: Мы отклонились от темы. Создай тему в программировании флейма, чем бинарные форматы лучше текстовых и зачем XML, HTML, да и вообще протокол HTTP и многие другие сделали текстовым. HTML и HTTP текстовые видимо для того чтобы можно было в телнете просматривать вебсайты и руками набирать запросы.

X512Постоялецwww26 июня 201011:58#21
Iskander
> Чтобы не конвертировать сделали текст.
Это конвертирование тривиально. Делается одной строчкой.

> Так подожди, он же текстовый? Зачем? Ведь бинарные форматы работают намного
> быстрее, занимают меньше места и более простые в реализации.э
Это на случай, если криворукие разработчики не дают передавать бинарники или портят их при передаче. Таких надо ставить к стенке.

X512Постоялецwww26 июня 201012:03#22
Iskander
> PS: Мы отклонились от темы.
Тема исчерпана. Автору нужно проверять входные данные до генерации в соответствии с логикой этих данных. Если у него сгенерированный код некорректный - то это серьёзный баг генератора.
IskanderУдалёнwww26 июня 201012:06#23
X512
> Это конвертирование тривиально. Делается одной строчкой.
Ты такой няшка. Теперь еще для разных форматов дробных чисел и даты напиши ))

X512
> Тема исчерпана. Автору нужно проверять входные данные до генерации в
> соответствии с логикой этих данных. Если у него сгенерированный код
> некорректный - то это серьёзный баг генератора.
+1

X512Постоялецwww26 июня 201012:12#24
Iskander
> Теперь еще для разных форматов дробных чисел и даты напиши ))
Конвертация аналогична. Гугл в помощь.
Ghost2Постоялецwww26 июня 201012:20#25
X512

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

DevilDevilПостоялецwww26 июня 201012:26#26
Iskander
>Это неверно. Бухгалтер не сможет править руками XML

Я разве говорил о правке XML ? Нет. Я говорил о правке xls

>Причем сгеннерированные нами XML есстественно не проверяется - он по определению правилен.
У меня такое впечатление, что ты не работал с xml. И с xsd тоже
при отправке в налоговую всплывает дофига ограничений. Формат кодов, каких-то наименований, точек вместо запятых, реестровых записей
"по определению правилен" - это убило

>Они предоставляют данные - ну и подставляй данные в готовую схему.
Нихрена себе откровение
я учту

>Тебе цмные вещи говорят
я чёт до сих пор не увидел ни одного нормального поста о валидации нескольких xml


X512
>Автору нужно проверять входные данные до генерации в соответствии с логикой этих данных.
скажи, ты видел алгоритм проверки ячеек на соответствие типу
я вот нет
зато я видел, что валидация xml проводится

X512Постоялецwww26 июня 201012:38#27
Ghost2
> и этому есть миллион и одно подтверждение
Миллионы мух не могут ошибаться...

DevilDevil
Как генерируешь XML? Не текстом ли?


Из этой темы видно, что XML разьедает мозг.

Ghost2Постоялецwww26 июня 201012:43#28
X512

> Миллионы мух не могут ошибаться
And now, tell me about your favorite OS, please.

DevilDevilПостоялецwww26 июня 201013:45#29
X512, для генерации xml написал свой алгоритм
у меня есть свой xml-парсер-создатель, но из VBA решил юзать Microsoft.XMLDOM

есть в экселе свой метод генерации xml по схеме и там кстати есть проверка на xsd. проблема в том, что метод убог, поэтому приходится юзать своё

Страницы: 1 2 3 4 Следующая »

/ Форум / Программирование игр / Общее

Тема в архиве.

2001—2017 © GameDev.ru — Разработка игр