Difference between revisions of "XML stream"

From JaWiki (Jabber/XMPP wiki)
Jump to: navigation, search
(накропал статейку)
 
m (поправочка)
Line 6: Line 6:
 
Понятие "XML-поток" описано в [[Основы XMPP#XML потоки|Основах XMPP]].
 
Понятие "XML-поток" описано в [[Основы XMPP#XML потоки|Основах XMPP]].
  
XML-поток состоит из корневого элемента <tt>&lt;stream/&gt;</tt> и его дочерних элементов - [[станс]].  
+
XML-поток состоит из корневого элемента <tt>&lt;stream/&gt;</tt> и его дочерних элементов (в том числе [[станс]]).
 
Количество станс в потоке не ограничено.
 
Количество станс в потоке не ограничено.
 
Закрытие элемента <tt>&lt;stream/&gt;</tt> однозначно сигнализирует о закрытии XML-потока.
 
Закрытие элемента <tt>&lt;stream/&gt;</tt> однозначно сигнализирует о закрытии XML-потока.

Revision as of 21:36, 18 August 2009

В соответствии с принятыми в данной вики договорённостями, правильное название этой статьи — XML-поток.
Для ссылок сюда с других страниц
ЯВики используйте название
XML-поток
На других ресурсах
можно также давать ссылку
http://jawiki.ru/XML_stream

Способ обмена данными между двумя сущностями по протоколу XMPP. Представляет собой нечто вроде незаконченного XML документа, в который по мере обмена данными дописываются стансы.

Спецификация

Понятие "XML-поток" описано в Основах XMPP.

XML-поток состоит из корневого элемента <stream/> и его дочерних элементов (в том числе станс). Количество станс в потоке не ограничено. Закрытие элемента <stream/> однозначно сигнализирует о закрытии XML-потока.

Особенности работы

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

Таким образом, для работы с XML-потоками больше подходят так называемые событийные XML-парсеры. Они собирают данные из входного потока, и сигнализируют всякий раз, когда набирается завершенный элемент - станс.

ToDo: примеры событийных XML-парсеров

См. также