RPC проти документа
RPC та стиль документа Опис веб-служб Мова - два найпоширеніші терміни стосовно посилань на веб-сервіси та протокол SOAP. Веб-сервіси часто описуються за допомогою документів мови опису веб-служб (WSDL). WSDL окреслює підтримувані операції та повідомлення веб-служб та прив'язує їх до конкретного мережевого протоколу та формату повідомлень. Абстрактні визначення визначаються за допомогою елементів "type", "message" та "portType". Конкретні характеристики описуються за допомогою елементів "прив'язки" та "обслуговування". Кожен з цих елементів розміщується всередині елемента "визначення".
RPC і стиль документа відрізняються за стилями прив’язки, які також називаються стилями прив'язки SOAP. WSDL визначає стиль прив'язки як RPC або документ залежно від навантаження SOAP або структури вмісту елемента. Стиль документа - це завжди вибір за замовчуванням, оскільки повідомлення SOAP надсилається як один "документ" в елементі. Елемент стилю RPC повинен відповідати правилам, описаним у специфікації SOAP. Згідно з правилами, може складатися лише з одного елемента, який названий після операції, а параметри інтерпретуються як піделементи головного елемента. І RPC, і стилі документів є прийнятими версіями більшості клієнтів SOAP; однак використання одного над іншим є головним чином особистим вибором.
Атрибут використання також допомагає розрізняти стилі RPC та документів. Атрибут use описує, як обидва стилі представлені в XML. Атрибут use описує, чи кодовані частини повідомлення чи повідомлення відповідає визначенню схеми XML. На основі варіантів існують чотири можливі комбінації стилів RPC та документа; а саме RPC / закодований, RPC буквальний, Document / Encoded або Document / Literal. Не всі чотири комбінації використовуються, і перевага однієї комбінації над іншою викликає більше особистий інтерес.
Основна відмінність стилів документ від RPC полягає в тому, що в стилі документа клієнт завжди надсилає сервісні параметри серверу у простому форматі документа XML, а не дискретному наборі значень параметрів. Стиль документа слабко поєднаний у порівнянні зі стилем RPC.
У стилі «Документ / Буквал» повідомлення завжди можна перевірити за допомогою будь-якого валідатора XML. Вміст всередині тіла SOAP чітко визначений у схемі. У стилі RPC / буквальний, передані дані важко перевірити повідомленням SOAP. Стиль Документ / Літерал втрачає ім'я операції у повідомленні SOAP, тоді як у стилі RPC / Буквал ім'я операції все ще існує у повідомленні SOAP. з чотирьох різних комбінацій стилями, які широко використовуються, є RPC / literal та Document / Literal.
Підсумок:
1. У стилі документа повідомлення SOAP надсилається як єдиний документ, тоді як у
RPC стиль, корпус SOAP може містити кілька елементів.
2. Стиль документа вільно поєднаний, тоді як RPC щільно пов'язаний.
3. У стилі документа клієнт надсилає сервісні параметри у простому форматі XML
тоді як у стилі RPC параметри надсилаються як дискретні значення.
4. Стиль Документ / Літерал втрачає ім'я операції в повідомленні SOAP, тоді як
стиль RPC / буквальний зберігає ім'я операції у повідомленні SOAP.
5. У стилі «Документ / Літерал» повідомлення завжди можна перевірити, використовуючи будь-який XML
валідатор, тоді як у стилі RPC / буквальний, передані дані важко перевірити
повідомлення SOAP.