Протоколы Internet


Открытый торговый протокол Интернет– IOTP версия 0 - часть 162


******************************************* -->

<!ELEMENT Signature (Manifest, Value+) >

<!ATTLIST Signature ID ID #IMPLIED>

<!ELEMENT Manifest ( Algorithm+,

Digest+,

Attribute*,

OriginatorInfo,

RecipientInfo+ )>

<!ATTLIST Manifest LocatorHRefBase CDATA #IMPLIED>

<!ELEMENT Algorithm (Parameter*)>

<!ATTLIST Algorithm ID ID #REQUIRED

>type (digest|signature) #IMPLIEDname NMTOKEN #REQUIRED>

<!ELEMENT Digest (Locator, Value)>

<!ATTLIST Digest DigestAlgorithmRef IDREF #REQUIRED>

<!ELEMENT Attribute ( ANY ) >

<!ATTLIST Attribute type NMTOKEN #REQUIRED

>critical ( true | false ) #REQUIRED>

<!ELEMENT OriginatorInfo ANY >

<!ATTLIST OriginatorInfo OriginatorRef NMTOKEN #IMPLIED>

<!ELEMENT RecipientInfo ANY >

<!ATTLIST RecipientInfo SignatureAlgorithmRef IDREF #REQUIRED

SignatureValueRef IDREF #IMPLIEDSignatureCertRef IDREF #IMPLIED

RecipientRefs NMTOKENS #IMPLIED>

<!ELEMENT KeyIdentifier EMPTY>

<!ATTLIST KeyIdentifier value CDATA #REQUIRED>

<!ELEMENT Parameter ANY >

<!ATTLIST Parameter type CDATA #REQUIRED>

><!--

*******************************************

* Определение компонента сертификата IOTP *

******************************************* -->

<!ELEMENT Certificate ( IssuerAndSerialNumber, ( Value | Locator ) )>

<!ATTLIST Certificate ID ID #IMPLIEDtype NMTOKEN #REQUIRED>

<!ELEMENT IssuerAndSerialNumber EMPTY >

<!ATTLIST IssuerAndSerialNumber issuer CDATA #REQUIRED number CDATA

#REQUIRED>
<!--

**************************************

* Определение компонента SHARED IOTP *

************************************** -->

<!ELEMENT Value ( #PCDATA )>

<!ATTLIST Value ID ID #IMPLIED encoding (base64|none) 'base64'>

<!ELEMENT Locator EMPTY>

<!ATTLIST Locator xml:link CDATA #FIXED 'simple' href CDATA #REQUIRED>

14. Словарь

В этом разделе содержится словарь некоторых терминов, используемых в данной спецификации.

Имя

Описание

Аутентификатор

Организация, которая запрашивает аутентификацию другой организации

Аутентифицируемый

Организация, которая осуществляет аутентификацию у аутентификатора

Рабочая ошибка (Business Error)

Смотри компонент Status.

Вид платежа (Brand)

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

о   частные и корпоративные виды платежей, например MasterCard, Visa, American Express, Diners Club, American Express, Mondex, GeldKarte, CyberCash, и т.д.. вльготные виды платежа (смотри ниже). Последние включают в себя:

o   магазинные виды платежа, где платежный инструмент предоставляется покупателю конкретным продавцом, например Walmart, Sears или Marks and Spencer (UK)

o   комбинированные виды платежа, например American Advantage Visa, где компания использует свою собственную системы о   платы, которая совмещается с каким-то корпоративным видом платежей.

Покупатель

Организация, которая обычно платит за товары или услуги.

ContentSoftwareId

Содержит информацию, которая идентифицирует программу, генерирующую содержимое элемента. Ее целью является помощь в разрешении проблем совместимости, которые могут возникнуть в результате несоответствия между сообщениями, выработанными различными программами. Это текстовая строка на языке, определенном xml:lang. Этот идентификатор должен содержать как минимум:

  • наименования разработчика программы
  • название программы
  • версию программы и
  • структуру программы
  • Рекомендуется, чтобы этот атрибут включался всякий раз, когда программа, которая сформировала содержимое, не может быть идентифицирована атрибутом SoftwareID Id-компонента сообщения (смотри раздел 3.3.2)

    Агент обслуживания

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

    Агент доставки

    Организация, которая непосредственно доставляет товары или услуги покупателю от имени продавца. Доставка может иметь цифровую форму (напр., в виде сообщений [MIME]), или физическую форму с привлечением почты или курьеров.

    Документальный обмен

    Документальный обмен состоит из последовательности сообщений, которыми обмениваются партнеры в рамках одного или двух торговых операций одновременно. Документальные обмены могут комбинироваться, образуя конкретную транзакцию IOTP.

    Двойственный вид платежа (Dual Brand)

    Двойственный вид платежа означает, что один платежный инструмент может использоваться так, как будто имеются два независимых вида платежа. Например, японская карта "UC" MasterCard может быть использована как UC-карта или как обычная MasterCard. Платежи с помощью UC-карты и MasterCard могут иметь разных Кассиров. Это означает, что:

    o   Продавец рассматривает, например "UC" и "MasterCard" как два независимых вида платежа, когда предлагает Покупателю список видов платежей, Покупатель выбирает вид платежа, например "UC" или "MasterCard,

    o   Приложение IOTP Покупателя определяет, какой платежный инструмент подходит для выбранного вида платежа, и делает свой выбор.

    Блок Error

    Блок Error сообщает, что в полученном сообщении IOTP обнаружена техническая ошибка. Обычно технические ошибки вызываются ошибками в XML или сбоями в процессе обработки сообщения. Часто генерация или получение блока Error вызывает прерывание транзакции. Эти ошибки отличаются от рабочих ошибок (Business Error), о которых сообщается в компонентах Status. Последние ошибки также могут привести к срыву выполнения транзакции.

    Блок Exchange

    Блок Exchange посылается при торговом обмене от одной торговой роли к другой. Он содержит один или более торговых компонентов. Блоки Exchange при торговом обмене всегда посылаются после блоков Request и до блока Response (отклика). Соджержимое блока Exchange зависит от типа торгового обмена.

    Сообщение IOTP

    Сообщение IOTP является самой внешней структурой, в которую помещаются документы, которыми обмениваются торговые роли, принимающие участие в сделке. Это хорошо сформатированный XML-документ. Документы, которые содержат сообщение, состоят из:

    o   блок ссылок транзакции, служащий для однозначной идентификации, частью которой является сообщение IOTP;

    o   опционный блок Signature, который служит для цифровой подписи торговых блоков или компонентов, связанных с транзакцией IOTP;

    o   опционный блок Error для уведомления о технических ошибках, содержащихся в предыдущем полученном сообщении IOTP и

    o   последовательность торговых блоков IOTP, которые несут данные, необходимые для выполнения транзакции.

    Транзакция IOTP

    Транзакция IOTP (Internet Open Trading Protocol) представляет собой набор IOTP-сообщений, передаваемых торговыми ролями. Правила о том, что могут содержать IOTP-сообщения, определяются типом транзакции.

    Тип транзакции IOTP

    Тип транзакции идентифицирует ее разновидность. Примерами транзакции могут служить: покупка, возврат денег, аутентификация, отзыв, депозит. Типы транзакции IOTP определяет:

    o   торговые обмены, которые могут включаться в транзакцию;

    o   то, как эти торговые обмены могут комбинироваться, чтобы обеспечить достижение цели транзакции;

    o   какие торговые блоки могут быть включены в IOTP-сообщения, образующие транзакцию.

    Продавец

    Организация, которая предоставляет товары или услуги, и получает выгоду от платежей за них

    Агент обслуживания Покупателя

    Организация, которая вовлекается в диалог с покупателем от имени продавца с целью разрешения возникающих проблем

    Организация

    Компания или частное лицо, которое принимает участие в сделке и выполняет определенную торговую роль. Организации могут выполнять и несколько торговых ролей в одной сделке

    Кассир

    Организация, которая физически получает платеж от покупателя для продавца

    Платежный инструмент

    Платежный инструмент представляет собой средство, с помощью которого покупатель платит за товары или услуги, предлагаемые продавцом. Это может быть, например:

  • кредитная карта, такая как MasterCard или Visa;
  • >

  • дебетная карта, такая как MasterCard's Maestro;
  • смарт-карта, базирующаяся на электронном платежном инструменте, таком как Mondex, GeldKarte или Visa Cash
  • электронный платежный счет, базирующийся на программе, такой как CyberCash's CyberCoin или DigiCash.
  • Все платежные инструменты имеют номер, обычно это номер счета, с помощью которого платежный инструмент может быть идентифицирован.

    Льготный вид платежа

    Льготный вид платежа предполагает, что, если покупатель воспользуется этим видом оплаты, тогда он получит дополнительную выгду, которая может быть реализована двумя путями:

  • в момент покупкиse. Например, если покупатель платит с помощью "Walmart MasterCard" на WEB-сайте Walmart, тогда он получает скидку 5%, а это означает, что покупатель в действительности заплатит меньше,
  • от эмитента платежного инструмента (карты), когда платеж появится в ведомости. Например, если сумма платежей с использованием данного платежного инструмента превысила некоторое значение.
  • В списке видов платежа, предлагаемом продавцом, каждый льготный вид должен идентифицироваться, как независимый.

    Компонент Receipt (расписка)

    Компонент Receipt является записью об успешном завершении торгового обмена. Примеры компонентов Receipt включают в себя: платежные расписки и накладные при доставке (Delivery Notes). Их содержимое зависит от технологии выполнения торгового обмена. Например, платежная расписка SET (Secure Electronic Transaction) состоит из платежных сообщений SET, которые фиксируют результат оплаты.

    Блок запроса

    Блок запроса является торговым блоком, который содержит запрос начала торгового обмена. Торговые компоненты в блоке запроса могут быть подписаны с помощью блока Signature, что позволит идентифицировать отправителя. Авторизация начала торгового обмена может быть выполнена с помощью подписей, содержащихся в компонентах Receipt, которые вложены в блоки откликов предыдущего торгового обмена. Примерами блоков запроса могут служить запросы платежа и запросы доставки

    Блок отклика

    Блок отклика является торговым блоком, который указывает, что торговый обмен завершился. Он посылается торговой ролью, которая получила блок запроса, торговой роли. Блок отклика содержит компонент Status с информацией о завершении торгового обмена, например, он указывает, завершился ли торговый обмен успешно. Для некоторых торговых обменов блок отклика содержит компонент Receipt (расписка). Компоненты Receipt могут цифровым образом подписывать сообщение с использованием блока Signature, что делает завершение торгового обмена неопровержимым. Примеры блоков отклика включают в себя отклики предложения, платежа и доставки.

    Блок подписи

    Блок подписи является торговым блоком, который содержит одну или более цифровых подписей в виде компонентов Signature. Компонент Signature может цифровым образом подписывать любой блок или компонент в любом сообщении IOTP

    Компонент Status

    Компонент Status содержит информацию, которая описывает состояние торгового обмена. До завершения торгового обмена компонент Status может указывать на то, как он проходит. Если же торговый обмен завершился, компонент Status может говорить лишь об успешном завершении или о наличии рабочей ошибки. Рабочая ошибка указывает, что продолжение торгового обмена невозможно, так как нарушено какое-то правило, например, "нет достаточных средств". При этом не предполагается каких-либо технических ошибок, связанных с содержимым или форматом IOTP-сообщения в транзакции.

    Техническая ошибка

    Смотри блок Error.

    Торговый блок

    Торговый блок состоит из одного или более торговых компронент. Один или более торговых блоков может содержаться в IOTP-сообщениях, которые пересылаются в форме XML-документов от одной торговой роли к другой. Сущетсвует три типа торговых блоков:

    o блок Request,

    o блок Exchange или

    o блок Response

    Торговый компонент

    Торговый компонент является собранием XML-элементов и атрибутов. Торговые компоненты являются дочерними элементами Торговых блоков. Примерами торговых компонентов являются: Предложение, Список видов платежей, Платежная расписка, Доставка [информации], Сумма платежа

    Торговый обмен

    Торговый обмен предполагает обмен последовательностью документов, пересылаемых между торговыми ролями. Документы могут иметь форму торговых блоков или они могут быть пересланы каким-то другим образом, например, путем ввода данных на WEB-странице. Каждый торговый обмен состоит из трех главных частей:

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

  • Примерами торговых обменов/услуг могут служить:

  • платеж, где покупатель осуществляет платеж кассиру;
  • доставка, где покупатель запрашивает, и опционно получает, товар или услугу от агента доставки;
  • аутентификация, где любая торговая роль может запросить и получить информацию о другой торговой роли;
  • предложение, которое получает покупатель от продавца, имеет целью предложить какую-то торговую сделку (транзакцию).
  • Торговая роль

    Торговая роль идентифицирует различные способы, которыми организации могут участвовать в сделке. Существует пять торговых ролей: Покупатель, Продавец, Кассир, Агент доставки и Агент обслуживания покупателя.

    Блок ссылок транзакции

    Блок ссылок транзакции идентифицирует транзакцию IOTP. Он содержит данные, которые идентифицируют:

  • тип транзакции;
  • транзакцию IOTP, снабжая ее уникальным идентификатором;
  • сообщение IOTP, снабжая его уникальным идентификатором.
  • Блок ссылок транзакции может также содержать ссылки на другие транзакции, которые, вообще говоря, могут и не быть транзакциями IOTP

    <


    Начало  Назад  Вперед