Difference between revisions of "XML stream"
m (Консоль XML) |
(→Спецификация: опечатка) |
||
Line 11: | Line 11: | ||
Закрытие элемента <code><stream/></code> однозначно сигнализирует о закрытии XML-потока. | Закрытие элемента <code><stream/></code> однозначно сигнализирует о закрытии XML-потока. | ||
− | Чтобы просматривать XML- | + | Чтобы просматривать XML-поток в xmpp-клиенте (обычно в целях отладки и поиска неисправностей) используется [[консоль XML]]. |
== Особенности работы == | == Особенности работы == |
Revision as of 15:51, 23 April 2011
ЯВики используйте название
XML-поток
На других ресурсах
можно также давать ссылку
http://jawiki.ru/XML_stream
Способ обмена данными между двумя сущностями по протоколу XMPP. Представляет собой нечто вроде незаконченного XML-документа, в который по мере обмена данными дописываются стансы.
Спецификация
Понятие «XML-поток» описано в Основах XMPP.
XML-поток состоит из корневого элемента <stream/>
и его дочерних элементов (в том числе стансов).
Количество стансов в потоке не ограничено.
Закрытие элемента <stream/>
однозначно сигнализирует о закрытии XML-потока.
Чтобы просматривать XML-поток в xmpp-клиенте (обычно в целях отладки и поиска неисправностей) используется консоль XML.
Особенности работы
Не всякий XML-парсер (программное средство для работы с данными в XML) пригоден для работы с XML-потоками. Во-первых, незакрытый поток не является правильным (валидным) XML-документом. Во-вторых, в отличие от работы с XML-документом, нет необходимости держать в памяти узлы (стансы), пришедшие ранее — они уже обработаны.
Таким образом, для работы с XML-потоками больше подходят так называемые событийные XML-парсеры. Они собирают данные из входного потока, и сигнализируют всякий раз, когда набирается завершенный элемент — станс.