Jump to content

XML-бинарная оптимизированная упаковка

XML-двоичная оптимизированная упаковка (XOP) — это механизм, определенный для сериализации наборов информации XML ( информационных наборов ), содержащих двоичные данные, а также десериализации обратно в набор информации XML.

Преимущества

[ редактировать ]

XOP позволяет сериализовать часть двоичных данных информационного набора XML без использования сериализатора XML. Сериализация XML-информационного набора XML основана на тексте, поэтому любые двоичные данные необходимо кодировать с использованием base64 . Использование XOP позволяет избежать этого, извлекая двоичные данные из информационного набора XML, чтобы информационный набор XML не содержал двоичных данных и двоичные данные можно было сериализовать по-другому.

Таким образом, XOP может уменьшить размер сериализации (поскольку кодирование base64 имеет около 33% накладных расходов на размер) и (в зависимости от того, как оно реализовано) может обеспечить эффективность обработки. Такое увеличение размера приводит к необходимости использования дополнительных ресурсов для передачи или хранения данных.

XOP представляет другой уровень обработки. Следовательно, это вносит дополнительную сложность и накладные расходы на обработку.

Представление пакетов XOP вносит некоторые накладные расходы. Они незначительны, когда двоичные данные велики, но могут быть значительными, если двоичные данные малы.

Операция

[ редактировать ]

XOP работает с одним информационным набором XML.

Двоичные части исходного информационного набора XML извлекаются, оставляя «информационный набор XOP» (который по сути представляет собой исходный информационный набор XML, в котором двоичные части заменены внешними ссылками). Ссылки в информационном наборе XOP представлены с помощью элемента «xop:Include». Информационный набор XOP плюс извлеченный контент можно сериализовать в представление, называемое «Пакет XOP». Пакет XOP можно отправить или сохранить.

Чтобы воссоздать информационный набор XML, пакет XOP десериализуется в информационный набор XOP плюс извлеченное содержимое, а затем извлеченное содержимое помещается обратно в информационный набор XML.

XOP-пакеты

[ редактировать ]

XOP можно использовать с множеством различных механизмов упаковки. Механизм упаковки определяет, как представляются информационный набор XOP и двоичные фрагменты.

Спецификация XOP определяет, как MIME может использоваться в качестве механизма упаковки. При использовании с MIME информационный набор XOP представлен в виде XML в корневой части MIME, а двоичные фрагменты представлены в других частях MIME. Эти другие части MIME можно сериализовать как двоичные данные, что позволяет избежать необходимости кодировать их в base64, если они остались внутри информационного набора XML.

XOP не требует использования механизма упаковки MIME, поэтому можно использовать другие механизмы упаковки.

Использование в веб-службах SOAP

[ редактировать ]

Механизм упаковки MIME является наиболее широко используемым, поскольку XOP обычно используется для представления SOAP сообщений с помощью MTOM .

Например:

MIME-Version: 1.0
Content-Type: Multipart/Related;boundary=MIME_boundary;
...
--MIME_boundary
Content-Type: application/xop+xml;
...
<soap:Envelope> ...
 <soap:Body> ...
     <m:photo xmlmime:contentType="image/png">
       <xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" 
          href="cid:http://example.org/me.png"/></m:photo>
...
--MIME_boundary
Content-Type: image/png
Content-Transfer-Encoding: binary
Content-ID: <http://example.org/me.png>
// binary octets for png

См. также

[ редактировать ]
  • MTOM (Механизм оптимизации передачи сообщений)
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: fa94252ce374669f9682218a0589126c__1589212980
URL1:https://arc.ask3.ru/arc/aa/fa/6c/fa94252ce374669f9682218a0589126c.html
Заголовок, (Title) документа по адресу, URL1:
XML-binary Optimized Packaging - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)