Table of Contents
| Date | Author | Version | Description |
|---|---|---|---|
| 01/03/2004 | TM-XML WG | 0.2 | |
| 09/04/2004 | TM-XML WG | 0.3 | |
| 07/06/2004 | TM-XML WG | 0.4 | |
| 21/12/2004 | TM-XML WG | 0.5 | |
| 30/06/2005 | TM-XML WG | 0.6 | |
| 30/11/2005 | TM-XML WG | 0.7 | |
| 08/03/2006 | TM-XML WG | 1.0 for Comment | Support for mark records. Completed some existing components with new data elements. Fixed some misspellings and typos. |
| 26/05/2006 | TM-XML WG | 1.0 Final | Reviewed version with a few new data elements and fixes. |
| 21/09/2007 | TM-XML WG | 1.1 | Alignment to WIPO ST.66. Support for Appeals and Decisions. Some extensions overall, see release notes. |
| 09/11/2007 | TM-XML WG | 1.2 | Alignment to revision of WIPO ST.66, version 1.1. Minor changes. See release notes. |
Table of Contents
This document contains a data dictionary of the proposed international XML standard for trade marks. XSD's, schema design rules and associated class diagrams are provided in separate documents. All documents included this one are publicly available for download at the TM-XML website: http://www.tm-xml.org
The main components of the standard are described in separate chapters. Each section in a chapter describes a logical group of data elements.
TM-XML Version 1.0 Final was the base for the creation of WIPO Standard ST.66. The Standard was adopted by the Standing Committee on Information Technologies, Standards and Documentation Working Group (SCIT/SDWG) during its 8th Session on March, 2007. TM-XML Version 1.1 has been proposed as input for the revision of ST.66. After revision of WIPO Standard, the current TM-XML Version 1.2, presented in this document, has been aligned accordingly. WIPO ST.66 and supplementary documentation can be found at the WIPO ST.66 Material page located at: http://www.wipo.int/standards/en/xml_material/st66/index.html. TM-XML continues its development and new additions and changes will be proposed as Proposals for Change (PFC) to the WIPO ST.66 Task Force in order to be considered for future versions of ST.66.
Note: A TM-XML roadmap has been published in an article on Wikipedia, see http://en.wikipedia.org/wiki/TM-XML
One of the main tasks of the working group was to determine what elements within the trade mark standard were to be included as common used and what elements were to be left out as country-specific.
The working group realizes that decisions can be arbitrary in some cases. The working group had to based itself on the input it received from organizations. A large number of organizations responded on the request for input, but a number also did not. In some cases the working group had to speculate about the common use of an element.
During the progress, the working group has decided:
All elements needed for the International and Community Trade Mark are to be included.
The reason for the foundation of this working group was to work out a standard XML for trade marks that could be used by WIPO, OHIM and all other organizations. WIPO and OHIM elements are therefore not considered as country specific.
Include as many other logical elements that can be fitted easily into the structure.
As opposed to elements defined in the standard, country-specific elements cannot be reused by other organizations. To include as many other logical elements as possible ensures that when at a later stage several organizations are in need for a same 'country-specific' element, this can be found in the standard, and prevents all these organizations from having to define their own organization-specific elements.
The inevitable wide scope.
It is inevitable that the structure of the standard will be wider than a single organization will need. The adoption rules however will allow organizations to make the necessary adjustments for a specific purpose.
The need for adjustment of the standard will depend on the specific purpose. This can be e-filing or other usage at a specific stage for a specific organization only, or the exchange of data between two or more parties. For each specific purpose, the general adoption rules are:
A Guideline for Implementation of Schemas that is a proposal for new Appendix of next version of WIPO ST.66 is available at the TM-XML website.
Table of Contents
Kind of debit account
| No | Enumeration Value | Description |
|---|---|---|
| 1 | Basic Fee Immediate | Basic Fee Immediate |
| 2 | Basic Fee End of Period | Basic Fee End of Period |
| 3 | Basic and Class Fee | Basic and Class Fee |
| * | Union with xs:token |
Monetary quantity of the payment and currency
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Currency Code (attribute) | 1 | Currency of the monetary amount |
Code
<complexType name="AmountType">
<simpleContent>
<extension base="xs:decimal">
<attribute name="currencyCode" type="ISOCurrencyCodeType" use="optional"/>
</extension>
</simpleContent>
</complexType>
Payment by credit card/debit card/chip card or other card
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Card Primary Account Number | 1 | The identifying number of the card, known as the PAN - Primary Account Number. |
| 2 | Card Network Identifier | 1 | Identifier of the organization providing the network for the card |
| 3 | Card Kind Code | 0..1 | The type of card used for payment, such as a debit card or credit card, according to a controlled list of card types |
| 4 | Card Customer Identifier | 0..1 | The customer reference number. This is used to enable transmission of customer specific information with the card. |
| 5 | Card Validity Start Date | 0..1 | The date from which the card is valid |
| 6 | Card Expiry Date | 0..1 | The date up to which the card is valid |
| 7 | Card Issuer Identifier | 0..1 | Identifies the organization issuing the card, known as the BIN - Bank Id.No. |
| 8 | Card Issue Number | 0..1 | Identifies the issue number, relevant only to SWITCH cards |
| 9 | Card C V2 Identifier | 0..1 | The CV2 identity on the reverse of the card for added security. The 3/4 digit number located on the back of the credit/debit card signature strip. |
| 10 | Card Chip Code | 0..1 | Distinction between CHIP and MAG STRIPE cards |
| 11 | Card Chip Application Identifier | 0..1 | Identifies the application (AID) on a Chip card that provides the information quoted |
| 12 | Card Holder Name | 0..1 | Name of the credit card holder |
Code
<complexType name="CardAccountType">
<sequence>
<element name="CardPrimaryAccountNumber" type="xs:string"/>
<element name="CardNetworkIdentifier" type="xs:string"/>
<element name="CardKindCode" type="CardKindCodeType" minOccurs="0"/>
<element name="CardCustomerIdentifier" type="xs:string" minOccurs="0"/>
<element name="CardValidityStartDate" type="xs:date" minOccurs="0"/>
<element name="CardExpiryDate" type="xs:date" minOccurs="0"/>
<element name="CardIssuerIdentifier" type="xs:string" minOccurs="0"/>
<element name="CardIssueNumber" type="xs:string" minOccurs="0"/>
<element name="CardCV2Identifier" type="xs:string" minOccurs="0"/>
<element name="CardChipCode" type="ChipCodeType" minOccurs="0"/>
<element name="CardChipApplicationIdentifier" type="xs:string" minOccurs="0"/>
<element name="CardHolderName" type="TextType" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
The type of card used for payment, such as a debit card or credit card, according to a controlled list of card types
| No | Enumeration Value | Description |
|---|---|---|
| 1 | Credit Card | Credit Card |
| 2 | Debit Card | Debit Card |
| * | Union with xs:token |
Distinction between chip and magnetic strip cards
| No | Enumeration Value | Description |
|---|---|---|
| 1 | Chip | Chip |
| 2 | Magnetic Stripe | Magnetic Stripe |
| * | Union with xs:token |
Login data of the producer of the request or transaction on the receiving office system
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Login | 0..1 | login of the requester on the receiving office system |
| 2 | Login Email | 0..1 | Email associated to the login of the requester on the receiving office system |
| 3 | Password | 0..n | Password associated to the login of the requester on the receiving office system |
Code
<complexType name="LoginInformationType">
<sequence>
<element name="Login" type="xs:string" minOccurs="0"/>
<element name="LoginEmail" type="xs:string" minOccurs="0"/>
<element name="Password" type="xs:anySimpleType" minOccurs="0" maxOccurs="unbounded"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Data regarding a request for payment
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Payment Identifier | 0..1 | Identifier for the payment |
| 2 | Payment Reference | 0..1 | Free text reference in addition to the identifier |
| 3 | Payer Name | 0..1 | Name details of the payer |
| 4 | Payment Status | 0..1 | Status of the payment |
| 5 | Comment | 0..1 | Free text comment |
| 6 | Payment Date | 0..1 | Date of payment |
| 7 | Payment Method | 0..1 | Payment method or mode of payment |
| 8 | Payment Fee Details | 0..1 | Specification of sub fees and amounts |
| 9 | Payment Fee | 1..n | Specification of one sub fee and amount |
Code
<complexType name="PaymentType">
<sequence>
<element name="PaymentIdentifier" type="xs:string" minOccurs="0"/>
<element name="PaymentReference" type="xs:string" minOccurs="0"/>
<element name="PayerName" type="NameType" minOccurs="0"/>
<element name="PaymentStatus" type="PaymentStatusCodeType" minOccurs="0"/>
<element name="Comment" type="TextType" minOccurs="0"/>
<element name="PaymentDate" type="xs:date" minOccurs="0"/>
<element name="PaymentMethod" type="PaymentMethodType" minOccurs="0"/>
<element name="PaymentFeeDetails" minOccurs="0">
<complexType>
<sequence>
<element name="PaymentFee" type="PaymentFeeType" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Specification of one sub fee and amount
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Fee Identifier | 0..1 | Identifier for a fee |
| 2 | Fee Reference | 0..1 | Free text reference to the fee |
| 3 | Fee Amount | 1 | Basic fee amount |
| 4 | Fee Unit Quantity | 0..1 | The quantity or factor the basic amount is multiplied by |
| 5 | Fee Unit Amount | 0..1 | The unit amount as the outcome of the "Fee Amount" multiplied by the "fee Quantity" |
| 6 | Comment | 0..1 | Free text comment |
Code
<complexType name="PaymentFeeType">
<sequence>
<element name="FeeIdentifier" type="xs:string" minOccurs="0"/>
<element name="FeeReference" type="xs:string" minOccurs="0"/>
<element name="FeeAmount" type="AmountType"/>
<element name="FeeUnitQuantity" type="xs:decimal" minOccurs="0"/>
<element name="FeeUnitAmount" type="AmountType" minOccurs="0"/>
<element name="Comment" type="TextType" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Payment method or mode of payment
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Account | 1 | Payment by drawing the amount from the internal account at the office |
| 2 | Account Identifier | 1 | Account identifier or number |
| 3 | Account Kind | 0..1 | Kind of account |
| 4 | Account Holder Name | 0..1 | Name of the account holder |
| 5 | Account Debit Kind | 0..1 | Kind of debit account |
| 6 | Card Account | 1 | Payment by credit card/debit card/chip card or other card |
| 7 | Cheque | 1 | Payment by cheque |
| 8 | Cheque Identifier | 1 | Identifier of number of the cheque |
| 9 | Cheque Kind | 0..1 | Cheque company or system |
| 10 | Bank Name | 0..1 | Name of the bank where to cash the cheque |
| 11 | Bank Transfer | 1 | Payment by bank transfer |
| 12 | Bank Transfer Identifier | 1 | Identifier of the bank transfer |
| 13 | Bank Transfer Date | 1 | Date of the bank transfer |
| 14 | Origin Bank Name | 0..1 | Name of the bank from where the amount was transferred |
| 15 | Bank Destination Account | 1 | Account number where the amount was transferred to |
| 16 | Other Payment Method | 0..1 | Element reserved for any other payment method |
Code
<complexType name="PaymentMethodType">
<sequence>
<choice>
<element name="Account">
<complexType>
<sequence>
<element name="AccountIdentifier" type="xs:string"/>
<element name="AccountKind" type="xs:string" minOccurs="0"/>
<element name="AccountHolderName" type="TextType" minOccurs="0"/>
<element name="AccountDebitKind" type="AccountDebitKindType" minOccurs="0"/>
</sequence>
</complexType>
</element>
<element name="CardAccount" type="CardAccountType"/>
<element name="Cheque">
<complexType>
<sequence>
<element name="ChequeIdentifier" type="xs:string"/>
<element name="ChequeKind" type="xs:string" minOccurs="0"/>
<element name="BankName" type="xs:string" minOccurs="0"/>
</sequence>
</complexType>
</element>
<element name="BankTransfer">
<complexType>
<sequence>
<element name="BankTransferIdentifier" type="xs:string"/>
<element name="BankTransferDate" type="xs:date"/>
<element name="OriginBankName" type="xs:string" minOccurs="0"/>
<element name="BankDestinationAccount" type="xs:string"/>
</sequence>
</complexType>
</element>
<element name="OtherPaymentMethod" type="xs:string" minOccurs="0"/>
</choice>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Status of the payment
| No | Enumeration Value | Description |
|---|---|---|
| 1 | Done | Done |
| 2 | Attached | Attached |
| 3 | To follow | To follow |
| 4 | Bank transfer to follow | Bank transfer to follow |
| 5 | Undefined | Undefined |
| * | Union with xs:token |
Data regarding a reimbursement
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Reimbursement Identifier | 0..1 | Identifier for the reimbursement |
| 2 | Reimbursement Reference | 0..1 | Free text reference in addition to the reimbursement identifier |
| 3 | Payee Name | 0..1 | Name details of the payee of the reimbursement |
| 4 | Reimbursement Status | 0..1 | Status of the reimbursement |
| 5 | Comment | 0..1 | Free text comment |
| 6 | Reimbursement Date | 0..1 | Date of reimbursement |
| 7 | Reimbursement Method | 0..1 | Mode of reimbursement |
| 8 | Reimbursement Fee Details | 0..1 | Details of the reimbursement fees |
| 9 | Reimbursement Fee | 1..n | Data regarding the reimbursement fee |
Code
<complexType name="ReimbursementType">
<sequence>
<element name="ReimbursementIdentifier" type="xs:string" minOccurs="0"/>
<element name="ReimbursementReference" type="xs:string" minOccurs="0"/>
<element name="PayeeName" type="NameType" minOccurs="0"/>
<element name="ReimbursementStatus" type="ReimbursementStatusCodeType" minOccurs="0"/>
<element name="Comment" type="TextType" minOccurs="0"/>
<element name="ReimbursementDate" type="xs:date" minOccurs="0"/>
<element name="ReimbursementMethod" type="PaymentMethodType" minOccurs="0"/>
<element name="ReimbursementFeeDetails" minOccurs="0">
<complexType>
<sequence>
<element name="ReimbursementFee" type="ReimbursementFeeType" maxOccurs="unbounded"/>
</sequence>
</complexType>
</element>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Data regarding the reimbursement fee
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Fee Identifier | 0..1 | Identifier for a fee |
| 2 | Fee Reference | 0..1 | Free text reference to the fee |
| 3 | Fee Amount | 1 | Basic fee amount |
| 4 | Comment | 0..1 | Free text comment |
Code
<complexType name="ReimbursementFeeType">
<sequence>
<element name="FeeIdentifier" type="xs:string" minOccurs="0"/>
<element name="FeeReference" type="xs:string" minOccurs="0"/>
<element name="FeeAmount" type="AmountType"/>
<element name="Comment" type="TextType" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Status code of the reimbursement
| No | Element | Occurs | Description |
|---|
Code
<simpleType name="ReimbursementStatusCodeType">
<union memberTypes="xs:token">
<simpleType>
<restriction base="xs:token">
</restriction>
</simpleType>
</union>
</simpleType>
Details on the examination request as part of the application
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Request Examination Authority | 0..1 | International Examination Authority |
| 2 | Request Examination Kind Code | 1 | Code for kind of examination requested |
Code
<complexType name="RequestExaminationType">
<sequence>
<element name="RequestExaminationAuthority" type="xs:string" minOccurs="0"/>
<element name="RequestExaminationKindCode" type="RequestExaminationKindCodeType"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Code for kind of examination requested
| No | Enumeration Value | Description |
|---|---|---|
| 1 | Normal | Normal |
| 2 | Accelerated | Accelerated |
| 3 | Undefined | Undefined |
| * | Union with xs:token |
Details on a search request as part of the application
| No | Element | Occurs | Description |
|---|---|---|---|
| 1 | Request Search Authority | 0..1 | International Searching Authority |
| 2 | Request Search Kind Code | 1 | Code for kind of search requested |
| 3 | Earlier Search Identifier | 0..1 | Identifier of the search or search document that has taken place earlier. |
| 4 | Earlier Search Date | 0..1 | Date of the search that has taken place earlier |
Code
<complexType name="RequestSearchType">
<sequence>
<element name="RequestSearchAuthority" type="xs:string" minOccurs="0"/>
<element name="RequestSearchKindCode" type="RequestSearchKindCodeType"/>
<element name="EarlierSearchIdentifier" type="xs:string" minOccurs="0"/>
<element name="EarlierSearchDate" type="xs:date" minOccurs="0"/>
<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
Code for kind of search requested
| No | Enumeration Value | Description |
|---|---|---|
| 1 | No Search | No Search |
| 2 | Normal | Normal |
| 3 | Accelerated | Accelerated |
| 4 | Earlier Search | Earlier Search |
| 5 | Undefined | Undefined |
| * | Union with xs:token |