Гость
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Правила XML / 25 сообщений из 27, страница 1 из 2
04.04.2013, 00:16
    #38212022
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
Доброе время суток

У меня есть идея создать супер парсер
И я сейчас собираю информацию, проектирую, обдумываю

К слову у меня уже есть опыт написания XML-парсера. Но он был достаточно простой, не воспринимал CDATA, не придерживался строгих правил XML и одинаково годно использовался для парсинга HTML.
Сейчас я хочу восполнить безграмотность, и так как я не нашёл адекватного описания правил в одном месте, я решил обратиться сюда
Думаю профессионалам ответить на мои вопросы будет очень просто
Пока эти 10:

1) имеем допустим объявление <?xml version="1.1" ?> и нет BOM
какая кодировка должна использоваться в таком случае?
UTF-8 или дефолтная на машине (например windows-1251) ?
какая кодировка, если вообще нет xml-объявления ?

2) processing instruction типа <?xml-stylesheet href="my-style.css"?>
она одна во всём документе или их может встречаться несколько ?
она обязана идти сразу после xml-объявления или может быть в любом месте xml ?

3) допускается ли хотя бы один из таких видов узлов: <node >, < node>
и какие символы можно использовать для наименования ?

4) возможен ли один из таких закрывающихся тегов: </ node>, < /node>, </node >, </node at="v">

5) можно ли таким образом объявить открывающиеся-закрывающиеся узлы: <node />, <node / >, <node/ >
и вообще допускается ли такая запись: <node/>

6) можно ли так объявлять атрибуты: <node at="v">, <node at ="v">, <node at= "v">, <node at="v" > или разные кавычки: <node at='v">
и вообще какие символы допускаются в имени атрибута
между атрибутами можно ли использовать другие символы кроме пробела, например табуляцию

7) значение узла пустое или содержит несколько строк, разделённых \n ?
<node>

</node>
какие символы допустимы в значении узла ?

8) может ли в XML-документе встретиться символ с кодом 0

9) обе ли hex-записи допустимы: ® и ®
кстати &192; - это номер в Unicode кодировке или может например подразумеваться 'А' в windows-1251 ?

10) есть ли иные спецсимволы кроме < > & ' "
например   или ≤

Спасибо
...
Рейтинг: 0 / 0
04.04.2013, 00:19
    #38212025
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
:)

9) обе ли hex-записи допустимы: #ae; и #xAE;
кстати &192; - это номер в Unicode кодировке или может например подразумеваться 'А' в windows-1251 ?

10) есть ли иные спецсимволы кроме lt; gt; amp; apos; quot;
например nbsp; le;
...
Рейтинг: 0 / 0
04.04.2013, 01:13
    #38212048
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
Здесь ответы на все Ваши вопросы
...
Рейтинг: 0 / 0
04.04.2013, 01:21
    #38212053
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
SOFT FOR YOU,

1. UTF-8
2. Инструкций может быть сколько угодно и допускается их использование не только в прологе.
3. Нет.
4. Нет.
5. <node/> точно допустим. Это эквивалент <node></node>
6. Насчет разных кавычек не ясно. Остальное есть в спецификации.
7. Собирался ответить пустое, но нашел в спецификации следующий текст "An XML processor MUST always pass all characters in a document that are not markup through to the application". Так что ответ - не пустое.
8. Нет.
9. &#DD - десятичная запись, &#xDD - шестнадцатеричная.
10. Нет.

Все это описано в официальной рекомендации XML .
...
Рейтинг: 0 / 0
04.04.2013, 10:16
    #38212310
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
_Vasilisk_ и особенно bazile
Спасибо!
я даже лучше нашёл: http://citforum.ru/internet/xmlspec/xmlspec.shtml

но мне тяжело даются официальные документы
мне проще на пальцах

не понятно на счёт символов
Диапазон символов
Char ::= #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF]

Пробельный символ
S ::= (#x20 | #x9 | #xD | #xA)+
если в значении узла или атрибута встретится символ с кодом например #8
то он будет пробельным, обычным или это будет ошибкой ?

про HEX я спрашивал, есть ли разница между #xae; и #xAE;
...
Рейтинг: 0 / 0
04.04.2013, 10:35
    #38212342
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
SOFT FOR YOUУ меня есть идея создать супер парсерОпять??
SOFT FOR YOUесли в значении узла или атрибута встретится символ с кодом например #8Это бэкспейс, сам подумай. Прочитай еще этот документ .
SOFT FOR YOUпро HEX я спрашивал, есть ли разница между #xae; и #xAE;Ты собрался писать супер-парсер, не зная азбуки? Мало того, даже не видя ответов в собственных вопросах. Как ты думаешь, сколько символов (r) ты бы увидел, если бы была разница?
...
Рейтинг: 0 / 0
04.04.2013, 10:41
    #38212355
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
AntonariyОпять??
снова

AntonariyЭто бэкспейс, сам подумай. Прочитай еще этот документ.
я тебе привёл цитату из спецификации XML
нафига ты мне ASCII суёшь ?

AntonariyТы собрался писать супер-парсер, не зная азбуки? Мало того, даже не видя ответов в собственных вопросах. Как ты думаешь, сколько символов (r) ты бы увидел, если бы была разница?
ты не путай XML и HTML
ужаснись, что ещё можно написать в HTML, что не сработает в XML: http://orlenok4.narod.ru/html.html
...
Рейтинг: 0 / 0
04.04.2013, 11:00
    #38212395
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
SOFT FOR YOUя даже лучше нашёл: http://citforum.ru/internet/xmlspec/xmlspec.shtml] http://citforum.ru/internet/xmlspec/xmlspec.shtml
Обрати внимание что это перевод второй редакции. На сайте w3 пятая редакция уже. Так что между документами могут быть отличия.

SOFT FOR YOUно мне тяжело даются официальные документы
мне проще на пальцах
В данном случае без чтения спецификации никак не обойтись.

SOFT FOR YOUесли в значении узла или атрибута встретится символ с кодом например #8
то он будет пробельным, обычным или это будет ошибкой ?
Ошибкой.

SOFT FOR YOUпро HEX я спрашивал, есть ли разница между #xae; и #xAE;
Нет. Можно даже #Ae или #aE написать :)

SOFT FOR YOUя тебе привёл цитату из спецификации XML
нафига ты мне ASCII суёшь ?
Antonariy "сует" тебе ASCII т.к. первые 128 символов из кодировки UTF-8 совпадают с ASCII.
...
Рейтинг: 0 / 0
04.04.2013, 11:05
    #38212410
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
bazile

спасибо

bazileAntonariy "сует" тебе ASCII т.к. первые 128 символов из кодировки UTF-8 совпадают с ASCII.
я знаю
просто к вопросу "пробельных символов" XML это не имеет никакого отношения
...
Рейтинг: 0 / 0
04.04.2013, 11:33
    #38212473
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
bazile7. Собирался ответить пустое, но нашел в спецификации следующий текст "An XML processor MUST always pass all characters in a document that are not markup through to the application". Так что ответ - не пустое.

вот нашёл пункт 2.11 и не понимаю, что имеется ввиду
оригинал2.11 End-of-Line Handling

XML parsed entities are often stored in computer files which, for editing convenience, are organized into lines. These lines are typically separated by some combination of the characters CARRIAGE RETURN (#xD) and LINE FEED (#xA).

To simplify the tasks of applications, the XML processor must behave as if it normalized all line breaks in external parsed entities (including the document entity) on input, before parsing, by translating both the two-character sequence #xD #xA and any #xD that is not followed by #xA to a single #xA character.

перевод2.11 Обработка концов строк

Часто разобранные сущности XML, помещенные в компьютерные файлы, для удобства редактирования представляются в виде набора строк. В качестве разделителя для таких строк обычно используется некая комбинация символов возврата каретки (#xD) и конца строки (#xA).

Чтобы облегчить работу приложений, текст, который им передает XML процессор, должен быть таким, как если бы этот процессор при выводе перед обработкой нормализовал все концы строк во внешних разобранных сущностях (а также сущности самого документа). Осуществляться это должно путем замены последовательности из двух символов #xD #xA (а также одиночного #xD, за которым не следует #xA) одним символом #xA.

если я правильно понял - подразумевается как раз node.value
или attribute.value тоже имеется ввиду ?
...
Рейтинг: 0 / 0
04.04.2013, 11:46
    #38212498
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
Имеются ввиду переносы между тегами и внутри тегов между атрибутами.
...
Рейтинг: 0 / 0
04.04.2013, 11:55
    #38212517
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
ну я тебе про то и говорю
bazile подтверждает
#8 в XML - это ошибка
...
Рейтинг: 0 / 0
04.04.2013, 11:56
    #38212522
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
или ты про 2.11 ?
тогда ты вообще не то пишешь
...
Рейтинг: 0 / 0
04.04.2013, 12:45
    #38212665
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
прочитал спецификацию,
что то не нашёл адекватных ответов на 3-9
сейчас буду мучить блокнот и IE

если есть что добавить - милости прошу
...
Рейтинг: 0 / 0
04.04.2013, 13:45
    #38212816
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
bazile, твои ответы признаны неадекватными
...
Рейтинг: 0 / 0
04.04.2013, 14:14
    #38212886
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
очевидно я про спецификацию, а не про bazile
...
Рейтинг: 0 / 0
04.04.2013, 14:23
    #38212901
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
очевидно, тебя не удовлетворили ответы базиля, раз ты полез за ними в спецификацию. да еще и добавки попросил.

сложно тебе угодить :)
...
Рейтинг: 0 / 0
04.04.2013, 14:49
    #38212951
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
насколько я понял запись "<node >" допустима
...
Рейтинг: 0 / 0
04.04.2013, 14:51
    #38212960
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
Если она закрыта </node>, то да.
...
Рейтинг: 0 / 0
04.04.2013, 15:15
    #38213016
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
я опробовал один чекер
результаты такие
если не согласны - говорите, проверим на других чекерах
удивил node20
аналогично хорошо читается и обратный случай кавычек

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
<?xml version="1.0"?> 
<?xml version="1.0"   ?> 
<?xml version="1.0"   ? > fail
< ?xml version="1.0"?>  fail
<head>
    <node1 > </node1>  
    < node2> </node2> fail
  
    <node3>  </ node3> fail
    <node4>  < /node4> fail
    <node5>  </node5   >
    <node6>  </node6 at="v"> fail

    <node7 />
    <node8 / > fail
    <node9/ > fail
    <node10/>

    <node11 at="v">  </node11>
	<node12 at ="v"> </node12>
	<node13 at= "v"> </node13>
	<node14 at="v" > </node14>
	<node15 at="v"	at2="v"> </node15>
	<node16 at="v"  at2="v"> </node16>
	<node17 at="v"
	at2="v"> </node17>
	<node18 at='v"> </node18> fail
	<node19 at="v'> </node19> fail
    <node20 at='v "d  '> </node20>

	<node21 at="v"/>
	<node22 at="v"/ > fail
	<node23 at="v" />
	<node24 at="v" / > fail
	<node25 at="v
	
	wdaw
	
	" />
</head>
...
Рейтинг: 0 / 0
04.04.2013, 15:22
    #38213037
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
Вдогонку:
Код: xml
1.
<node26.node27></node26.node27> не фейл
...
Рейтинг: 0 / 0
04.04.2013, 15:31
    #38213059
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
а что по твоему необычного в написании точки в имени ?
...
Рейтинг: 0 / 0
04.04.2013, 15:33
    #38213065
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
а что по-твоему необычного в node20?
...
Рейтинг: 0 / 0
04.04.2013, 16:01
    #38213144
SOFT FOR YOU
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
использование кавычки внутри атрибута
...
Рейтинг: 0 / 0
05.04.2013, 07:28
    #38213834
mhx
mhx
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Правила XML
Это не атрибут, а значение атрибута
Одинарные кавычки могут быть полезны в тех случаях, когда значения атрибутов сами содержат двойные кавычки.

18, 19 — вообще бред
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Правила XML / 25 сообщений из 27, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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