draft-ietf-trade-voucher-vtsapi-02.txt   draft-ietf-trade-voucher-vtsapi-03.txt 
Trade Working Group June 2002 Trade Working Group August 2002
INTERNET-DRAFT Masayuki Terada INTERNET-DRAFT Masayuki Terada
Ko Fujimura Ko Fujimura
Expires: December 2002 NTT Expires: February 2003 NTT
Voucher Trading System Application Programming Interface (VTS-API) Voucher Trading System Application Programming Interface (VTS-API)
<draft-ietf-trade-voucher-vtsapi-02.txt> <draft-ietf-trade-voucher-vtsapi-03.txt>
Status of This Document Status of This Document
This document is an Internet-Draft and is in full conformance with This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026. all provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet- other groups may also distribute working documents as Internet-
Drafts. Drafts.
skipping to change at page 2, line 28 skipping to change at page 2, line 28
Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 2 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . 2
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . 3
2. Processing Model . . . . . . . . . . . . . . . . . . . . . 4 2. Processing Model . . . . . . . . . . . . . . . . . . . . . 4
3. Design Overview . . . . . . . . . . . . . . . . . . . . . 5 3. Design Overview . . . . . . . . . . . . . . . . . . . . . 5
4. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . 5 4. Concepts . . . . . . . . . . . . . . . . . . . . . . . . . 5
5. Interface Definitions . . . . . . . . . . . . . . . . . . 7 5. Interface Definitions . . . . . . . . . . . . . . . . . . 7
5.1 VTSManager . . . . . . . . . . . . . . . . . . . . . . . . 7 5.1 VTSManager . . . . . . . . . . . . . . . . . . . . . . . . 7
5.1.1 getParticipantRepository . . . . . . . . . . . . . . . . . 7 5.1.1 getParticipantRepository . . . . . . . . . . . . . . . . . 7
5.1.2 getVoucherComponentRepository . . . . . . . . . . . . . . 7 5.1.2 getVoucherComponentRepository . . . . . . . . . . . . . . 7
5.2 ParticipantRepository . . . . . . . . . . . . . . . . . . 7 5.2 ParticipantRepository . . . . . . . . . . . . . . . . . . 8
5.2.1 lookup . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5.2.1 lookup . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5.3 Participant . . . . . . . . . . . . . . . . . . . . . . . 8 5.3 Participant . . . . . . . . . . . . . . . . . . . . . . . 8
5.3.1 getIdentifier . . . . . . . . . . . . . . . . . . . . . . 8 5.3.1 getIdentifier . . . . . . . . . . . . . . . . . . . . . . 8
5.3.2 getVTSAgent . . . . . . . . . . . . . . . . . . . . . . . 9 5.3.2 getVTSAgent . . . . . . . . . . . . . . . . . . . . . . . 9
5.4 VTSAgent . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.4 VTSAgent . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.4.1 login . . . . . . . . . . . . . . . . . . . . . . . . . . 9 5.4.1 login . . . . . . . . . . . . . . . . . . . . . . . . . . 9
5.4.2 logout . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5.4.2 logout . . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.4.3 prepare . . . . . . . . . . . . . . . . . . . . . . . . . 10 5.4.3 prepare . . . . . . . . . . . . . . . . . . . . . . . . . 10
5.4.4 issue . . . . . . . . . . . . . . . . . . . . . . . . . . 11 5.4.4 issue . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5.4.5 transfer . . . . . . . . . . . . . . . . . . . . . . . . . 12 5.4.5 transfer . . . . . . . . . . . . . . . . . . . . . . . . . 12
skipping to change at page 2, line 51 skipping to change at page 2, line 51
5.4.8 cancel . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.4.8 cancel . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.4.9 resume . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.4.9 resume . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5.4.10 create . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.4.10 create . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.4.11 delete . . . . . . . . . . . . . . . . . . . . . . . . . . 15 5.4.11 delete . . . . . . . . . . . . . . . . . . . . . . . . . . 15
5.4.12 getContents . . . . . . . . . . . . . . . . . . . . . . . 15 5.4.12 getContents . . . . . . . . . . . . . . . . . . . . . . . 15
5.4.13 getSessions . . . . . . . . . . . . . . . . . . . . . . . 16 5.4.13 getSessions . . . . . . . . . . . . . . . . . . . . . . . 16
5.4.14 getLog . . . . . . . . . . . . . . . . . . . . . . . . . . 16 5.4.14 getLog . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5.4.15 addReceptionListener . . . . . . . . . . . . . . . . . . . 17 5.4.15 addReceptionListener . . . . . . . . . . . . . . . . . . . 17
5.4.16 removeReceptionListener . . . . . . . . . . . . . . . . . 17 5.4.16 removeReceptionListener . . . . . . . . . . . . . . . . . 17
5.5 Session . . . . . . . . . . . . . . . . . . . . . . . . . 17 5.5 Session . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.5.1 getIdentifier . . . . . . . . . . . . . . . . . . . . . . 17 5.5.1 getIdentifier . . . . . . . . . . . . . . . . . . . . . . 18
5.5.2 getVoucher . . . . . . . . . . . . . . . . . . . . . . . . 18 5.5.2 getVoucher . . . . . . . . . . . . . . . . . . . . . . . . 18
5.5.3 getSender . . . . . . . . . . . . . . . . . . . . . . . . 18 5.5.3 getSender . . . . . . . . . . . . . . . . . . . . . . . . 18
5.5.4 getReceiver . . . . . . . . . . . . . . . . . . . . . . . 18 5.5.4 getReceiver . . . . . . . . . . . . . . . . . . . . . . . 18
5.5.5 isPrepared . . . . . . . . . . . . . . . . . . . . . . . . 18 5.5.5 isPrepared . . . . . . . . . . . . . . . . . . . . . . . . 18
5.5.6 isActivated . . . . . . . . . . . . . . . . . . . . . . . 19 5.5.6 isActivated . . . . . . . . . . . . . . . . . . . . . . . 19
5.5.7 isSuspended . . . . . . . . . . . . . . . . . . . . . . . 19 5.5.7 isSuspended . . . . . . . . . . . . . . . . . . . . . . . 19
5.5.8 isCompleted . . . . . . . . . . . . . . . . . . . . . . . 19 5.5.8 isCompleted . . . . . . . . . . . . . . . . . . . . . . . 19
5.6 Voucher . . . . . . . . . . . . . . . . . . . . . . . . . 19 5.6 Voucher . . . . . . . . . . . . . . . . . . . . . . . . . 19
5.6.1 getIssuer . . . . . . . . . . . . . . . . . . . . . . . . 19 5.6.1 getIssuer . . . . . . . . . . . . . . . . . . . . . . . . 19
5.6.2 getPromise . . . . . . . . . . . . . . . . . . . . . . . 19 5.6.2 getPromise . . . . . . . . . . . . . . . . . . . . . . . 19
5.6.3 getCount . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.6.3 getCount . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.7 VoucherComponentRepository . . . . . . . . . . . . . . . . 20 5.7 VoucherComponentRepository . . . . . . . . . . . . . . . . 20
5.7.1 register . . . . . . . . . . . . . . . . . . . . . . . . . 20 5.7.1 register . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.8 VoucherComponent . . . . . . . . . . . . . . . . . . . . . 21 5.8 VoucherComponent . . . . . . . . . . . . . . . . . . . . . 21
5.8.1 getIdentifier . . . . . . . . . . . . . . . . . . . . . . 21 5.8.1 getIdentifier . . . . . . . . . . . . . . . . . . . . . . 21
5.8.2 getDocument . . . . . . . . . . . . . . . . . . . . . . . 21 5.8.2 getDocument . . . . . . . . . . . . . . . . . . . . . . . 21
5.9 ReceptionListener . . . . . . . . . . . . . . . . . . . . 22 5.9 ReceptionListener . . . . . . . . . . . . . . . . . . . . 22
5.9.1 arrive . . . . . . . . . . . . . . . . . . . . . . . . . . 22 5.9.1 arrive . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.10 Exceptions . . . . . . . . . . . . . . . . . . . . . . . . 22 5.10 Exceptions . . . . . . . . . . . . . . . . . . . . . . . . 22
6. Example Code . . . . . . . . . . . . . . . . . . . . . . . 23 6. Example Code . . . . . . . . . . . . . . . . . . . . . . . 23
7. Security Considerations . . . . . . . . . . . . . . . . . 24 7. Security Considerations . . . . . . . . . . . . . . . . . 25
8. References . . . . . . . . . . . . . . . . . . . . . . . . 25 8. References . . . . . . . . . . . . . . . . . . . . . . . . 25
9. Author's Address . . . . . . . . . . . . . . . . . . . . . 25 9. Author's Address . . . . . . . . . . . . . . . . . . . . . 26
Full Copyright Statement . . . . . . . . . . . . . . . . . . . . . 26 Full Copyright Statement . . . . . . . . . . . . . . . . . . . . . 26
1. Introduction 1. Introduction
This document specifies the Voucher Trading System Application This document specifies the Voucher Trading System Application
Programming Interface (VTS-API). The motivation and background of the Programming Interface (VTS-API). The motivation and background of the
Voucher Trading System (VTS) are described in Requirements for Voucher Trading System (VTS) are described in Requirements for
Generic Voucher Trading [VTS]. Generic Voucher Trading [VTS].
A voucher is a logical entity that represents a certain right and is A voucher is a logical entity that represents a certain right and is
skipping to change at page 21, line 32 skipping to change at page 21, line 35
method is called. method is called.
5.8.1 getIdentifier 5.8.1 getIdentifier
public String getIdentifier() public String getIdentifier()
Returns the identifier of the voucher component. Each voucher Returns the identifier of the voucher component. Each voucher
component must have a unique identifier. The identifier may be component must have a unique identifier. The identifier may be
used to check for equivalence of voucher components. used to check for equivalence of voucher components.
The format of the identifier is implementation-specific. The format of the identifier is implementation-specific, however, it
is RECOMMENDED to include the hash value of the voucher component in
the identifier to assure its uniqueness. For generating the hash
value, it is desirble to use a secure hash function, e.g., [SHA-1],
and to apply a canonicalization function, e.g., [EXC-C14N], before
applying the hash function to minimize the impact of insignificant
format changes to the voucher component, e.g., line breaks or
character encoding.
Returns: Returns:
The identifier string of the voucher component. The identifier string of the voucher component.
5.8.2 getDocument 5.8.2 getDocument
public org.w3c.dom.Document getDocument() public org.w3c.dom.Document getDocument()
Returns a Document Object Model [DOM] representation of the document Returns a Document Object Model [DOM] representation of the document
skipping to change at page 25, line 19 skipping to change at page 25, line 29
related standards. Until various VTS systems are deployed, it is related standards. Until various VTS systems are deployed, it is
enough to manually check and install VTS plug-ins like other download enough to manually check and install VTS plug-ins like other download
applications. applications.
To protect vouchers from being stolen, the VTSAgent must be To protect vouchers from being stolen, the VTSAgent must be
authenticated securely. This document introduced a login/logout authenticated securely. This document introduced a login/logout
facility for this purpose (see Section 5.4). facility for this purpose (see Section 5.4).
8. References 8. References
[DOM] "Document Object Model (DOM), Level 1 Specification", October [DOM] V. Apparao, S. Byrne, M. Champion, S. Isaacs, I. Jacobs, A. Le
<http://www.w3.org/TR/REC-DOM-Level-1/>,1998. Hors, G. Nicol, J. Robie, R. Sutor, C. Wilson, and L. Wood.
"Document Object Model (DOM) Level 1 Specification", W3C
[DOMHash] H. Maruyama, K. Tamura, and N. Uramoto, "Digest Values Recommendation, October 1998,
for DOM (DOMHASH)", RFC 2803, 2000. <http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/>
[ECML] J. W. Parsons and D. Eastlake "Electronic Commerce Modeling [ECML] J. W. Parsons and D. Eastlake "Electronic Commerce Modeling
Language (ECML) Version 2 Specification", Language (ECML) Version 2 Specification",
draft-ietf-trade-ecml2-spec-03.txt, 2002. draft-ietf-trade-ecml2-spec-03.txt, 2002.
[EXC-C14N] J. Boyer, D. Eastlake, and J. Reagle, "Exclusive XML
Canonicalization Version 1.0", W3C Recommendation, July 2002,
<http://www.w3.org/TR/2002/REC-xml-exc-c14n-20020718/>
[GPSF] G. Lacoste, B. Pfitzmann, M. Steiner, and M. Waidner (Eds.), [GPSF] G. Lacoste, B. Pfitzmann, M. Steiner, and M. Waidner (Eds.),
"SEMPER - Secure Electronic Marketplace for Europe," LNCS 1854, "SEMPER - Secure Electronic Marketplace for Europe," LNCS 1854,
Springer-Verlag, 2000. Springer-Verlag, 2000.
[GVL] K. Fujimura and M. Terada, "XML Voucher: Generic Voucher [GVL] K. Fujimura and M. Terada, "XML Voucher: Generic Voucher
Language", draft-ietf-trade-voucher-lang-03.txt, 2002. Language", draft-ietf-trade-voucher-lang-03.txt, 2002.
[VTS] K. Fujimura, "Requirements and Design for Voucher Trading
System (VTS)", draft-ietf-trade-drt-requirements-03.txt, 2002.
[IOTP] D. Burdett, "Internet Open Trading Protocol - IOTP Version [IOTP] D. Burdett, "Internet Open Trading Protocol - IOTP Version
1.0", RFC 2801, 2000. 1.0", RFC 2801, 2000.
[JCC] Sun Microsystems Inc., "Java Commerce Client", [JCC] Sun Microsystems Inc., "Java Commerce Client",
<http://java.sun.com/products/commerce/>. <http://java.sun.com/products/commerce/>.
[RFC2119] S. Bradner, "Key words for use in RFCs to Indicate [RFC2119] S. Bradner, "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, 1997. Requirement Levels", BCP 14, RFC 2119, 1997.
[SHA-1] Department of Commerce/National Institute of Standards and
Technology, "FIPS PUB 180-1. Secure Hash Standard. U.S.",
<http://csrc.nist.gov/publications/fips/fips180-1/fip180-1.txt>
[VTS] K. Fujimura, "Requirements and Design for Voucher Trading
System (VTS)", draft-ietf-trade-drt-requirements-04.txt, 2002.
9. Author's Address 9. Author's Address
Masayuki Terada and Ko Fujimura Masayuki Terada and Ko Fujimura
NTT Corporation NTT Corporation
1-1 Hikari-no-oka, Yokosuka-shi, Kanagawa, 239-0847 JAPAN 1-1 Hikari-no-oka, Yokosuka-shi, Kanagawa, 239-0847 JAPAN
Phone: +81-(0)468-59-3814 Phone: +81-(0)468-59-3814
Fax: +81-(0)468-59-8329 Fax: +81-(0)468-59-8329
Email: terada@isl.ntt.co.jp, fujimura@isl.ntt.co.jp Email: terada@isl.ntt.co.jp, fujimura@isl.ntt.co.jp
Full Copyright Statement Full Copyright Statement
 End of changes. 

This html diff was produced by rfcdiff 1.25, available from http://www.levkowetz.com/ietf/tools/rfcdiff/