Във всички браузъри има едно нещо наречено parser.Този parser помага на браузъра да отвори XML файла.Разчита смволи като "<" и казва на браузъра, че там има начало на таг.Този parser сканира всичко и навсякаде.Всичко между елемнтите се проверява от него.Например ако напишете подобен ред:
CODE1
| <name><first>Иван</first><last>Иванов</last></name> |
XML parsera ще го направи по този начин:
CODE1
2
3
4
| <name>
<first>Иван</first>
<last>Иванов</last>
</name> |
Или ако сложите знак по-голямо между XML елемнти както например тук:
CODE1
| <message>Ако 500 < 1000 тогава...</message> |
parsera ще зачете това за грешка, защо си мисли, че там започва нов таг.Трябва да змените знака "<" със негов синоним:
CODE1
| <message>Ако 500 < 1000 тогсва...</message> |
Подобни синоними в XML са 5.Те са:
< <
> >
& &
' '
" "
Само знаците "<" и"&" се зачитат като грешка.Но е препоръчително да използвате синоними и на останалите.Има начин да пренебрегнете този parser.Това става с помоща на тага CDATA.Неговият синтаксис е малко по-особен.Започва с "<[CDATA[" и завършва с "]]>".Но всичко което се намира между тези два символа не се сканира от parsera.Погледнете долния пример:
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| <script>
</script> |
Това е един скрипт.Виждате колко знаци има, които ще се зачеат като грешни от parsera ако го нямаше CDATA тага.