powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XML-схемы не нужны!
22 сообщений из 22, страница 1 из 1
XML-схемы не нужны!
    #38432375
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Собственно, по теме: зачем нужны XML-схемы, если с их помощью нельзя описать структуру даже такого простейшего XML-документа:
Код: xml
1.
2.
3.
4.
5.
6.
7.
<doc>
    <e1>1</e1>
    <e2>2</e2>
    <e3>3</e3>
    <e4>4</e4>
    ...
</doc>


?
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432505
Battledwarf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Feofilakt ,
пример XML-документа, который Вы привели, показывает, что Вам нужен XML с неизвестным заранее составом элементов.
Такой документ нельзя назвать "простейшим".
Если нужен такой, и только такой документ, то XML-схемы вам не нужны. Но это только для Вас.
Другие люди похожие задачи решают, изменяя подход к проектированию структуры XML-документов. Вполне возможно, что с новым подходом потребуется использование XML-схем.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432588
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Battledwarf,
но ведь состав элементов описывается очевидным формальным правилом ( <element name="e+i" type="xsd:integer" maxOccurs="unbounded"/> ), тем не менее, возможности XML-схем не позволяют определять такие правила. Почему технологию XSD не сделали более универсальной?
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432626
Battledwarf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Feofilakt,
операция слияния строк, которую Вы так лихо представили плюсиком и символом "i", не очевидна и не формальна.
определяйте итератор в отдельном атрибуте, и будет Вам счастье.
А с вопросами типа Feofilakt"Почему технологию XSD не сделали более универсальной?" вам не сюда, а на http://www.w3.org/
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432677
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Feofilakt но ведь состав элементов описывается очевидным формальным правилом Имя элемента формальными правилами не описывается. Это константа, от которой пляшет весь принцип определения содержимого элемента.

Feofilakt зачем нужны XML-схемыС помощью схемы можно описать язык разметки, воткнуть ее в студию, и студия будет поддерживать синтаксис (структуру) этого языка, как xsl/xsd, например. Хотя поддержка конкретно этих языков встроена, а не по схемам.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432788
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BattledwarfFeofilakt,
операция слияния строк, которую Вы так лихо представили плюсиком и символом "i", не очевидна и не формальна.
определяйте итератор в отдельном атрибуте, и будет Вам счастье.
Ну хорошо, может моя запись операции и не формальна, но XML-то получается очевиднейший! И для не подготовленного в вопросе возможностей XML-схем человека он будет гораздо проще, чем
Код: xml
1.
2.
3.
4.
5.
6.
7.
<doc>
    <e i="1">1</e>
    <e i="2">2</e>
    <e i="3">3</e>
    <e i="4">4</e>
    ...
</doc>


AntonariyИмя элемента формальными правилами не описывается. Это константа, от которой пляшет весь принцип определения содержимого элемента.
Так XML в каком стиле лучше писать, чтобы обязательно имя константным было и XSD работало, или произвольно?
Тем более, ведь полно документов вида
Код: xml
1.
2.
3.
4.
5.
6.
<doc>
    <Ivanov>20</Ivanov>
    <Petrov>30</Petrov>
    <Sidorov>40</Sidorov>
    ...
</doc>


Как с ними быть?
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432819
Battledwarf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Feofilakt,
"неподготовленным в вопросе возможностей XML-схем" нужно подготовиться перед использованием XML. Фраза очевидная, однако, требует осмысления. Катание на велосипеде тоже очевидно, однако, требует подготовки.

FeofilaktТак XML в каком стиле лучше писать, чтобы обязательно имя константным было и XSD работало, или произвольно?
Ни в каком. Вообще не пишите таких XML.

И не показывайте XML неподготовленным пользователям. Не поймут.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432836
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FeofilaktТак XML в каком стиле лучше писать, чтобы обязательно имя константным было и XSD работало, или произвольно?Проверять документы, подчиняющиеся правилам, которые не поддерживаются xsd, нужно с помощью других инструментов, например xsl.
Сам решай, что тебе будет лучше.
FeofilaktКак с ними быть?xs:any
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432851
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FeofilaktТем более, ведь полно документов видаТак их и делали неподготовленные люди, не задумывавшиеся о проверке этих документов схемой.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38432981
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Миллион людей XML-документов не может быть ошибкой! :)
А если серьезно, то нет никаких предупреждений о том, что с помощью XML-схемы нельзя описать любой шаблон XML-документа, что влечет два подхода к написанию XML: использовать имена элементов для хранения данных или категорически так не делать.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38433435
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FeofilaktXML-схемы не нужны!

Я тебе больше скажу: XML не нужен!

Формат громоздкий, в файле в основном хранится разметка, а не данные, парсить этот формат очень сложно, доступ к произвольному узлу невозможен, изменить произвольный узел прямо в файле невозможно, и т. д., и т. п.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434354
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
petalvikЯ тебе больше скажу: XML не нужен!

Формат громоздкий, в файле в основном хранится разметка, а не данные, парсить этот формат очень сложно, доступ к произвольному узлу невозможен, изменить произвольный узел прямо в файле невозможно, и т. д., и т. п.

Не пойму, это было сказано с сарказмом или нет, потому что хоть XML и мэйнстрим, но на самом деле всем этим недостаткам можно противопоставить только одно достоинство XML - легкость чтения человеком. Как-то неубедительно, один плюс против стольких минусов.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434386
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FeofilaktНе пойму, это было сказано с сарказмом или нет, потому что хоть XML и мэйнстрим, но на самом деле всем этим недостаткам можно противопоставить только одно достоинство XML - легкость чтения человеком. Как-то неубедительно, один плюс против стольких минусов.

Я на самом деле считаю, что широкое применение xml - ошибка.
Легкость чтения - это представление . А оно, как известно, должно быть отделено от данных . Данные нужно хранить в компактном виде, чтобы и на носителе место мало занимали, и по сети быстро передавались. Также формат данных должен легко парситься (xml этом не удволетворяет).
А человекочитаемость обеспечивается элементарно: быстро читаем малый объём данных, легко парсим, и показываем человеку в любом удобном виде, будь то таблица, диаграмма, или тот же xml.
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434390
LEgrandes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
НА Joomla так же можно сделать ?
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434391
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но XML везде! И со временем только все больше распространяется
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434411
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FeofilaktТак XML в каком стиле лучше писать, чтобы обязательно имя константным было и XSD работало, или произвольно?
Тем более, ведь полно документов вида
Код: xml
1.
2.
3.
4.
5.
6.
<doc>
    <Ivanov>20</Ivanov>
    <Petrov>30</Petrov>
    <Sidorov>40</Sidorov>
    ...
</doc>


Как с ними быть?
Плохо составлен документ, для хранения в XML. У вас набор однотипных по значению узлов, где каждый узел имеет другое имя. Сделайте однотипные узлы с одинаковыми именами, а фамилии сделайте содержимым узлов или атрибутами. Например:
Код: xml
1.
2.
3.
4.
5.
<doc>
    <person name="Ivanov" age="20" />
    <person name="Petrov" age="30" />
    <person name="Sidorov" age="40" />
</doc>



Или:
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<doc>
    <person>
       <name>Ivanov</name>
       <age>20</age>
   </person>
    <person>
      <name>Petrov</name>
      <age>30</age>
    </person>
    ...
</doc>
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434413
s62
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и будет вам счастье
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434495
Feofilakt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
s62Плохо составлен документ, для хранения в XML. У вас набор однотипных по значению узлов, где каждый узел имеет другое имя.
А где-нибудь закреплены или хотя бы просто описаны правила, что документы так составлять плохо, и как это делать хорошо?
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434594
nscl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
FeofilaktТем более, ведь полно документов вида
Код: xml
1.
2.
3.
4.
5.
<doc>
    <Ivanov>20</Ivanov>
    <Petrov>30</Petrov>
    <Sidorov>40</Sidorov>
    ...</doc>

Как с ними быть?
Это кто такой адЪ генерит ? Расстрелять немедленно. Из реактивного говномёта.
Имена контор/программ/программистов, кто такое ваяет.

s62 написал, как надо сделать:
Код: xml
1.
2.
3.
4.
5.
<doc>
    <person name="Ivanov" age="20" />
    <person name="Petrov" age="30" />
    <person name="Sidorov" age="40" />
</doc>

И да, кодировка должна быть - UTF-8. И DTD в начале должен быть указан, чтобы можно было легко парсить и проверять документ.

Прочитать надо для начала вот это:
http://ru.wikipedia.org/wiki/XML
http://ru.wikipedia.org/wiki/DTD
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434927
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FeofilaktА где-нибудь закреплены или хотя бы просто описаны правила, что документы так составлять плохо, и как это делать хорошо?

Можно обратить внимание сюда .
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434934
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nsclDTD

DTD можно использовать только если есть уверенность в безопасности приходящих xml. Если они поступают извне, из недоверенного источника, то лучше запретить dtd (в современных xml-парсерах такое поведение по-умолчанию).
...
Рейтинг: 0 / 0
XML-схемы не нужны!
    #38434982
valkot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nsclИ да, кодировка должна быть - UTF-8.

не правда. Стандарт такого ни разу не требует.
И DTD в начале должен быть указан, чтобы можно было легко парсить и проверять документ.

и это тоже неправда. Во-первых потому что валидация нужна только если вам надо т.н. validated документ, но есть еще и well formed, такой же разрешенный в стандарте, он ддт не требует, потому как не требует валидации. Во-вторых, есть Xsd.
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / XML-схемы не нужны!
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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