cxml-ruby 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,4917 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ For cXML license agreement information, please see
4
+ http://www.cxml.org/home/license.asp
5
+
6
+ $Id: //ariba/cxml/modules/Common.mod#6 $
7
+ -->
8
+
9
+ <!--
10
+ A few character entities the XML recommendation says should be defined
11
+ "for interoperability" with existing SGML parsers. By default, these
12
+ are not included to avoid warnings (about entity redefinition) from
13
+ many XML parsers.
14
+ -->
15
+ <!ENTITY % SGML-help "IGNORE">
16
+ <![%SGML-help;[
17
+ <!ENTITY lt "&#38;#60;">
18
+ <!ENTITY gt "&#62;">
19
+ <!ENTITY amp "&#38;#38;">
20
+ <!ENTITY apos "&#39;">
21
+ <!ENTITY quot "&#34;">
22
+ ]]>
23
+
24
+ <!--
25
+ Common types used throughout the cXML definition.
26
+
27
+ The types try to follow the XML DATA definition submitted to the W3C. See
28
+ the following for more information,
29
+
30
+ http://msdn.microsoft.com/xml/reference/schema/datatypes.asp
31
+ http://www.w3c.org/TR/1998/NOTE-XML-data-0105/
32
+
33
+ -->
34
+
35
+ <!-- Atomic-level Types -->
36
+ <!ENTITY % bin.base64 "CDATA">
37
+ <!ENTITY % bin.hex "CDATA">
38
+ <!ENTITY % boolean "(0 | 1)"> <!-- 0 is false, 1 is true -->
39
+ <!ENTITY % char "CDATA">
40
+ <!ENTITY % date "CDATA">
41
+ <!ENTITY % datetime.tz "CDATA"> <!-- Time zone is required -->
42
+ <!ENTITY % fixed.14.4 "CDATA">
43
+ <!ENTITY % i8 "CDATA">
44
+ <!ENTITY % int "%i8;">
45
+ <!ENTITY % r8 "CDATA">
46
+ <!ENTITY % number "CDATA"> <!-- No limit on number of digits, unlike
47
+ %r8; -->
48
+ <!ENTITY % string "CDATA">
49
+ <!ENTITY % time.tz "CDATA"> <!-- Time zone is required -->
50
+ <!ENTITY % duration "CDATA"> <!--ISO8601 duration http://www.w3.org/TR/xmlschema-2/#duration -->
51
+ <!ENTITY % ui8 "CDATA">
52
+ <!ENTITY % uint "%ui8;"> <!-- Unique to this specification -->
53
+ <!ENTITY % uri "CDATA">
54
+ <!ENTITY % uuid "CDATA">
55
+
56
+ <!-- Higher-level Types -->
57
+ <!--
58
+ NOTE: The following is a temporary *hack* to allow empty values for
59
+ some attributes with these types. The nmtoken entity should resolve to
60
+ NMTOKEN.
61
+ -->
62
+ <!ENTITY % nmtoken "CDATA"> <!-- Any combination of XML name chars. -->
63
+ <!ENTITY % isoLangCode "%nmtoken;"> <!-- ISO 639 Language Code -->
64
+ <!ENTITY % isoCountryCode "%nmtoken;"> <!-- ISO 3166 Country Code -->
65
+ <!ENTITY % isoCurrencyCode "%nmtoken;"> <!-- ISO 4217 Currency Code -->
66
+ <!ENTITY % xmlLangCode "%nmtoken;"> <!-- Language code as defined by XML
67
+ recommendation: Language and
68
+ country. -->
69
+ <!ENTITY % URL "%uri;">
70
+ <!--
71
+ For cXML license agreement information, please see
72
+ http://www.cxml.org/home/license.asp
73
+
74
+ $Id: //ariba/cxml/schema/Modules/Base.mod#8 $
75
+ -->
76
+
77
+ <!--
78
+ This file defines the basic elements used to build higher level
79
+ constructs in cXML.
80
+ -->
81
+
82
+ <!-- Basic Name/Data Elements -->
83
+ <!--
84
+ Name is used to provide an identifier for other elements.
85
+
86
+ xml:lang
87
+ The language in which the name is written.
88
+ -->
89
+ <!ELEMENT Name (#PCDATA)> <!-- string -->
90
+ <!ATTLIST Name
91
+ xml:lang %xmlLangCode; #REQUIRED
92
+ >
93
+
94
+ <!--
95
+ An Extrinsic is an element which can be used to extend the data
96
+ associated with known elements.
97
+
98
+ Since this Element is of type ANY, it could contain any arbitrary XML
99
+ document within itself, or a binary ![CDATA[]] document.
100
+
101
+ name
102
+ Name used to identify this extrinsic.
103
+ -->
104
+ <!ELEMENT Extrinsic ANY>
105
+ <!ATTLIST Extrinsic
106
+ name %string; #REQUIRED
107
+ >
108
+
109
+ <!--
110
+ Description is a string which describes something.
111
+ Though text may be interspersed with ShortName elements in this content
112
+ model, placing the ShortName at the beginning or end of the element is
113
+ much preferred. At most one ShortName element is allowed per
114
+ Description. The intended content model would be more like
115
+ (( ShortName, #PCDATA ) | ( #PCDATA | ShortName? )) if DTD syntax
116
+ supported it.
117
+
118
+ xml:lang
119
+ The language in which the description is written.
120
+ -->
121
+ <!ELEMENT Description ( #PCDATA | ShortName )* > <!-- mixed: string and
122
+ ShortName -->
123
+ <!ATTLIST Description
124
+ xml:lang %xmlLangCode; #REQUIRED
125
+ >
126
+
127
+ <!--
128
+ A short string which describes something in fewer characters than the
129
+ entire Description. This should be used when limited space is available.
130
+ For example, a table of elements might show the ShortName's of each. A
131
+ linked "details" view would show the entire Description (including the
132
+ ShortName). Without a ShortName, the user interface must default to a
133
+ truncation of the Description.
134
+ This element does not require an xml:lang attribute since it appears only
135
+ within a Description element. The language of the ShortName must match
136
+ that of the surrounding Description.
137
+ -->
138
+ <!ELEMENT ShortName (#PCDATA)> <!-- string -->
139
+
140
+ <!-- Telephone Number Elements -->
141
+ <!--
142
+ International ITU dial code for the country code in question. This
143
+ code would be entered after any escape code necessary to begin
144
+ International dialing. That is, the escape code does not appear in the
145
+ content of this element.
146
+
147
+ isoCountryCode
148
+ The ISO 3166 2-letter country code for the dial code in question.
149
+ -->
150
+ <!ELEMENT CountryCode (#PCDATA)> <!-- uint -->
151
+ <!ATTLIST CountryCode
152
+ isoCountryCode %isoCountryCode; #REQUIRED
153
+ >
154
+
155
+ <!--
156
+ The areacode or city code within a CountryCode.
157
+ -->
158
+ <!ELEMENT AreaOrCityCode (#PCDATA)> <!-- uint -->
159
+
160
+ <!--
161
+ The local number part of a telephone number.
162
+ -->
163
+ <!ELEMENT Number (#PCDATA)> <!-- string -->
164
+
165
+ <!--
166
+ An extension within relative to the Number element. This element has no
167
+ meaning without an associated Number element.
168
+ -->
169
+ <!ELEMENT Extension (#PCDATA)> <!-- uint -->
170
+
171
+ <!--
172
+ TelephoneNumber represents international telephone numbers.
173
+ -->
174
+ <!ELEMENT TelephoneNumber (CountryCode, AreaOrCityCode, Number, Extension?)>
175
+
176
+ <!--
177
+ Phone is a "named" TelephoneNumber.
178
+
179
+ name
180
+ specifies an identifier which indicates the type of phone number.
181
+ US examples would include "work","home", etc.
182
+ -->
183
+ <!ELEMENT Phone (TelephoneNumber)>
184
+ <!ATTLIST Phone
185
+ name %string; #IMPLIED
186
+ >
187
+
188
+ <!--
189
+ Fax number.
190
+ -->
191
+ <!ELEMENT Fax (TelephoneNumber | URL | Email)>
192
+ <!ATTLIST Fax
193
+ name %string; #IMPLIED
194
+ >
195
+
196
+ <!-- Addressing Elements -->
197
+ <!--
198
+ URL. A string which represents a URL
199
+ -->
200
+ <!ELEMENT URL (#PCDATA)> <!-- URL -->
201
+ <!ATTLIST URL
202
+ name %string; #IMPLIED
203
+ >
204
+
205
+ <!--
206
+ An email address. Address must conform to RFC 821 (SMTP Standard).
207
+
208
+ preferredLang
209
+ optional language that the email owner prefers to receive
210
+ emails in. Refer to the definition of xmlLangCode entity.
211
+
212
+ -->
213
+ <!ELEMENT Email (#PCDATA)> <!-- string -->
214
+ <!ATTLIST Email
215
+ name %string; #IMPLIED
216
+ preferredLang %xmlLangCode; #IMPLIED
217
+ >
218
+
219
+ <!--
220
+ Contact represents an entity at a location. The nature of this
221
+ element is that it represents a communication "end point" for a
222
+ location.
223
+
224
+ role
225
+ Position this person or group plays in the procurement process.
226
+ Likely values include endUser, administrator, purchasingAgent,
227
+ technicalSupport, customerService, sales,
228
+ supplierCorporate, supplierMasterAccount, supplierAccount,
229
+ buyerCorporate, buyerMasterAccount, buyerAccount, buyer,
230
+ subsequentBuyer. Other values may be allowed in some cases.
231
+
232
+ from and to roles are reserved for future use.
233
+
234
+ addressID
235
+ An id for the address. Needed to support address codes for
236
+ relationships that require id references.
237
+ -->
238
+ <!ELEMENT Contact (Name, PostalAddress*, Email*, Phone*, Fax*, URL*)>
239
+ <!ATTLIST Contact
240
+ role NMTOKEN #IMPLIED
241
+ addressID %string; #IMPLIED
242
+ >
243
+
244
+ <!--
245
+ The DeliverTo part of an Address. This would be internal to the actual
246
+ address know to the outside world. Similar to what an extension is to a
247
+ TelephoneNumber.
248
+ -->
249
+ <!ELEMENT DeliverTo (#PCDATA)> <!-- string -->
250
+
251
+ <!--
252
+ Street is a single line of an Address' location.
253
+ -->
254
+ <!ELEMENT Street (#PCDATA)> <!-- string -->
255
+
256
+ <!--
257
+ City is the name of the city in an Address' location.
258
+ -->
259
+ <!ELEMENT City (#PCDATA)> <!-- string -->
260
+
261
+ <!--
262
+ State is an optional state identifier in an Address' location.
263
+ -->
264
+ <!ELEMENT State (#PCDATA)> <!-- string -->
265
+
266
+ <!--
267
+ PostalCode (I have no idea how to describe it)
268
+ -->
269
+ <!ELEMENT PostalCode (#PCDATA)> <!-- string -->
270
+
271
+ <!--
272
+ Country is the name of the country in an Address' location. The
273
+ content of this element is a string which may (for example) be printed
274
+ directly to a shipping label. The content is the human-readable
275
+ equivalent of the isoCountryCode used by applications.
276
+
277
+ isoCountryCode
278
+ The ISO 3166 2-letter country code for this country.
279
+ -->
280
+ <!ELEMENT Country (#PCDATA)> <!-- string -->
281
+ <!ATTLIST Country
282
+ isoCountryCode %isoCountryCode; #REQUIRED
283
+ >
284
+
285
+ <!--
286
+ PostalAddress is a real-world location for a business or person.
287
+ -->
288
+ <!ELEMENT PostalAddress (DeliverTo*, Street+, City, State?,
289
+ PostalCode?, Country)>
290
+ <!ATTLIST PostalAddress
291
+ name %string; #IMPLIED
292
+ >
293
+
294
+ <!--
295
+ Address is the association of a Contact and an Location.
296
+
297
+ isoCountryCode
298
+ The ISO 3166 2-letter country code for the country containing this
299
+ location.
300
+
301
+ addressID
302
+ An id for the address. Needed to support address codes for
303
+ relationships that require id references. An example would be a
304
+ shipping code.
305
+ -->
306
+ <!ELEMENT Address (Name, PostalAddress?, Email?, Phone?, Fax?, URL?)>
307
+ <!ATTLIST Address
308
+ isoCountryCode %isoCountryCode; #IMPLIED
309
+ addressID %string; #IMPLIED
310
+ >
311
+
312
+ <!-- Financial Elements -->
313
+ <!--
314
+ Money is the representation of the object used to pay for items.
315
+
316
+ currency
317
+ specifies the currency in which amount is stated, must conform to ISO
318
+ 4217 currency codes.
319
+
320
+ alternateAmount
321
+ the amount of money in the alternateCurrency. Optional and used to
322
+ support dual-currency requirements such as the Euro.
323
+
324
+ alternateCurrency
325
+ specifies the currency in which the alternateAmount is stated, must
326
+ conform to ISO 4217 currency codes.
327
+ -->
328
+ <!ELEMENT Money (#PCDATA)> <!-- number -->
329
+ <!ATTLIST Money
330
+ currency %isoCurrencyCode; #REQUIRED
331
+ alternateAmount %number; #IMPLIED
332
+ alternateCurrency %isoCurrencyCode; #IMPLIED
333
+ >
334
+
335
+ <!--
336
+ Optional textual child for communicating arbitrary comments or
337
+ description along with the parent.
338
+ Though text may be interspersed with Attachment elements in this content
339
+ model, grouping the Attachment list at the begging or end of the element
340
+ is much preferred. The intended content model would be more like
341
+ (( Attachment+, #PCDATA ) | ( #PCDATA | Attachment* )) if the DTD syntax
342
+ supported it.
343
+
344
+ xml:lang
345
+ The language in which the Comments are written. This attribute
346
+ will be required in a future version of cXML. (Leaving it out is
347
+ deprecated.)
348
+ -->
349
+ <!ELEMENT Comments ( #PCDATA | Attachment )* > <!-- mixed: string and
350
+ opt. Attachment list -->
351
+ <!ATTLIST Comments
352
+ xml:lang %xmlLangCode; #IMPLIED
353
+ >
354
+
355
+ <!--
356
+ Optional child of Comments element referencing a part in a multipart MIME
357
+ transmission.
358
+
359
+ The contained URL must use the scheme "cid:". This is the identifier for
360
+ the referenced attachment within the larger transmission. Must match the
361
+ Content-ID header of one (and only one) part of the MIME transmission
362
+ containing this cXML document. May also be used to retrieve the
363
+ attachment file separately.
364
+ -->
365
+ <!ELEMENT Attachment (URL)>
366
+
367
+ <!---
368
+ Reference to a remote attachment.
369
+
370
+ AttachmentReference is used inside Extrinsic elements that have a
371
+ predefined name of "Attachments".
372
+
373
+ In the context of AttachmentReference, the domain attribute of
374
+ InternalID is currently optional. However, as a way to prevent
375
+ circular request paths, the sending application may use a
376
+ predefined value of "local" to indicate that the attachment
377
+ requested is local to the other application.
378
+
379
+ length
380
+ length of the attachment in bytes.
381
+ -->
382
+ <!ELEMENT AttachmentReference (Name, Description, InternalID)>
383
+ <!ATTLIST AttachmentReference
384
+ length %uint; #IMPLIED
385
+ >
386
+
387
+ <!--
388
+ Price per unit of item.
389
+ -->
390
+ <!ELEMENT UnitPrice (Money)>
391
+
392
+ <!--
393
+ Reference to an earlier document (for example, OrderRequest). In a
394
+ StatusUpdateRequest, this element identifies the purchase order to be
395
+ updated.
396
+
397
+ payloadID
398
+ A unique identifier for the document. Copied directly from the
399
+ cXML element of the original document.
400
+ -->
401
+ <!ELEMENT DocumentReference EMPTY>
402
+ <!ATTLIST DocumentReference
403
+ payloadID %string; #REQUIRED
404
+ >
405
+
406
+ <!ELEMENT InternalID (#PCDATA)> <!-- string -->
407
+ <!ATTLIST InternalID
408
+ domain %string; #IMPLIED
409
+ >
410
+
411
+ <!-- ====
412
+ Common to most variants of the PunchOut transaction set. Defined here
413
+ to be easily shared between multiple DTD files without requiring
414
+ inclusion of Transaction.mod in all of them.
415
+
416
+ All of the PunchOut transaction sets include an originating Request
417
+ (ProviderSetupRequest for example), relatively simple Response
418
+ (PunchOutSetupResponse for example) and final Message
419
+ (ProviderDoneMessage or PunchOutOrderMessage). The Request and
420
+ Response comprise a back-end transaction between two cooperating
421
+ applications that wish to extend an interactive session from one to the
422
+ other. The Request provides the destination application with
423
+ authentication, identification and other setup information. The
424
+ Response provides the originating application with a unique starting
425
+ location for the interactive (HTML) session at the destination system.
426
+
427
+ After receiving a Response of this type, the originating application
428
+ redirects the user's browser to the provided location. (For some
429
+ non-HTML applications, opening a new browser window at that location
430
+ may be more appropriate.) The destination system eventually provides
431
+ an HTML form to the user's browser. This form submits the final
432
+ Message to close the remote session, return that user to the
433
+ originating application and carry any required information back to the
434
+ originating application.
435
+ ==== -->
436
+
437
+ <!--
438
+ OriginatorCookie - Identification of a specific PunchOut session. Used
439
+ in both originating Request and later Message that returns user to
440
+ originating application.
441
+
442
+ Note: The BuyerCookie element used in a 'regular' PunchOut transaction
443
+ (defined in Transaction.mod) is of type ANY. That does not seem
444
+ useful. The string required below better matches the needs for this
445
+ element. Future transactions similar to the PunchOut transaction will
446
+ use this element.
447
+ -->
448
+ <!ELEMENT OriginatorCookie (#PCDATA)>
449
+
450
+ <!--
451
+ BrowserFormPost - Location to which the user's browser must submit the
452
+ final Message. This location (carried in the originating Request) does
453
+ not need to be specific to a PunchOut session since the
454
+ OriginatorCookie is returned in the Message.
455
+ -->
456
+ <!ELEMENT BrowserFormPost (URL)>
457
+
458
+ <!--
459
+ SelectedService - Identification of a service offered by this provider
460
+ and requested in this transaction. Used only in the originating
461
+ Request.
462
+ -->
463
+ <!ELEMENT SelectedService (#PCDATA)>
464
+
465
+ <!--
466
+ StartPage - Location to which the user's browser must be redirected to
467
+ begin the interactive portion of the session at the remote site. The
468
+ destination system returns this information in the Response document.
469
+ This location must be specific to a particular session. It is
470
+ effectively a one time key, providing authenticated entry into the
471
+ destination system.
472
+ -->
473
+ <!ELEMENT StartPage (URL)>
474
+
475
+ <!--
476
+ ReturnData - Any information the originator must know about the
477
+ completed operation at the provider site. The ReturnValue is for
478
+ applications; the Name is for human consumption (direct presentation in
479
+ the User Interface of the application). Where appropriate for the
480
+ possible services, this element may appear in the final Message for a
481
+ PunchOut session.
482
+
483
+ name
484
+ An identifier for the data returned. Provides a meaning for the
485
+ contents of a ReturnData element.
486
+ -->
487
+ <!ELEMENT ReturnData (ReturnValue, Name)>
488
+ <!ATTLIST ReturnData
489
+ name %string; #IMPLIED
490
+ >
491
+
492
+ <!ELEMENT ReturnValue (#PCDATA)>
493
+
494
+ <!--
495
+ Defines a time range. The start and end can be unbounded
496
+ startDate
497
+ The starting date of the time range
498
+ endDate
499
+ The ending date of the range
500
+ -->
501
+ <!ELEMENT TimeRange EMPTY>
502
+ <!ATTLIST TimeRange
503
+ startDate %datetime.tz; #IMPLIED
504
+ endDate %datetime.tz; #IMPLIED
505
+ >
506
+
507
+ <!--
508
+ Defines a period in time.
509
+
510
+ startDate
511
+ The starting date of the period
512
+
513
+ endDate
514
+ The ending date of the period
515
+ -->
516
+ <!ELEMENT Period EMPTY>
517
+ <!ATTLIST Period
518
+ startDate %datetime.tz; #REQUIRED
519
+ endDate %datetime.tz; #REQUIRED
520
+ >
521
+
522
+ <!--
523
+ Must be a UN/CEFACT (Recommendation 20) unit of measure code.
524
+ -->
525
+ <!ELEMENT UnitOfMeasure (#PCDATA)> <!-- nmtoken -->
526
+
527
+ <!--
528
+ Defines a reference to a term which is defined
529
+ in another document.
530
+
531
+ termName
532
+ The name of the ID attribute containing the term.
533
+
534
+ term
535
+ The value of that attribute (i.e., the term itself).
536
+
537
+ -->
538
+ <!ELEMENT TermReference EMPTY>
539
+ <!ATTLIST TermReference
540
+ termName %string; #REQUIRED
541
+ term %string; #REQUIRED
542
+ >
543
+
544
+ <!--
545
+ Defines an optionally named monetary rate at which goods or services are
546
+ charged or paid.
547
+
548
+ Money
549
+ The amount of Money per UnitOfMeasure to be charged or paid.
550
+
551
+ UnitOfMeasure
552
+ Unit of measure.
553
+
554
+ TermReference
555
+ Identifies the definition of this UnitRate
556
+ (found, for example, in contracts, master agreements, and other documents
557
+ which may or may not be cXML documents).
558
+ -->
559
+ <!ELEMENT UnitRate (
560
+ Money,
561
+ UnitOfMeasure,
562
+ TermReference?
563
+ )>
564
+
565
+ <!--
566
+ The rate information used to define the rate of a purchase. For
567
+ example, this could be the total room rate for 4 nights of stay
568
+ at a hotel.
569
+
570
+ Total
571
+ The total amount for the rate. The total amount must equal
572
+ to quantity x UnitRate.
573
+
574
+ UnitRate
575
+ The single unit rate.
576
+
577
+ Description
578
+ Textual description for the rate. For example, hotel nightly rate.
579
+
580
+ Quantity
581
+ The quantity. For example, a 4 nights stay at a hotel will
582
+ have quantity set to 4 with UnitofMesure in UnitRate set to Day.
583
+ -->
584
+ <!ELEMENT Rate (Total, UnitRate, Description?)>
585
+ <!ATTLIST Rate
586
+ quantity %r8; #REQUIRED
587
+ >
588
+
589
+ <!--
590
+ The total for something.
591
+ -->
592
+ <!ELEMENT Total (Money)>
593
+
594
+ <!--
595
+ For cXML license agreement information, please see
596
+ http://www.cxml.org/home/license.asp
597
+
598
+ $Id: //ariba/cxml/modules/Version.mod#4 $
599
+ -->
600
+
601
+ <!--
602
+ Another top-level entity used in Transport.mod. Defined here to allow
603
+ easy updates to the release version of cXML without opening
604
+ Transport.mod. This should also provide an easy file to search for
605
+ the current release version string.
606
+ -->
607
+
608
+ <!-- cxml.version
609
+ Current default string for the cXML@version attribute. Corresponds to
610
+ the final directory of the SYSTEM identifier used in all up-to-date
611
+ cXML documents.
612
+ For easy parsing of this file, do not remove whitespace surrounding the
613
+ actual version string.
614
+ -->
615
+ <!ENTITY cxml.version "1.2.020" >
616
+ <!--
617
+ For cXML license agreement information, please see
618
+ http://www.cxml.org/home/license.asp
619
+
620
+ $Id: //ariba/cxml/schema/Modules/Supplier.mod#1 $
621
+ -->
622
+
623
+ <!--
624
+ Supplier of goods and services. Includes a list of SupplierIDs which
625
+ identify the Supplier.
626
+
627
+ corporateURL
628
+ URL to web site about the supplier
629
+
630
+ storeFrontURL
631
+ URL to web site where a user can shop or browse
632
+ -->
633
+ <!ELEMENT Supplier (Name, Comments?, SupplierID+, SupplierLocation*)>
634
+ <!ATTLIST Supplier
635
+ corporateURL %URL; #IMPLIED
636
+ storeFrontURL %URL; #IMPLIED
637
+ >
638
+
639
+ <!--
640
+ One of the locations for a supplier. Supplier location is
641
+ generally a physical location.
642
+ -->
643
+ <!ELEMENT SupplierLocation (Address, OrderMethods)>
644
+
645
+ <!--
646
+ OrderMethods is the list of methods by which one can order
647
+ from a supplier. The contact element is the technical contact
648
+ who should be able to assist with order processing issues.
649
+ The list is to be ordered by supplier preference, the first
650
+ element having the highest degree of preference.
651
+ -->
652
+ <!ELEMENT OrderMethods (OrderMethod+, Contact?)>
653
+
654
+ <!--
655
+ OrderMethod is a method for ordering. It is comprised of a
656
+ target address for the order and the protocol expected by
657
+ the address.
658
+ -->
659
+ <!ELEMENT OrderMethod (OrderTarget, OrderProtocol?)>
660
+
661
+ <!--
662
+ OrderTarget represents an address to which orders can be
663
+ sent.
664
+ -->
665
+ <!ELEMENT OrderTarget (Phone | Email | Fax | URL | OtherOrderTarget)>
666
+
667
+ <!--
668
+ OrderProtocol is the communication method to be used when
669
+ communicating an order to a supplier. An example would be "cXML".
670
+ -->
671
+ <!ELEMENT OrderProtocol (#PCDATA)> <!-- string -->
672
+
673
+ <!--
674
+ OtherOrderTarget represents an address which is not enumerated by
675
+ default in the OrderTarget Element. This may contain address targets
676
+ beyond the ability of this document to describe.
677
+
678
+ name
679
+ Optional name for target.
680
+ -->
681
+ <!ELEMENT OtherOrderTarget ANY>
682
+ <!ATTLIST OtherOrderTarget
683
+ name %string; #IMPLIED
684
+ >
685
+
686
+ <!--
687
+ Definition of a supplier id. A supplier id is a (domain, value)
688
+ pair so that suppliers have the flexibility to define their id's
689
+ according to an arbitrary convention (e.g., (DUNS, 12345),
690
+ (TaxID, 88888888)).
691
+
692
+ domain
693
+ the domain of the id
694
+ -->
695
+
696
+ <!ELEMENT SupplierID (#PCDATA)> <!-- string -->
697
+ <!ATTLIST SupplierID
698
+ domain %string; #REQUIRED
699
+ >
700
+ <!--
701
+ Defines a List of Suppliers that might be associated with a quote Item. Used in
702
+ ItemOut.
703
+ -->
704
+ <!ELEMENT SupplierList (Supplier+)>
705
+ <!--
706
+ For cXML license agreement information, please see
707
+ http://www.cxml.org/home/license.asp
708
+
709
+ $Id: //ariba/cxml/modules/Item.mod#6 $
710
+ -->
711
+
712
+ <!--
713
+ ID with which the item's manufacturer identifies the item.
714
+ -->
715
+ <!ELEMENT ManufacturerPartID (#PCDATA)> <!-- string -->
716
+
717
+ <!--
718
+ Name of the item's manufacturer.
719
+
720
+ xml:lang
721
+ The language in which the ManufacturerName is written. This
722
+ attribute will be required in a future version of cXML. (Leaving it
723
+ out is deprecated.)
724
+ -->
725
+ <!ELEMENT ManufacturerName (#PCDATA)> <!-- string -->
726
+ <!ATTLIST ManufacturerName
727
+ xml:lang %xmlLangCode; #IMPLIED
728
+ >
729
+
730
+ <!--
731
+ Classification is used to group items into similar categories.
732
+
733
+ domain
734
+ "name" of classification, ie., SPSC
735
+ -->
736
+ <!ELEMENT Classification (#PCDATA)> <!-- string -->
737
+ <!ATTLIST Classification
738
+ domain %string; #REQUIRED
739
+ >
740
+
741
+ <!--
742
+ LeadTime specifies, in days, the amount of time required to
743
+ receive the item.
744
+ -->
745
+ <!ELEMENT LeadTime (#PCDATA)> <!-- uint -->
746
+
747
+ <!--
748
+ How the supplier identifies an item they sell.
749
+
750
+ If SupplierPartID does not provide a unique key to identify the item,
751
+ then the supplier should generate a key which identifies the part
752
+ uniquely when combined with the SupplierID and SupplierPartID. The
753
+ key is called SupplierPartAuxiliaryID.
754
+
755
+
756
+ An example is where a Supplier would use the same PartID for an
757
+ item but have a different price for units of "EA" versus "BOX".
758
+ In this case, the ItemIDs should be:
759
+ <ItemID>
760
+ <SupplierPartID>pn12345</SupplierPartID>
761
+ <SupplierPartAuxiliaryID>EA</SupplierPartAuxiliaryID>
762
+ </ItemID>
763
+ <ItemID>
764
+ <SupplierPartID>pn12345</SupplierPartID>
765
+ <SupplierPartAuxiliaryID>
766
+ <foo>well formed XML here</foo>
767
+ </SupplierPartAuxiliaryID>
768
+ </ItemID>
769
+ In this case, the "foo" element must be defined in an internal subset
770
+ sent with the cXML document. Otherwise, parsers will not be able to
771
+ validate that document.
772
+
773
+ In a preferred approach, the sending application may escape the contained
774
+ XML using CDATA sections. This would appear as:
775
+ ...
776
+ <SupplierPartAuxiliaryID>
777
+ <![CDATA[<foo>well formed XML here</foo>]]>
778
+ </SupplierPartAuxiliaryID>
779
+ ...
780
+
781
+ Finally, the angle brackets could be escaped using XML character
782
+ entities. This might be a bit harder for humans to read. For example:
783
+ ...
784
+ <SupplierPartAuxiliaryID>
785
+ &lt;foo&gt;well formed XML here&lt;/foo&gt;
786
+ </SupplierPartAuxiliaryID>
787
+ ...
788
+
789
+
790
+ -->
791
+ <!ELEMENT SupplierPartID (#PCDATA)> <!-- string -->
792
+
793
+ <!ELEMENT SupplierPartAuxiliaryID ANY>
794
+
795
+ <!--
796
+ A unique identification of an item. SupplierID is not required since
797
+ ItemIDs never travel alone.
798
+
799
+ ItemIDs used to define a Supplier/Commodity level Blanket Order Item should
800
+ use Empty SupplierPartID tag. These type of items do not have specific part numbers
801
+ at the time of placing the Blanket Order. There will be subsequent release orders
802
+ or invoices that will define the SupplierID.
803
+ -->
804
+ <!ELEMENT ItemID (SupplierPartID, SupplierPartAuxiliaryID?)>
805
+
806
+ <!--
807
+ ItemDetail contains detailed information about an item. All the data that
808
+ a user would want to see about an item instead of the bare essentials
809
+ that are represented in the ItemID.
810
+
811
+ LeadTime
812
+ time in days to receive the item
813
+ -->
814
+ <!ELEMENT ItemDetail (UnitPrice, Description+, UnitOfMeasure,
815
+ Classification+, ManufacturerPartID?,
816
+ ManufacturerName?, URL?, LeadTime?, Extrinsic*)>
817
+
818
+
819
+ <!--
820
+ Item details specific for items that describe blanket purchase order items.
821
+ This element should only be used for items in a purchase order of
822
+ type "blanket"
823
+ -->
824
+ <!ELEMENT BlanketItemDetail (Description+, MaxAmount?, MinAmount?,
825
+ MaxQuantity?, MinQuantity?,
826
+ UnitPrice?, UnitOfMeasure?,
827
+ Classification*, Extrinsic*)>
828
+ <!--
829
+ For cXML license agreement information, please see
830
+ http://www.cxml.org/home/license.asp
831
+
832
+ $Id$
833
+ -->
834
+
835
+ <!--
836
+ This element captures travel information. It could be one of four
837
+ types: air, car rental, hotel or rail.
838
+
839
+ AirDetail
840
+ Air travel detail.
841
+
842
+ CarRentalDetail
843
+ Car rental detail.
844
+
845
+ HotelDetail
846
+ Hotel detail.
847
+
848
+ RailDetail
849
+ Rail detail.
850
+
851
+ PolicyViolation
852
+ List of policy violations (if any) associated with this
853
+ travel line item.
854
+
855
+ Comments
856
+ Top level comments for this travel line item (if any). This
857
+ is not the policy violation comment but a top level comment
858
+ given by the user for this travel line item while in Travel
859
+ Booking Provider's web site.
860
+
861
+ TermsAndConditions
862
+ List of Terms and conditions (if any) associated with this
863
+ travel line item.
864
+
865
+ confirmationNumber
866
+ A unique confirmation number that is useful to both the
867
+ traveler and the vendor who is providing the service for this
868
+ travel line item. For example, hotel reservation number or
869
+ e-ticket number from the airline.
870
+
871
+ pnrLocator
872
+ Passenger Name Record (PNR) Locator that is useful to the
873
+ Travel Booking Provider.
874
+
875
+ quoteExpirationTime
876
+ Date and time that this quote will expire. This value is
877
+ normally supplied in the PunchoutOrderMessage. If no value is
878
+ supplied, it is assumed that there is no expiration time or
879
+ date for this quote.
880
+ -->
881
+ <!ELEMENT TravelDetail ((AirDetail | CarRentalDetail | HotelDetail | RailDetail),
882
+ PolicyViolation*,
883
+ Comments?,
884
+ TermsAndConditions?)>
885
+ <!ATTLIST TravelDetail
886
+ confirmationNumber %string; #REQUIRED
887
+ pnrLocator %string; #IMPLIED
888
+ quoteExpirationTime %datetime.tz; #IMPLIED
889
+ >
890
+
891
+ <!-- Air -->
892
+
893
+ <!--
894
+ Air detail information for the air trip.
895
+
896
+ TripType
897
+ Round Trip, One Way, or Multi Leg
898
+
899
+ AirLeg
900
+ Different air leg that makes up this air detail.
901
+ For example a round trip from SFO -> TPE with no stops
902
+ will have two air legs. One air leg from SFO -> TPE
903
+ and another from TPE -> SFO.
904
+
905
+ AvailablePrice
906
+ Other available airfare prices that the user did not pick.
907
+
908
+ Penalty
909
+ Penalty amount (if any). This is normally due to changes or
910
+ cancelation of the ticket.
911
+ -->
912
+ <!ELEMENT AirDetail (TripType,
913
+ AirLeg+,
914
+ AvailablePrice*,
915
+ Penalty?)>
916
+
917
+ <!--
918
+ Define a single leg in the air travel.
919
+
920
+ Vendor
921
+ Airline vendor name and information.
922
+
923
+ AirLegOrigin
924
+ Originating airport for this air leg.
925
+
926
+ AirLegDestination
927
+ Destination airport for this air leg.
928
+
929
+ BookingClassCode
930
+ Airline booking class code. This is the de-facto
931
+ airline standard. For example,
932
+
933
+ F, FN, P, R, A - first class
934
+ C, CN, D, J, I, Z - business class.
935
+ Y, YN, B, BN, M, H, V, VN, O, Q, QN, S,
936
+ K, KN, L, U, T, W - coach class.
937
+
938
+ Rate
939
+ Rate for this particular air leg. If specify, the total
940
+ of all the rate for the different air legs must add up
941
+ to the total the line item level.
942
+
943
+ Meal
944
+ Meal information for this air leg (if any)
945
+
946
+ travelSegment
947
+ Textual information to identify this travel segment.
948
+ This information is specific to the Travel Booking Provider.
949
+
950
+ departureTime
951
+ Departure date and time for this air leg
952
+
953
+ arrivalTime
954
+ Arrival date and time for this air leg
955
+
956
+ flightNumber
957
+ Flight number for this air leg
958
+
959
+ seatNumber
960
+ Seat number for this air leg
961
+
962
+ seatType
963
+ Seat type
964
+ aisle - Aisle
965
+ window - Window
966
+ middle - Middle
967
+
968
+ upgrade
969
+ Is this ticket an upgrade?
970
+
971
+ stops
972
+ The number of stop for this air leg.
973
+ 0 if it is a direct flight. If no information is supplied
974
+ it is defaulted to 0.
975
+
976
+ equipment
977
+ The plane equipment information for this air leg
978
+ -->
979
+ <!ELEMENT AirLeg (Vendor,
980
+ AirLegOrigin,
981
+ AirLegDestination,
982
+ BookingClassCode?,
983
+ Rate?,
984
+ Meal*)>
985
+ <!ATTLIST AirLeg
986
+ travelSegment %string; #REQUIRED
987
+ departureTime %datetime.tz; #REQUIRED
988
+ arrivalTime %datetime.tz; #REQUIRED
989
+ flightNumber %string; #REQUIRED
990
+ seatNumber %string; #IMPLIED
991
+ seatType (window | aisle | middle) #IMPLIED
992
+ upgrade (yes) #IMPLIED
993
+ stops %r8; #IMPLIED
994
+ equipment %string; #IMPLIED
995
+ >
996
+
997
+ <!--
998
+ Originating airport for this Air Leg.
999
+
1000
+ Airport
1001
+ Originating airport
1002
+ -->
1003
+ <!ELEMENT AirLegOrigin (Airport)>
1004
+
1005
+ <!--
1006
+ Destination airport for this Air Leg.
1007
+
1008
+ Airport
1009
+ Destination airport
1010
+ -->
1011
+ <!ELEMENT AirLegDestination (Airport)>
1012
+
1013
+ <!--
1014
+ Airport information that includes the iso airport code
1015
+
1016
+ Address
1017
+ Physical adress of the airport.
1018
+
1019
+ airportCode
1020
+ The 3 letter IATA airport code.
1021
+ -->
1022
+ <!ELEMENT Airport (Address?)>
1023
+ <!ATTLIST Airport airportCode %string; #REQUIRED>
1024
+
1025
+ <!---
1026
+ Meal information used by air, hotel and rail.
1027
+
1028
+ BookingClassCode
1029
+ Code for the meal. For example, airlines use
1030
+ B - Breakfast
1031
+ C - Complimentary liquor
1032
+ D - Dinner
1033
+ F - Food for purchase
1034
+ G - Food and beverage for purchase
1035
+ H - Hot meal
1036
+ K - Continental breakfast
1037
+ L - Lunch
1038
+ M - Meal
1039
+ N - No meal service
1040
+ O - Cold meal
1041
+ P - Liquor for purchase
1042
+ R - Refreshments
1043
+ S - Snack or brunch
1044
+ V - Refreshments for purchase
1045
+
1046
+ Description
1047
+ Textual description of the meal, including any special needs
1048
+ such as vegetarian or dairy-free.
1049
+ -->
1050
+ <!ELEMENT Meal (BookingClassCode?, Description?)>
1051
+
1052
+ <!-- Car Rental -->
1053
+
1054
+ <!--
1055
+ Car rental information.
1056
+
1057
+ Vendor
1058
+ Car rental vendor information.
1059
+
1060
+ CarRentalPickup
1061
+ Pickup location for the rental car.
1062
+
1063
+ CarRentalDropoff
1064
+ Drop off location for the rental car.
1065
+
1066
+ BookingClassCode
1067
+ 4 letter code for car.
1068
+
1069
+ 1st Letter - M (Mini), E (Economy), C (Compact), S (Standard),
1070
+ I (Intermediate), F (Full size), P (Premium), L (Luxury)
1071
+ V (MiniVan), X (Special)
1072
+ 2nd Letter - B (2 door), C (2/4 door), D (4 door), T (Convertible),
1073
+ F (Four wheel drive), V (Van), W (Wagon), S (Sport)
1074
+ X (Special)
1075
+ 3rd Letter - A (Automatic), M (Manual)
1076
+ 4th Letter - R (A/c), N (No A/C)
1077
+
1078
+ CarRentalFee
1079
+ Mutliple car rental fee can be specified to capture the
1080
+ break down of different fees. The total of these fees must
1081
+ add up to the total at the line item level.
1082
+
1083
+ LimitedMileage
1084
+ Mileage limit information
1085
+
1086
+ AvailablePrice
1087
+ Other available prices for car rental that the user did not pick.
1088
+
1089
+ travelSegment
1090
+ Textual information to identify this travel segment.
1091
+ This information is specific to the Travel Booking Provider.
1092
+
1093
+ pickupTime
1094
+ The intended pickup date and time
1095
+
1096
+ dropoffTime
1097
+ The intended dropoff date and time
1098
+ -->
1099
+ <!ELEMENT CarRentalDetail (Vendor,
1100
+ CarRentalPickup,
1101
+ CarRentalDropoff,
1102
+ BookingClassCode?,
1103
+ CarRentalFee+,
1104
+ LimitedMileage?,
1105
+ AvailablePrice*)>
1106
+ <!ATTLIST CarRentalDetail
1107
+ travelSegment %string; #REQUIRED
1108
+ pickupTime %datetime.tz; #REQUIRED
1109
+ dropoffTime %datetime.tz; #REQUIRED
1110
+ >
1111
+
1112
+ <!--
1113
+ Physical location where the rental car should be picked up. This
1114
+ is either an Airport or off airport car rental location.
1115
+
1116
+ Airport
1117
+ An airport location.
1118
+
1119
+ Address
1120
+ Physical address of the car rental location
1121
+ -->
1122
+ <!ELEMENT CarRentalPickup (Airport | Address)>
1123
+
1124
+ <!--
1125
+ Physical location where the rental car should be dropped off.
1126
+ This is either an Airport or off-airport car rental location.
1127
+
1128
+ Airport
1129
+ An airport location.
1130
+
1131
+ Address
1132
+ Physical address of the car rental location
1133
+ -->
1134
+ <!ELEMENT CarRentalDropoff (Airport | Address)>
1135
+
1136
+ <!--
1137
+ This specifies the quantity and the unit of measure of the mileage
1138
+ limit.
1139
+
1140
+ UnitOfMeasure
1141
+ Unit of measure either miles or kilometers.
1142
+
1143
+ quantity
1144
+ The mileage limit amount.
1145
+ -->
1146
+ <!ELEMENT LimitedMileage (UnitOfMeasure)>
1147
+ <!ATTLIST LimitedMileage
1148
+ quantity %r8; #REQUIRED
1149
+ >
1150
+
1151
+ <!--
1152
+ Car rental fee information. CarRentalFee captures the actual
1153
+ charges and fee that applies to this rental. Conditional charges
1154
+ such as extra mileages that are over the mileage limit should not
1155
+ be specified here but rather in the TermsAndConditions text.
1156
+
1157
+ Total
1158
+ Total amount for this car rental fee. All the total for the rates
1159
+ must add up to this amount.
1160
+
1161
+ Rate
1162
+ The individual broken-down fee information.
1163
+
1164
+ type
1165
+ Type of rate
1166
+ baseRate - Base rental rate
1167
+ additionalDriver - Additional driver fee
1168
+ airportAccessFee - Airport Access fee
1169
+ dropOffCharge - Drop off charge
1170
+ vehicleLicensingFee - Vehicle lincensing fee
1171
+ touristTax - Tourist tax
1172
+ prepaidGasoline - Prepaid gasoline charge
1173
+ navigationSystem - Navigation system
1174
+ childSeat - Child seat charge
1175
+ luggageRack - Luggage rack charge
1176
+ collisionDamageInsurance - Collision damage insurance
1177
+ liabilityInsurance - Liability insurance
1178
+ mobilePhone - Mobile phone base charge
1179
+ other - Other charges.
1180
+ -->
1181
+ <!ELEMENT CarRentalFee (Total, Rate*)>
1182
+ <!ATTLIST CarRentalFee
1183
+ type (baseRate | additionalDriver | airportAccessFee | dropOffCharge |
1184
+ vehicleLicensingFee | touristTax | prepaidGasoline |
1185
+ navigationSystem | childSeat | luggageRack | collisionDamageInsurance |
1186
+ liabilityInsurance | mobilePhone | other) "baseRate"
1187
+ >
1188
+
1189
+ <!-- Hotel -->
1190
+
1191
+ <!--
1192
+ Hotel detail information.
1193
+
1194
+ Vendor
1195
+ Hotel vendor information.
1196
+
1197
+ Address
1198
+ Physical address of the hotel. This is might be different
1199
+ from the address specified in the Vendor field as the vendor
1200
+ address might be the head quarter address.
1201
+
1202
+ RoomType
1203
+ The type of room reserved.
1204
+
1205
+ BookingClassCode
1206
+ Hotel booking class code.
1207
+
1208
+ Meal
1209
+ Any complementary meals that are included with the room. For
1210
+ example, complementary continental breakfast.
1211
+
1212
+ Rate
1213
+ Hotel rate information. Multiple rates can be specified. For
1214
+ example, the night rate, valet parking rate, and other rates.
1215
+
1216
+ AvailablePrice
1217
+ Other available prices that user did not pick. Available
1218
+ prices can be from the same vendor or different vendor.
1219
+
1220
+ travelSegment
1221
+ Textual information to identify this travel segment. This
1222
+ information is specific to the Travel Booking Provider.
1223
+
1224
+ arrivalTime
1225
+ Date and time of arrival at the hotel. This is used as an
1226
+ advisory to the hotel vendor for the arrival time.
1227
+
1228
+ departureTime
1229
+ Date and time of departure from the hotel. This is used as an
1230
+ advisory to the hotel vendor for the departure time.
1231
+
1232
+ checkinTime
1233
+ The official checkin time. For example, most hotel checkin
1234
+ time is 3:00 PM.
1235
+
1236
+ checkoutTime
1237
+ The official checkout time. For example, most hotel checkout
1238
+ time is 12:00 PM (noon).
1239
+
1240
+ earlyCheckinAllowed
1241
+ Does the hotel allow early checkin?
1242
+
1243
+ lateCheckoutAllowed
1244
+ Does the hotel allow late checkout?
1245
+ -->
1246
+ <!ELEMENT HotelDetail (Vendor,
1247
+ Address,
1248
+ RoomType,
1249
+ BookingClassCode?,
1250
+ Meal*,
1251
+ Rate*,
1252
+ AvailablePrice*)>
1253
+ <!ATTLIST HotelDetail
1254
+ travelSegment %string; #REQUIRED
1255
+ arrivalTime %datetime.tz; #REQUIRED
1256
+ departureTime %datetime.tz; #REQUIRED
1257
+ checkinTime %time.tz; #REQUIRED
1258
+ checkoutTime %time.tz; #REQUIRED
1259
+ earlyCheckinAllowed (yes) #IMPLIED
1260
+ lateCheckoutAllowed (yes) #IMPLIED
1261
+ >
1262
+
1263
+ <!--
1264
+ Information about a hotel room.
1265
+
1266
+ Description
1267
+ Textual description of the hotel room.
1268
+
1269
+ Amenities
1270
+ List of amenities for this hotel room.
1271
+
1272
+ smoking
1273
+ Is the room a smoking or non-smoking room
1274
+
1275
+ numberOfBed
1276
+ The number of beds in this room
1277
+
1278
+ bedType
1279
+ The bed type in this room.
1280
+ -->
1281
+ <!ELEMENT RoomType (Description?, Amenities*)>
1282
+ <!ATTLIST RoomType
1283
+ smoking (yes | no) #REQUIRED
1284
+ numberOfBed %r8; #IMPLIED
1285
+ bedType (king | queen | full | double | single | other) #IMPLIED
1286
+ >
1287
+
1288
+ <!--
1289
+ Textual description of the amenities for the hotel room.
1290
+
1291
+ Description
1292
+ Text description of this amenities. For example,
1293
+ DSL connection, two telephone lines, and other information
1294
+ about a hotel room.
1295
+ -->
1296
+ <!ELEMENT Amenities (Description)>
1297
+
1298
+ <!-- Rail -->
1299
+
1300
+ <!--
1301
+ Rail detail information. A rail detail can have multiple legs.
1302
+
1303
+ TripType
1304
+ Trip type for this rail.
1305
+
1306
+ Rail leg
1307
+ The different rail legs that make up this rail detail.
1308
+
1309
+ AvailablePrice
1310
+ Other available prices that the user did not pick for for this
1311
+ rail trip.
1312
+
1313
+ Penalty
1314
+ Penalty (if any) associated with this rail trip.
1315
+ -->
1316
+ <!ELEMENT RailDetail (TripType,
1317
+ RailLeg+,
1318
+ AvailablePrice*,
1319
+ Penalty?)>
1320
+
1321
+ <!--
1322
+ Rail leg is used to express information regarding a single leg for
1323
+ a rail travel.
1324
+
1325
+ Vendor
1326
+ Rail vendor information.
1327
+
1328
+ RailLegOrigin
1329
+ Rail originating location.
1330
+
1331
+ RailLegDestination
1332
+ Rail Destination location.
1333
+
1334
+ BookingClassCode
1335
+ Rail booking class code.
1336
+
1337
+ Rate
1338
+ Rate information (if any) for this rail leg. If specified,
1339
+ all the rates in all rail legs must add up to the total at the
1340
+ travel line item level.
1341
+
1342
+ Meal
1343
+ Meal served for this leg (if any).
1344
+
1345
+ travelSegment
1346
+ Textual information to identify this travel segment. This
1347
+ information is specific to the Travel Booking Provider.
1348
+
1349
+ departureTime
1350
+ Date and time of departure at the originating location.
1351
+
1352
+ arrivalTime
1353
+ Date and time of arrival at the destination location.
1354
+
1355
+ trainNumber
1356
+ Train number for this rail leg.
1357
+
1358
+ seatNumber
1359
+ Seat number.
1360
+
1361
+ carType
1362
+ Type of the rail car.
1363
+ -->
1364
+ <!ELEMENT RailLeg (Vendor,
1365
+ RailLegOrigin,
1366
+ RailLegDestination,
1367
+ BookingClassCode?,
1368
+ Rate?,
1369
+ Meal*)>
1370
+ <!ATTLIST RailLeg
1371
+ travelSegment %string; #REQUIRED
1372
+ departureTime %datetime.tz; #REQUIRED
1373
+ arrivalTime %datetime.tz; #REQUIRED
1374
+ trainNumber %string; #REQUIRED
1375
+ seatNumber %string; #IMPLIED
1376
+ carType (sleeper | seat) #IMPLIED
1377
+ >
1378
+
1379
+ <!--
1380
+ The origin of a particular rail leg. This can be an airport or a
1381
+ physical address of a rail station.
1382
+
1383
+ Airport
1384
+ An airport location
1385
+
1386
+ Address
1387
+ A physical address of a rail station
1388
+ -->
1389
+ <!ELEMENT RailLegOrigin (Airport | Address)>
1390
+
1391
+ <!--
1392
+ The destination of a particular rail leg. This can be an airport
1393
+ or a physical address of a rail station.
1394
+
1395
+ Airport
1396
+ An airport location
1397
+
1398
+ Address
1399
+ A physical address of a rail station
1400
+ -->
1401
+ <!ELEMENT RailLegDestination (Airport | Address)>
1402
+
1403
+ <!-- Travel/Expense common definitions -->
1404
+
1405
+ <!--
1406
+ The type of the trip. This is used by Air and Rail to indicate
1407
+ round trip, one way or multi-leg trip.
1408
+
1409
+ type
1410
+ Type of the trip
1411
+ round - a round trip
1412
+ oneWay - a one way trip
1413
+ multiLeg - a multi leg or open jaw trip
1414
+ -->
1415
+ <!ELEMENT TripType EMPTY>
1416
+ <!ATTLIST TripType
1417
+ type (round | oneWay | multiLeg) #REQUIRED
1418
+ >
1419
+
1420
+ <!--
1421
+ Information about a vendor that is providing this service.
1422
+
1423
+ Address
1424
+ The physical address of the vendor. This address normally is
1425
+ the business or head quarter address of the vendor.
1426
+
1427
+ SupplierID
1428
+ Supplier id for this vendor. This is just a (domain, value)
1429
+ pair so that Travel Booking Providers have the flexibility to
1430
+ define their id's according to an arbitrary convention (e.g.,
1431
+ (DUNS, 12345), (TaxID, 88888888)).
1432
+
1433
+ Note that multiple supplier id can be specified. This is so
1434
+ that Travel Booking Provider can have a single implementation
1435
+ that works with different Buyer implementations that use
1436
+ different supplier id domain.
1437
+
1438
+ preferred
1439
+ Is this vendor a preferred vendor?
1440
+ -->
1441
+ <!ELEMENT Vendor (Address, SupplierID*)>
1442
+ <!ATTLIST Vendor
1443
+ preferred (yes | no) #REQUIRED
1444
+ >
1445
+
1446
+ <!--
1447
+ Textual terms and conditions associated with an air fare, car
1448
+ rental, hotel, or rail. For example, a car rental terms and
1449
+ conditions normally include boundary limit, additional mileage
1450
+ charges, gasoline charge and other restriction information.
1451
+
1452
+ Multiple terms and conditions can be attached to a single travel
1453
+ line item.
1454
+
1455
+ Description
1456
+ Textual terms and conditions.
1457
+ -->
1458
+ <!ELEMENT TermsAndConditions (Description+)>
1459
+
1460
+ <!--
1461
+ Policy violation (if any) that results from the user picking this
1462
+ particular travel. Policy violations are associated with an
1463
+ individual line item of travel and not associated at the header
1464
+ level. This allows for clear identification of the violation with
1465
+ the individual line item.
1466
+
1467
+ Description
1468
+ Textual description of this violation.
1469
+
1470
+ PolicyViolationJustification
1471
+ Justification for this violation given by user normally picked
1472
+ from a standard list of justifications at the Travel Booking
1473
+ Provider web site.
1474
+
1475
+ Comments
1476
+ Additional comments to further clarify the justification given
1477
+ by user.
1478
+
1479
+ level
1480
+ Violation level.
1481
+ warning - a non serious violation.
1482
+ violation - a serious violation of company policy.
1483
+ -->
1484
+ <!ELEMENT PolicyViolation (Description,
1485
+ PolicyViolationJustification,
1486
+ Comments?)>
1487
+ <!ATTLIST PolicyViolation
1488
+ level (warning | violation) #REQUIRED
1489
+ >
1490
+
1491
+ <!--
1492
+ Justification given by the user why they violate the company
1493
+ travel policy. This justification value is normally picked from a
1494
+ pick list at the Travel Booking Provider web site.
1495
+
1496
+ Description
1497
+ The justification of the violation picked from a standard list
1498
+ at the Travel Booking Provider web site.
1499
+ -->
1500
+ <!ELEMENT PolicyViolationJustification (Description)>
1501
+
1502
+ <!--
1503
+ Penalty (if any) for this travel segment
1504
+
1505
+ Money
1506
+ The penalty amount
1507
+
1508
+ Description
1509
+ Textual description of the cause of the penalty. For example,
1510
+ change fee associated with air ticket.
1511
+ -->
1512
+ <!ELEMENT Penalty (Money, Description)>
1513
+
1514
+ <!--
1515
+ Other avaible price. AvailablePrice is used to express what other
1516
+ prices are available that the traveler did not pick.
1517
+ AvailablePrice is can be used to capture the lowest price, the
1518
+ highest price, the lowest compliant price, and the hight compliant
1519
+ price.
1520
+
1521
+ Money
1522
+ The amount of the other available price.
1523
+
1524
+ Description
1525
+ Textual description of the available price. It explain
1526
+ how this price was derived at. For example, a non direct flight
1527
+ exists with the flight number can be put here.
1528
+
1529
+ Type
1530
+ Type of available price. Currently we capture four
1531
+ different type.
1532
+ lowest - The lowest price possible regardless of the
1533
+ traveling policies
1534
+ lowestCompliant - The lowest price that still complies with
1535
+ the travel policies
1536
+ highestCompliant - The highest price that still complies with
1537
+ the travel policies
1538
+ highest - The highest price possible regardless of the travel
1539
+ policies
1540
+ other - Other, specify in the description
1541
+ -->
1542
+ <!ELEMENT AvailablePrice (Money, Description?)>
1543
+ <!ATTLIST AvailablePrice
1544
+ type (lowest | lowestCompliant | highestCompliant | highest | other) #REQUIRED
1545
+ >
1546
+
1547
+ <!--
1548
+ Booking class code used by airfare, car rental, hotel, and rail to
1549
+ indicate the class.
1550
+
1551
+ Description
1552
+ Textual description of the code
1553
+
1554
+ code
1555
+ code
1556
+ -->
1557
+ <!ELEMENT BookingClassCode (Description?)>
1558
+ <!ATTLIST BookingClassCode
1559
+ domain %string; #REQUIRED
1560
+ code %string; #REQUIRED
1561
+ >
1562
+
1563
+ <!--
1564
+ Define a physical location and its address. This can be used to
1565
+ describe places such as airport, bus station, ferry dock, railway
1566
+ station and so on.
1567
+
1568
+ Address
1569
+ Indicates the address of the place
1570
+
1571
+ code
1572
+ Indicates the code the may represent the place. For example,
1573
+ airport can have an airport code.
1574
+
1575
+ domain
1576
+ Qualifier or domain for the code. For example, airport code
1577
+ is IATA standard, the domain value would be "IATA"; however
1578
+ bus station code may be local specific.
1579
+ -->
1580
+ <!ELEMENT Place (Address?)>
1581
+ <!ATTLIST Place
1582
+ code %string; #IMPLIED
1583
+ domain %string; #IMPLIED
1584
+ >
1585
+
1586
+ <!--
1587
+ Defines places such as city, airport or railway where trip or leg originated.
1588
+ -->
1589
+ <!ELEMENT LegOrigin (Place)>
1590
+
1591
+ <!--
1592
+ Defines places such as city, airport or railway code where trip or leg ended.
1593
+ -->
1594
+ <!ELEMENT LegDestination (Place)>
1595
+ <!--
1596
+ For cXML license agreement information, please see
1597
+ http://www.cxml.org/home/license.asp
1598
+
1599
+ $Id: //ariba/cxml/schema/Modules/Transaction.mod#23 $
1600
+ -->
1601
+
1602
+ <!--
1603
+ For better definitions of these Elements/Entities, refer to the cXML
1604
+ Transaction Specification documents.
1605
+ -->
1606
+ <!--
1607
+ Detailed per-unit asset information for a line item.
1608
+
1609
+ Extrinsic
1610
+ Additional per-unit asset information
1611
+
1612
+ serialNumber
1613
+ Manufacturer's serial number for the unit
1614
+
1615
+ tagNumber
1616
+ Asset tag number for the unit
1617
+
1618
+ location
1619
+ location of the unit
1620
+ -->
1621
+ <!ELEMENT AssetInfo (Extrinsic*)>
1622
+ <!ATTLIST AssetInfo
1623
+ tagNumber %string; #IMPLIED
1624
+ serialNumber %string; #IMPLIED
1625
+ location %string; #IMPLIED
1626
+ >
1627
+
1628
+ <!-- Basic transactional elements used throughout -->
1629
+
1630
+ <!--
1631
+ Defines gross amount in posted currency.
1632
+ -->
1633
+ <!ELEMENT TotalAmountInPostedCurrency (Money)>
1634
+
1635
+ <!--
1636
+ Defines gross amount in billing currency. If specified, customer
1637
+ needs to pay this amount.
1638
+ -->
1639
+ <!ELEMENT TotalAmountInBillingCurrency (Money)>
1640
+
1641
+ <!--
1642
+ The bill to for an item.
1643
+ -->
1644
+ <!ELEMENT BillTo (Address)>
1645
+
1646
+ <!--
1647
+ The ship to for a item.
1648
+ -->
1649
+ <!ELEMENT ShipTo (Address)>
1650
+
1651
+ <!--
1652
+ Definition of a cXML Shipping item. Represents a shipping cost in the
1653
+ shopping basket (PunchOutOrderMessage) or an order to the supplier
1654
+ (OrderRequest). There could be one of these for the entire order, or one
1655
+ per lineitem.
1656
+
1657
+ trackingDomain
1658
+ represents the logistics supplier, I.E., "FedEx", "UPS", etc.
1659
+
1660
+ trackingId
1661
+ an optional element value that represents the logistics supplier
1662
+ tracking number
1663
+
1664
+ tracking
1665
+ Deprecated - Do Not Use
1666
+ -->
1667
+ <!ELEMENT Shipping (Money, Description)>
1668
+ <!ATTLIST Shipping
1669
+ trackingDomain %string; #IMPLIED
1670
+ trackingId %string; #IMPLIED
1671
+ tracking %string; #IMPLIED
1672
+ >
1673
+
1674
+ <!--
1675
+ Defines discount applied.
1676
+
1677
+ DiscountAmount
1678
+ The discount expressed as a flat amount with currency.
1679
+
1680
+ DiscountPercent
1681
+ The discount rate expressed as a percentage.
1682
+ -->
1683
+ <!ELEMENT Discount (DiscountPercent | DiscountAmount)>
1684
+
1685
+ <!--
1686
+ Defines the discount rate
1687
+
1688
+ percent
1689
+ The discount rate expressed as a percentage. A negative discount percent
1690
+ represents a penalty.
1691
+ -->
1692
+ <!ELEMENT DiscountPercent EMPTY>
1693
+ <!ATTLIST DiscountPercent
1694
+ percent %r8; #REQUIRED
1695
+ >
1696
+
1697
+ <!--
1698
+ Defines a payment term in an invoice or order. This deprecates the
1699
+ InvoiceDetailPaymentTerm previously defined. Payment term can be the
1700
+ net term (without discount) or discount term (with discount).
1701
+
1702
+ payInNumberOfDays
1703
+ The number of days after invoice effective date for the invoice to be paid.
1704
+
1705
+ Discount
1706
+ The percentage or amount of the discount term. This element should be omitted
1707
+ if the payment term is a net term.
1708
+ -->
1709
+ <!ELEMENT PaymentTerm (Discount?)>
1710
+ <!ATTLIST PaymentTerm
1711
+ payInNumberOfDays %uint; #REQUIRED
1712
+ >
1713
+
1714
+ <!--
1715
+ The list of valid payment types.
1716
+ -->
1717
+ <!ENTITY % cxml.payment "PCard">
1718
+ <!ELEMENT Payment (%cxml.payment;)>
1719
+
1720
+ <!--
1721
+ Defines an accounting segment. Segment is an older, deprecated way to
1722
+ transport this information.
1723
+
1724
+ type
1725
+ The accounting type of this segment.
1726
+
1727
+ id
1728
+ The unique key of this Segment against the type.
1729
+
1730
+ description
1731
+ Textual description of the Segment. For human readability.
1732
+ -->
1733
+ <!ELEMENT Segment EMPTY>
1734
+ <!ATTLIST Segment
1735
+ type %string; #REQUIRED
1736
+ id %string; #REQUIRED
1737
+ description %string; #REQUIRED
1738
+ >
1739
+
1740
+ <!--
1741
+ Defines an accounting segment. AccountingSegment is the newer, better
1742
+ way to transport this information. Name corresponds to the type
1743
+ attribute of Segment; Description corresponds to description. Both add
1744
+ required locale attributes to the strings.
1745
+
1746
+ id
1747
+ The unique key of this Segment against the type.
1748
+ -->
1749
+ <!ELEMENT AccountingSegment ( Name, Description )>
1750
+ <!ATTLIST AccountingSegment
1751
+ id %string; #REQUIRED
1752
+ >
1753
+
1754
+ <!--
1755
+ An accounting object. Use of the Segment element here is deprecated.
1756
+
1757
+ name
1758
+ The name of the object containing the specified accounting segments.
1759
+ -->
1760
+ <!ENTITY % cxml.accounting "( Segment+ | AccountingSegment+ )">
1761
+ <!ELEMENT Accounting (%cxml.accounting;)>
1762
+ <!ATTLIST Accounting
1763
+ name %string; #REQUIRED
1764
+ >
1765
+
1766
+ <!--
1767
+ A charge against an Accounting element.
1768
+ -->
1769
+ <!ELEMENT Charge (Money)>
1770
+
1771
+ <!--
1772
+ The combination of a Charge against an Accounting Element. A distribution
1773
+ represents the breakdown of one overall amount into sub-amounts.
1774
+ -->
1775
+ <!ELEMENT Distribution (Accounting, Charge)>
1776
+
1777
+ <!ELEMENT TaxAmount (Money)>
1778
+
1779
+ <!ELEMENT TaxableAmount (Money)>
1780
+
1781
+ <!--
1782
+ One language-specific string for the location of tax,
1783
+ e.g. London, Canada, California, etc.
1784
+
1785
+ xml:lang
1786
+ The language or locale in which the location of tax is written.
1787
+ -->
1788
+ <!ELEMENT TaxLocation (#PCDATA)> <!-- string -->
1789
+ <!ATTLIST TaxLocation
1790
+ xml:lang %xmlLangCode; #REQUIRED
1791
+ >
1792
+
1793
+ <!--
1794
+
1795
+ TriangularTransactionLawReference indicates the relevant law as
1796
+ titled for the local jurisdiction in the scenario of a triangular
1797
+ transaction. ex: Triangulation, article 28c,E paragraph 3 of the
1798
+ 6th EU VAT Directive
1799
+
1800
+ xml:lang
1801
+ the language in which the law reference is written.
1802
+ -->
1803
+ <!ELEMENT TriangularTransactionLawReference (#PCDATA)>
1804
+ <!ATTLIST TriangularTransactionLawReference
1805
+ xml:lang %xmlLangCode; #REQUIRED
1806
+ >
1807
+
1808
+ <!--
1809
+ Defines details of one type of tax.
1810
+
1811
+ TaxableAmount
1812
+ The taxable amount.
1813
+
1814
+ TaxAmount
1815
+ The tax amount.
1816
+
1817
+ TaxLocation
1818
+ The tax location.
1819
+
1820
+ Description
1821
+ The textual description of the current type of tax.
1822
+
1823
+ TriangularTransactionLawReference
1824
+ The law reference for transactions where isTriangularTransaction is True
1825
+
1826
+ purpose
1827
+ The purpose of the tax, e.g., tax (tax), custom duty, shippingTax,
1828
+ specialHandlingTax, etc.
1829
+
1830
+ category
1831
+ The tax category, Sales tax (sales), Use tax (usage), VAT (vat),
1832
+ GST (gst) are defined categories. Other values are permitted.
1833
+
1834
+ percentageRate
1835
+ The tax rate in number of percentage.
1836
+
1837
+ isVatRecoverable
1838
+ True if the VAT is recoverable. Default is false.
1839
+
1840
+ taxPointDate
1841
+ refers to the date on which VAT becomes due.
1842
+
1843
+ paymentDate
1844
+ indicate the date when payment must be made.
1845
+
1846
+ isTriangularTransaction
1847
+ True if the transaction is triangular. Default is false.
1848
+ -->
1849
+ <!ELEMENT TaxDetail (TaxableAmount?, TaxAmount, TaxLocation?, Description?,
1850
+ TriangularTransactionLawReference?)>
1851
+ <!ATTLIST TaxDetail
1852
+ purpose %string; #IMPLIED
1853
+ category %string; #REQUIRED
1854
+ percentageRate %r8; #IMPLIED
1855
+ isVatRecoverable (yes) #IMPLIED
1856
+ taxPointDate %datetime.tz; #IMPLIED
1857
+ paymentDate %datetime.tz; #IMPLIED
1858
+ isTriangularTransaction (yes) #IMPLIED
1859
+ >
1860
+
1861
+ <!--
1862
+ Definition of a cXML Tax item. This represents what a Tax element should
1863
+ be in the classic notion of a line on a PO or Invoice. It can also
1864
+ represent a per-lineitem tax element depending on where it appears
1865
+ (inside of a item ELEMENT or inside of a something like a supplierOrder
1866
+ ELEMENT).
1867
+
1868
+ Represents a tax item in the shopping basket. There could be one of these
1869
+ for the entire order, or one per lineitem.
1870
+
1871
+ The total amount of taxes for the line item or order should be reflected
1872
+ in the Money element. The breakdown of taxes, for example, tax on shipping
1873
+ or tax on goods should be represented in separate TaxDetail elements.
1874
+ -->
1875
+ <!ELEMENT Tax (Money, Description, TaxDetail*)>
1876
+
1877
+ <!-- Item Elements -->
1878
+ <!--
1879
+ The representation of a line item as it needs to be for sending to a
1880
+ supplier.
1881
+
1882
+ quantity
1883
+ How many items are desired. Supplier and Commodity level items in an order of type
1884
+ "blanket" will use a default value of "1". The quantity in this case will not be
1885
+ used to compute the sub total. The MaxAmount in the BlanketItemDetail will be
1886
+ used to indicate any line level amounts.
1887
+ lineNumber
1888
+ Position (counting from 1) of this item in an order. Used to
1889
+ maintain a reference between items in create and update OrderRequest
1890
+ documents.
1891
+ requisitionID
1892
+ The buyers system requisition id for this line item. It might be the
1893
+ same as orderID, and it might not be included at all. Must not be
1894
+ included if requisitionID is specified in the OrderRequestHeader.
1895
+ requestedDeliveryDate
1896
+ The date this item was requested for delivery.
1897
+ agreementItemNumber
1898
+ The corresponding Item Number of the Item in the Master Agreement if this is
1899
+ a 'release' order item.
1900
+ -->
1901
+ <!ELEMENT ItemOut (ItemID, Path?, (ItemDetail|BlanketItemDetail)?, (SupplierID | SupplierList)?, ShipTo?, Shipping?,
1902
+ Tax?, SpendDetail?, Distribution*, Contact*, Comments?)>
1903
+ <!ATTLIST ItemOut
1904
+ quantity %r8; #REQUIRED
1905
+ lineNumber %uint; #IMPLIED
1906
+ requisitionID %string; #IMPLIED
1907
+ agreementItemNumber %string; #IMPLIED
1908
+ requestedDeliveryDate %date; #IMPLIED
1909
+ isAdHoc (yes) #IMPLIED
1910
+ >
1911
+
1912
+ <!--
1913
+ The representation of a line item as it needs to be for sending to a
1914
+ buyer.
1915
+
1916
+ quantity
1917
+ How many items are desired.
1918
+ lineNumber
1919
+ Position (counting from 1) of this item in an order. Used to
1920
+ maintain a reference between items in create and update OrderRequest
1921
+ documents.
1922
+ -->
1923
+ <!ELEMENT ItemIn (ItemID, Path?, ItemDetail, SupplierID?, ShipTo?, Shipping?, Tax?, SpendDetail?)>
1924
+ <!ATTLIST ItemIn
1925
+ quantity %r8; #REQUIRED
1926
+ lineNumber %uint; #IMPLIED
1927
+ >
1928
+
1929
+ <!--
1930
+ StatusUpdate for Confirmation (type=RequestToPay) request.
1931
+
1932
+ transactionTimestamp
1933
+ time when the XMLPay transaction was submitted
1934
+
1935
+ transactionID
1936
+ an identifier assisgned to the transaction by the payment processing gateway
1937
+
1938
+ authorizationID
1939
+ the authorization code for the transaction provided by the bank
1940
+
1941
+ isFailed
1942
+ should have a status code greater than zero. Zero implies a successful transaction.
1943
+ -->
1944
+ <!ELEMENT PaymentStatus (PCard, Total, Shipping?, Tax?, Extrinsic*)>
1945
+ <!ATTLIST PaymentStatus
1946
+ orderID %string; #REQUIRED
1947
+ transactionTimestamp %datetime.tz; #REQUIRED
1948
+ type (Authorization| Settlement| Sale| Credit) #REQUIRED
1949
+ isFailed (yes) #IMPLIED
1950
+ transactionID %string; #IMPLIED
1951
+ authorizationID %string; #IMPLIED
1952
+ >
1953
+
1954
+ <!--
1955
+ Partial amount paid against an InvoiceDetail request. Used in InvoiceStatus.
1956
+ If this element exists in an InvoiceStatus element, it should mean that the buyer
1957
+ does not pay the full amount as the InvoiceDetail request specified.
1958
+ -->
1959
+ <!ELEMENT PartialAmount (Money)>
1960
+
1961
+ <!--
1962
+ StatusUpdate for InvoiceDetail request.
1963
+
1964
+ InvoiceIDInfo
1965
+ ID of an invoice known to the supplier system. This attribute is used to reference an invoice in StatusUpdateRequest when DocumentReference is omitted.
1966
+
1967
+ PartialAmount
1968
+ The partial amount paid against the InvoiceDetail document. This attribute is
1969
+ only relevant when the status type is "paid".
1970
+
1971
+ Comments
1972
+ Comments associated with the status update.
1973
+
1974
+ type
1975
+ Type of the invoice status.
1976
+ processing - The invoice is received and being processed.
1977
+ canceled - The invoice has been canceled.
1978
+ reconciled - The invoice is reconciled.
1979
+ rejected - The invoice is rejected.
1980
+ paying - The invoice is being paid.
1981
+ paid - The InvoiceDetail request is paid.
1982
+ -->
1983
+
1984
+ <!ELEMENT InvoiceStatus (InvoiceIDInfo?, PartialAmount?, Comments*)>
1985
+ <!ATTLIST InvoiceStatus
1986
+ type (processing | canceled | reconciled | rejected | paying | paid) #REQUIRED
1987
+ >
1988
+
1989
+ <!-- OrderRequest* Elements -->
1990
+ <!--
1991
+ Definition of an order. This is the data that is sent to the supplier
1992
+ to have them place an order in their order management system. The new
1993
+ world order equivalent of a PO.
1994
+ -->
1995
+ <!ELEMENT OrderRequest (OrderRequestHeader, ItemOut+)>
1996
+
1997
+ <!--
1998
+ Header of an order. This is the data that is sent to the supplier
1999
+ to have them place an order in their order management system. Money
2000
+ represents the total amount of this order.
2001
+
2002
+ orderID
2003
+ The buyer system orderID for this request. This is an internal
2004
+ Buyer unique number.
2005
+
2006
+ orderVersion
2007
+ The buyer system order version number for this request. Relevant when
2008
+ the OrderRequest represents a change order request. The version number
2009
+ for the original document should be 1 and should be incremented by 1 for
2010
+ each subsequent version (2,3,4...).
2011
+
2012
+ isInternalVersion
2013
+ A value of yes indicates that this OrderRequest is a version whose changes from
2014
+ the previous version are deemed internal to the buyer system. Relevant when the
2015
+ version being sent to the supplier is not the first version.
2016
+
2017
+ orderDate
2018
+ The date and time the order request was created.
2019
+
2020
+ type
2021
+ The type of the order request. Defaults to "new".
2022
+
2023
+ requisitionID
2024
+ The buyers system requisition id for this entire order. It might be
2025
+ the same as orderID, and it might not be included at all. Must not
2026
+ be included if requisitionID is specified in any ItemOut elements.
2027
+
2028
+ shipComplete
2029
+ Optional preference for "hold until complete" processing. Defaults
2030
+ to shipping when available if not specified. Future versions of the
2031
+ protocol may extend the datatype of this attribute to include
2032
+ additional possible values (such as "unlessGreatlyBackOrdered"?).
2033
+ orderType
2034
+ "release", indicates that this is a Release Order from an existing
2035
+ Master Agreement/ Contract. Default is regular. Type "blanket" indicates
2036
+ that this order is a Blanket Order.
2037
+ releaseRequired
2038
+ "yes" if the blanket order allows released. Currently used only if
2039
+ orderType is "blanket".
2040
+ effectiveDate
2041
+ Date the order is available for ordering. If orderType is "blanket",
2042
+ effectiveDate is required. Otherwise it is optional. Currently only
2043
+ used with blanket orders.
2044
+ expirationDate
2045
+ Date the order is no longer available. If not defined, end date is open
2046
+ ended. Currently only used with blanket orders.
2047
+ agreementID
2048
+ Identifies associated agreement corresponding to the Release Order.
2049
+ At an implementation level it has to be validated that if the orderType
2050
+ is 'release' then the appropriate agreementID is also provided.
2051
+ agreementPayloadID
2052
+ Optional PayloadID for the corresponding Master Agreement.
2053
+
2054
+ parentAgreementID
2055
+ Used only in the context of a Order of type "blanket". This identifies the
2056
+ parent blanket order if the current order is part of an hierarchy.
2057
+
2058
+ parentAgreementPayloadID
2059
+ Optional PayloadID for the corresponding Master Agreement.
2060
+
2061
+ Total
2062
+ If the Order is of type "blanket", the Total element is not used to compute
2063
+ the sum of the item level subtotals. The total is used to indicate the maximum
2064
+ commitment with the supplier. The total will not add upto the individual item
2065
+ level sub total or MaxAmounts. The item level MaxAmounts should not exceed the
2066
+ header level total. If the item level MaxAmount is not specified it is assumed
2067
+ that the Item level maximum amount is the same as the Total.
2068
+
2069
+ The contained DocumentReference element would appear in a document only
2070
+ when the type is "update" or "delete". In that case, the
2071
+ DocumentReference would reference the most recent OrderRequest document
2072
+ for the order. For example when an order is created, updated and then
2073
+ deleted, the final document should contain a DocumentReference
2074
+ referring to the OrderRequest with type="update". That document would,
2075
+ in turn, refer to the original (type="new") OrderRequest document.
2076
+ -->
2077
+ <!ELEMENT OrderRequestHeader (Total, ShipTo?, BillTo, Shipping?, Tax?,
2078
+ Payment?, PaymentTerm*, Contact*, Comments?, Followup?,
2079
+ DocumentReference?, SupplierOrderInfo?, Extrinsic*)>
2080
+ <!ATTLIST OrderRequestHeader
2081
+ orderID %string; #REQUIRED
2082
+ orderDate %datetime.tz; #REQUIRED
2083
+ orderType (release| regular | blanket) "regular"
2084
+ releaseRequired (yes) #IMPLIED
2085
+ type (new | update | delete) "new"
2086
+ orderVersion %number; #IMPLIED
2087
+ isInternalVersion (yes) #IMPLIED
2088
+ parentAgreementID %string; #IMPLIED
2089
+ parentAgreementPayloadID %string; #IMPLIED
2090
+ effectiveDate %datetime.tz; #IMPLIED
2091
+ expirationDate %datetime.tz; #IMPLIED
2092
+ agreementID %string; #IMPLIED
2093
+ agreementPayloadID %string; #IMPLIED
2094
+ requisitionID %string; #IMPLIED
2095
+ shipComplete (yes) #IMPLIED
2096
+ >
2097
+ <!--
2098
+ Definition of a Master Agreement. This is the electronic document representing the
2099
+ Master Agreement that was created and agreed upon in the Buying organizations.
2100
+ -->
2101
+ <!ELEMENT MasterAgreementRequest (MasterAgreementRequestHeader, AgreementItemOut*)>
2102
+
2103
+ <!--
2104
+ Header of an Agreement. This is the header level information in the Agreement.
2105
+ agreementID
2106
+ The buyer system agreementID for this request. the Master Agreement Number in Buyer.
2107
+ agreementDate
2108
+ The date and time the agreement request was created.
2109
+ This is different from the effective and expiry date of the agreement.
2110
+ agreementType
2111
+ Identifies if this is a Value based agreement or quantity based Agreement.
2112
+ requestType
2113
+ The type of the agreement request. Defaults to "new".
2114
+ effectiveDate
2115
+ Date the Master Agreement is available for ordering/releases.
2116
+ expirationDate
2117
+ Date the Master Agreement is no longer available.
2118
+ parentAgreementPayloadID
2119
+ PayloadID for the corresponding parent document that this agreement is derived from.
2120
+ operation:
2121
+ "delete" operation will be used to cancel an existing Master Agreement, the
2122
+ assumption here is that the delete request will be an exact replica of the
2123
+ original request.
2124
+ "new" operation identifies a new MasterAgreement transaction.
2125
+ "update" operation identified an update to an existing transaction.
2126
+ the DocumentReference attribute should be used to indicate the Orignal
2127
+ Document information.
2128
+ Note:
2129
+ Use "Contact" element to supply any additional Address or Location information.
2130
+ -->
2131
+
2132
+ <!ELEMENT MasterAgreementRequestHeader (MaxAmount?, MinAmount?,
2133
+ MaxReleaseAmount?, MinReleaseAmount?,
2134
+ Contact*,Comments?, DocumentReference?, Extrinsic*)>
2135
+ <!ATTLIST MasterAgreementRequestHeader
2136
+ agreementID %string; #REQUIRED
2137
+ agreementDate %datetime.tz; #REQUIRED
2138
+ type (value | quantity) "value"
2139
+ effectiveDate %datetime.tz; #REQUIRED
2140
+ expirationDate %datetime.tz; #REQUIRED
2141
+ parentAgreementPayloadID %string; #IMPLIED
2142
+ operation (new | update | delete) "new"
2143
+ >
2144
+
2145
+ <!--
2146
+ The representation of a agreement line item as it needs to be for sending to a
2147
+ supplier.
2148
+ maxQuantity
2149
+ maximum quantity for this particular lineItem
2150
+ minQuantity
2151
+ minimum quantity for this particular lineItem
2152
+ maxReleaseQuantity
2153
+ maximum quantity per release for this particular lineItem
2154
+ minReleaseQuantity
2155
+ minimum quantity per release for this particular lineItem
2156
+
2157
+ Note :
2158
+ The #lineNumber attribute in the <ItemOut> will be used to specify the corresponding
2159
+ lineNumber on the Master Agreement in the Procurement Application.
2160
+ At an implementation, level checks should be made to validate this.
2161
+ Note :
2162
+ The quantity attribute in the ItemOut tag should be set to one and ignored at
2163
+ the Mater Agreement implementation processing stage.
2164
+ Note :
2165
+ The MaxReleaseAmount/Quantity and MinReleaseAmount/Quantity at an item level i
2166
+ indicate the ItemLevel amounts and quantities per release.
2167
+ -->
2168
+ <!ELEMENT AgreementItemOut (MaxAmount?, MinAmount?, MaxReleaseAmount?, MinReleaseAmount?, ItemOut)>
2169
+ <!ATTLIST AgreementItemOut
2170
+ maxQuantity %r8; #IMPLIED
2171
+ minQuantity %r8; #IMPLIED
2172
+ maxReleaseQuantity %r8; #IMPLIED
2173
+ minReleaseQuantity %r8; #IMPLIED
2174
+ >
2175
+
2176
+ <!--
2177
+ The maximum amount for something.
2178
+ -->
2179
+ <!ELEMENT MaxAmount (Money)>
2180
+
2181
+ <!--
2182
+ The minimum amount for something.
2183
+ -->
2184
+ <!ELEMENT MinAmount (Money)>
2185
+
2186
+ <!--
2187
+ The contractual maximum amount per Release of this Master Agreement.
2188
+ -->
2189
+ <!ELEMENT MaxReleaseAmount (Money)>
2190
+
2191
+ <!--
2192
+ The contractual minimum amount per Release of this Master Agreement
2193
+ -->
2194
+ <!ELEMENT MinReleaseAmount (Money)>
2195
+
2196
+
2197
+ <!--
2198
+ The maximum quantity for something.
2199
+ -->
2200
+ <!ELEMENT MaxQuantity (#PCDATA)> <!-- number -->
2201
+
2202
+ <!--
2203
+ The minimum quantity for something.
2204
+ -->
2205
+ <!ELEMENT MinQuantity (#PCDATA)> <!-- number -->
2206
+
2207
+
2208
+ <!-- Followup
2209
+
2210
+ Location to which future StatusUpdateRequest documents should be
2211
+ posted. In general, this is the input location for any later
2212
+ documents which reference the current OrderRequest document.
2213
+ -->
2214
+ <!ELEMENT Followup (URL)>
2215
+
2216
+ <!-- PunchOut* Elements -->
2217
+ <!--
2218
+ Definition of a PunchOut Setup Request. This is the data that is sent
2219
+ to the external system that the procurement application is going to
2220
+ extract catalog data from.
2221
+
2222
+ The BrowserFormPost element contains the URL we would like the browser
2223
+ re-directed to when the PunchOut shopping experience is finished (where
2224
+ the PunchOutOrder message should be returned).
2225
+ -->
2226
+ <!ELEMENT PunchOutSetupRequest (BuyerCookie, Extrinsic*, BrowserFormPost?,
2227
+ Contact*, SupplierSetup?, ShipTo?,
2228
+ SelectedItem?, ItemOut*)>
2229
+ <!ATTLIST PunchOutSetupRequest
2230
+ operation (create | inspect | edit | source) #REQUIRED
2231
+ >
2232
+
2233
+ <!ELEMENT BuyerCookie ANY> <!-- any valid XML data -->
2234
+
2235
+ <!ELEMENT SelectedItem (ItemID)>
2236
+ <!ELEMENT SupplierSetup (URL)>
2237
+
2238
+ <!ELEMENT PunchOutSetupResponse (StartPage)>
2239
+
2240
+ <!--
2241
+ Definition of a PunchOut Order Message. This is the data that is sent
2242
+ back to the procurement application from the external system that the
2243
+ PunchOut Request was targeted at.
2244
+ -->
2245
+ <!ELEMENT PunchOutOrderMessage (BuyerCookie, PunchOutOrderMessageHeader,
2246
+ ItemIn*)>
2247
+
2248
+ <!--
2249
+ Header of a PunchOut Order Request. This is the data that is sent from
2250
+ the supplier to transfer the supplier acquired shopping basket back to
2251
+ the buyer system.
2252
+
2253
+ operationAllowed
2254
+ Highest operation allowed on the PunchOut shopping basket.
2255
+ "create" allows only later OrderRequest operations on these items.
2256
+ "inspect" adds a PunchOutSetupRequest with operation="inspect".
2257
+ And, "edit" allows operation="edit" in that later Setup request.
2258
+
2259
+ quoteStatus
2260
+ "pending" - Identifies that the transaction is still pending
2261
+ "final" - Identifies that the transaction is complete
2262
+ -->
2263
+ <!ELEMENT PunchOutOrderMessageHeader (SourcingStatus?, Total, ShipTo?, Shipping?, Tax?, SupplierOrderInfo?)>
2264
+ <!ATTLIST PunchOutOrderMessageHeader
2265
+ operationAllowed (create | inspect | edit) #REQUIRED
2266
+ quoteStatus (pending|final) "final"
2267
+ >
2268
+
2269
+ <!-- ====
2270
+ Other small Request elements.
2271
+ ==== -->
2272
+
2273
+ <!--
2274
+ Request to update the status of an earlier transaction.
2275
+
2276
+ DocumentReference
2277
+ A reference by payloadID to a cXML document to be updated. This
2278
+ element can be omitted only when InvoiceStatus is specified and
2279
+ the InvoiceStatus contains InvoiceIDInfo.
2280
+
2281
+ -->
2282
+ <!ENTITY % cxml.statuses "(PaymentStatus |
2283
+ SourcingStatus | InvoiceStatus)">
2284
+ <!ELEMENT StatusUpdateRequest (DocumentReference?, Status, (%cxml.statuses;)?)>
2285
+
2286
+ <!--
2287
+ A reference to an attachment containing cXML document.
2288
+
2289
+ Attachment
2290
+ A reference to the attachment containing a cXML document. The
2291
+ attachment must be either a single, complete cXML document or another
2292
+ MIME envelope containing a single, complete cXML document with
2293
+ attachments.
2294
+ -->
2295
+ <!ELEMENT cXMLAttachment (Attachment)>
2296
+
2297
+ <!--
2298
+ Request to forward a cXML document to another party. This Request
2299
+ occurs in multiple DTD files and is used depending on where (in which
2300
+ DTD) the forwarded message resides.
2301
+
2302
+ cXMLAttachment
2303
+ A reference to the attachment containing the cXML document being
2304
+ forwarded. Refer to cXMLAttachment for more details.
2305
+
2306
+ cXML
2307
+ Deprecated - Do Not Use.
2308
+ -->
2309
+ <!ELEMENT CopyRequest (cXMLAttachment | cXML)>
2310
+
2311
+ <!--
2312
+ Status for a pre-existing sourcing transaction. The textual content indicates
2313
+ the display information. "action" attribute defines the context of this message
2314
+ based on the value.
2315
+
2316
+ approve : Approve the pending transaction
2317
+ deny : deny pending transaction
2318
+ cancel : cancel any preexisting transaction.
2319
+
2320
+ -->
2321
+ <!ELEMENT SourcingStatus (#PCDATA)>
2322
+ <!ATTLIST SourcingStatus
2323
+ action (approve | cancel | deny ) #IMPLIED
2324
+ xml:lang %xmlLangCode; #REQUIRED>
2325
+ <!--
2326
+ For cXML license agreement information, please see
2327
+ http://www.cxml.org/home/license.asp
2328
+
2329
+ $Id: //ariba/cxml/schema/Modules/Transaction.mod#5 $
2330
+ -->
2331
+
2332
+ <!--
2333
+ For better definitions of these Elements/Entities, refer to the cXML
2334
+ Transaction Specification documents.
2335
+ -->
2336
+
2337
+ <!-- Basic financial elements used throughout -->
2338
+
2339
+ <!--
2340
+ The following defines a list of money amounts.
2341
+
2342
+ DepositAmount
2343
+ The amount of deposit or prepayment.
2344
+
2345
+ SubtotalAmount
2346
+ The subtotal amount.
2347
+
2348
+ DiscountAmount
2349
+ Defines the discount amount
2350
+
2351
+ SpecialHandlingAmount
2352
+ The special handling amount.
2353
+
2354
+ ShippingAmount
2355
+ The shipping amount.
2356
+
2357
+ GrossAmount
2358
+ The gross amount.
2359
+
2360
+ NetAmount
2361
+ The net amount.
2362
+
2363
+ DueAmount
2364
+ The due amount.
2365
+
2366
+ FeeAmount
2367
+ Defines gross amount of the fee associated with a purchase
2368
+ in original currency.
2369
+ -->
2370
+ <!ELEMENT DepositAmount (Money)>
2371
+
2372
+ <!ELEMENT SubtotalAmount (Money)>
2373
+
2374
+ <!ELEMENT SpecialHandlingAmount (Money, Description?)>
2375
+
2376
+ <!ELEMENT ShippingAmount (Money)>
2377
+
2378
+ <!ELEMENT GrossAmount (Money)>
2379
+
2380
+ <!ELEMENT NetAmount (Money)>
2381
+
2382
+ <!ELEMENT DueAmount (Money)>
2383
+
2384
+ <!ELEMENT DiscountAmount (Money)>
2385
+
2386
+ <!ELEMENT FeeAmount (Money)>
2387
+
2388
+ <!--
2389
+ Defines a Purchasing Card element used for payment
2390
+ -->
2391
+ <!ELEMENT PCard (PostalAddress?)>
2392
+ <!ATTLIST PCard
2393
+ number %number; #REQUIRED
2394
+ expiration %date; #REQUIRED
2395
+ name %string; #IMPLIED
2396
+ >
2397
+
2398
+ <!--
2399
+ For cXML license agreement information, please see
2400
+ http://www.cxml.org/home/license.asp
2401
+
2402
+ $Id$
2403
+ -->
2404
+
2405
+ <!--
2406
+ This element captures spend detail information. SpendDetail can
2407
+ be used in the ItemIn and ItemOut and for the following types of
2408
+ messages:
2409
+
2410
+ PunchOutSetupRequest
2411
+ PunchOutOrderMessage
2412
+ OrderRequest
2413
+ ConfirmationRequest
2414
+
2415
+ But not for:
2416
+
2417
+ MasterAgreementRequest
2418
+
2419
+ TravelDetail
2420
+ Travel details for the current travel line item.
2421
+
2422
+ LaborDetail
2423
+ Labor details for the current temporary labor line item.
2424
+
2425
+ FeeDetail
2426
+ Fee details for the current fee line item.
2427
+
2428
+ Extrinsic
2429
+ Detail information for the any undefined spend category. The name
2430
+ attribute of the Extrinsic element should specify the type of the
2431
+ spend category (e.g., (PrintDetail, ProjectLaborDetail))
2432
+
2433
+ -->
2434
+ <!ELEMENT SpendDetail (TravelDetail | FeeDetail | LaborDetail | Extrinsic)>
2435
+
2436
+ <!--
2437
+ FeeDetail contains additional information about a line item for a fee,
2438
+ which may or may not be recurring.
2439
+
2440
+ UnitRate
2441
+ The amount(s) to be paid per unit (of time or other measure).
2442
+ In the case of multiple UnitRates (i.e., a "rate schedule"), it is
2443
+ customary and expected that each UnitRate will include a
2444
+ TermReference to distinguish them.
2445
+
2446
+ Period
2447
+ The Period of time over which the fee is charged, if applicable.
2448
+
2449
+ isRecurring
2450
+ Indicates that the fee is recurring (charged more than once).
2451
+ -->
2452
+ <!ELEMENT FeeDetail (UnitRate+, Period?) >
2453
+ <!ATTLIST FeeDetail
2454
+ isRecurring (yes) #IMPLIED
2455
+ >
2456
+ <!--
2457
+ For cXML license agreement information, please see
2458
+ http://www.cxml.org/home/license.asp
2459
+
2460
+ $Id: $
2461
+ -->
2462
+
2463
+ <!--
2464
+ LaborDetail contains information about an item for a temporary
2465
+ labor engagement.
2466
+
2467
+ UnitRate
2468
+ The amount(s) to be paid per unit (of time or other measure).
2469
+ In the case of multiple UnitRates (i.e., a "rate schedule"), it is
2470
+ customary and expected that each UnitRate will include a
2471
+ TermReference to distinguish them.
2472
+
2473
+ Period
2474
+ The Period of time over which the service occurs.
2475
+
2476
+ Contractor
2477
+ Identifies the contractor being engaged
2478
+
2479
+ JobDescription
2480
+ Description of the job or work to be performed.
2481
+
2482
+ Supervisor
2483
+ The person who is expected to supervise the contractor.
2484
+
2485
+ WorkLocation
2486
+ Place where the work is expected to be performed.
2487
+
2488
+ supplierReferenceCode
2489
+ The supplier's quote or proposal id, for cross-reference.
2490
+ -->
2491
+ <!ELEMENT LaborDetail (UnitRate+, Period, Contractor?, JobDescription?, Supervisor?, WorkLocation?, Extrinsic*)>
2492
+ <!ATTLIST LaborDetail
2493
+ supplierReferenceCode %string; #IMPLIED
2494
+ >
2495
+ <!-- Text description of a job (service)-->
2496
+ <!ELEMENT JobDescription (Description)>
2497
+ <!-- Contact information for the person supervising a job (service)-->
2498
+ <!ELEMENT Supervisor (Contact)>
2499
+ <!-- Address of the location where a service is to be performed-->
2500
+ <!ELEMENT WorkLocation (Address)>
2501
+ <!--
2502
+ Definition of a Contractor used in the context of temp labor.
2503
+ The contractor is uniquely identified by a contractor identifier.
2504
+ The piece of identification for a contractor is exchanged between
2505
+ the buyer and the supplier prior to sending out order/timecards.
2506
+ -->
2507
+ <!--
2508
+ Definition of a Contractor used in the context of temp labor.
2509
+ The contractor is uniquely identified by a contractor identifier.
2510
+ The piece of identification for a contractor is exchanged between
2511
+ the buyer and the supplier prior to sending out order/timecards.
2512
+ -->
2513
+ <!ELEMENT Contractor (ContractorIdentifier, Contact)>
2514
+
2515
+ <!--
2516
+ Definition of a ContractorIdentifier. uniquely identifies a contractor.
2517
+
2518
+ domain
2519
+ in what domain the identity is represented. This is for the
2520
+ end systems to know who assigned the id. buyerReferenceID
2521
+ implies that it is something generated by the buyer system
2522
+ and supplierReferenceID implies that it is something generated
2523
+ by the supplier system/entered by the supplier.
2524
+ -->
2525
+ <!ELEMENT ContractorIdentifier (#PCDATA)>
2526
+ <!ATTLIST ContractorIdentifier
2527
+ domain (supplierReferenceID|buyerReferenceID) #REQUIRED
2528
+ >
2529
+
2530
+ <!--
2531
+ For cXML license agreement information, please see
2532
+ http://www.cxml.org/home/license.asp
2533
+
2534
+ $Id: //ariba/cxml/schema/Modules/Reference.mod#6 $
2535
+ -->
2536
+
2537
+ <!--
2538
+ For better definitions of these Elements/Entities, refer to the cXML
2539
+ User's Guide and related documents.
2540
+ -->
2541
+
2542
+ <!--
2543
+ The OrderReference element provides a clear reference to a prior
2544
+ OrderRequest document. While the contained DocumentReference provides
2545
+ an unambiguous reference, the additional attributes of the
2546
+ OrderReference may allow the ConfirmationRequest and ShipNoticeRequest
2547
+ to be viewed independently.
2548
+
2549
+ orderID
2550
+ The buyer system orderID for this request. Basically, what the PO
2551
+ number is today. If present, must be copied directly from the
2552
+ referenced OrderRequest document's OrderRequestHeader.
2553
+ orderDate
2554
+ The date and time the order request was created. If present, must
2555
+ be copied directly from the referenced OrderRequest document's
2556
+ OrderRequestHeader.
2557
+ -->
2558
+ <!ELEMENT OrderReference (DocumentReference)>
2559
+ <!ATTLIST OrderReference
2560
+ orderID %string; #IMPLIED
2561
+ orderDate %datetime.tz; #IMPLIED
2562
+ >
2563
+
2564
+ <!--
2565
+ Defines the ID of an order known to the buyer system.
2566
+
2567
+ orderID
2568
+ The id of an order known to the buyer system. Basically,
2569
+ what the PO number is today.
2570
+
2571
+ orderDate
2572
+ The date and time the order was created.
2573
+ -->
2574
+ <!ELEMENT OrderIDInfo EMPTY>
2575
+ <!ATTLIST OrderIDInfo
2576
+ orderID %string; #REQUIRED
2577
+ orderDate %datetime.tz; #IMPLIED
2578
+ >
2579
+
2580
+ <!--
2581
+ Defines information related to an order.
2582
+
2583
+ OrderReference
2584
+ The reference to the order being paid.
2585
+
2586
+ OrderIDInfo
2587
+ The buyer system order id of the order.
2588
+ -->
2589
+ <!ELEMENT OrderInfo (OrderReference | OrderIDInfo)>
2590
+
2591
+
2592
+ <!--
2593
+ The InvoiceReference element provides a clear reference to a prior
2594
+ InvoiceDetailRequest document.
2595
+
2596
+ invoiceID
2597
+ The suplier system invoiceID for this request. Basically, what
2598
+ the Invoice number is today. If present, must be copied
2599
+ directly from the referenced InvoiceDetailRequest document's
2600
+ InvoiceDetailRequestHeader.
2601
+
2602
+ invoiceDate
2603
+ The invoice date.
2604
+ -->
2605
+ <!ELEMENT InvoiceReference (DocumentReference)>
2606
+ <!ATTLIST InvoiceReference
2607
+ invoiceID %string; #IMPLIED
2608
+ invoiceDate %datetime.tz; #IMPLIED
2609
+ >
2610
+
2611
+ <!--
2612
+ Defines the ID of an invoice known to the supplier system.
2613
+
2614
+ invoiceID
2615
+ The id of an invoice known to the supplier system.
2616
+
2617
+ invoiceDate
2618
+ The invoice date.
2619
+ -->
2620
+ <!ELEMENT InvoiceIDInfo EMPTY>
2621
+ <!ATTLIST InvoiceIDInfo
2622
+ invoiceID %string; #REQUIRED
2623
+ invoiceDate %datetime.tz; #IMPLIED
2624
+ >
2625
+
2626
+ <!--
2627
+ Defines the ID of a master agreement known to the buyer system.
2628
+ In InvoiceDetailRequest, this element identifies the master agreement
2629
+ of the release order to be invoiced.
2630
+
2631
+ agreementID
2632
+ The id of a master agreement known to the buyer system. Basically,
2633
+ what the master agreement number is today.
2634
+
2635
+ agreementDate
2636
+ The date and time the master agreement request was created.
2637
+ -->
2638
+ <!ELEMENT MasterAgreementIDInfo EMPTY>
2639
+ <!ATTLIST MasterAgreementIDInfo
2640
+ agreementID %string; #REQUIRED
2641
+ agreementDate %datetime.tz; #IMPLIED
2642
+ >
2643
+
2644
+ <!--
2645
+ Defines a reference to an earlier MasterAgreementRequest document.
2646
+ In InvoiceDetailRequest, this element identifies the master agreement
2647
+ of the release order to be invoiced.
2648
+
2649
+ DocumentReference
2650
+ The reference to an earlier MasterAgreementRequest document.
2651
+
2652
+ agreementID
2653
+ The id of a master agreement known to the buyer system. Basically,
2654
+ what the master agreement number is today.
2655
+
2656
+ agreementDate
2657
+ The date and time the master agreement request was created.
2658
+ -->
2659
+ <!ELEMENT MasterAgreementReference (DocumentReference)>
2660
+ <!ATTLIST MasterAgreementReference
2661
+ agreementID %string; #IMPLIED
2662
+ agreementDate %datetime.tz; #IMPLIED
2663
+ >
2664
+
2665
+ <!--
2666
+ Identifies the carrier who will transport a shipment.
2667
+
2668
+ domain
2669
+ Domain in which this value has meaning. Recognized domains
2670
+ include:
2671
+ companyName - The legal name for this company. In some cases, this
2672
+ could also be provided in a Contact element with role
2673
+ "carrierCorporate". That option should be reserved for cases
2674
+ in which additional detail about the carrier appears in this
2675
+ element.
2676
+ SCAC - Standard Carrier Alpha Code (see
2677
+ http://users.erols.com/nmfta/Codes.htm)
2678
+ IATA - International Air Transport Association (see
2679
+ http://www.iata.org)
2680
+ AAR - Association of American Railroads (see http://www.aar.org/)
2681
+ UIC - International Union of Railways (see
2682
+ http://www.uic.asso.fr/)
2683
+ EAN - European Article Numbering (see http://www.ean-ucc.org/)
2684
+ DUNS - D&B's Data Universal Numbering System (see
2685
+ http://www.dnb.com/dnbhome.htm)
2686
+ -->
2687
+ <!ELEMENT CarrierIdentifier (#PCDATA)> <!-- string -->
2688
+ <!ATTLIST CarrierIdentifier
2689
+ domain %string; #REQUIRED
2690
+ >
2691
+
2692
+ <!--
2693
+ Identifier that appears on a shipment and through which additional
2694
+ detail about the shipment may be retrieved. Defined by the carrier.
2695
+ Has meaning in the domain described by the CarrierIdentifier values.
2696
+ Therefore, CarrierIdentifier and ShipmentIdentifier should normally
2697
+ be used together.
2698
+
2699
+ Conceptually, this is a tracking number. Different carriers have
2700
+ different names for shipment identifiers. Some call it a way bill
2701
+ number, others call it a pro number, and still others call it a bill of
2702
+ lading. They all represent tracking numbers.
2703
+ -->
2704
+ <!ELEMENT ShipmentIdentifier (#PCDATA)> <!-- string -->
2705
+
2706
+
2707
+ <!--
2708
+ One language-specific string for the creator of an IdReference,
2709
+ e.g. IRS, BofA, UPS, Cisco, etc.
2710
+
2711
+ xml:lang
2712
+ The language or locale in which the name of the creator is written.
2713
+ -->
2714
+ <!ELEMENT Creator (#PCDATA)> <!-- string -->
2715
+ <!ATTLIST Creator
2716
+ xml:lang %xmlLangCode; #REQUIRED
2717
+ >
2718
+
2719
+ <!--
2720
+ Defines an ID reference. Within the application context (for example,
2721
+ a certain pair of buyer and supplier), the (identifier, domain) pair
2722
+ should be unique.
2723
+
2724
+ Creator
2725
+ The creator of this IdReference, e.g. BofA, UPS, Cisco, etc.
2726
+
2727
+ Description
2728
+ Textual description of the IdReference. For human readability.
2729
+
2730
+ identifier
2731
+ The unique identifier of the IdReference within the domain.
2732
+
2733
+ domain
2734
+ The domain of the IdReference. It should be one of the
2735
+ following:
2736
+ accountID, bankRoutingID, accountPayableID,
2737
+ accountReceivableID, bankAccountID, ibanID, abaRoutingNumber,
2738
+ bankNationalID, isoBicID, swiftID, bankBranchID, federalTaxID,
2739
+ stateTaxID, provincialTaxID, vatID, gstID, and taxExemptionID.
2740
+ supplierTaxID is deprecated and will be treated as federalTaxID.
2741
+ Other possible values could be 1099ID, courtRegisterID, etc.
2742
+ -->
2743
+ <!ELEMENT IdReference (Creator?, Description?)>
2744
+ <!ATTLIST IdReference
2745
+ identifier %string; #REQUIRED
2746
+ domain %string; #REQUIRED
2747
+ >
2748
+
2749
+ <!--
2750
+ Defines supplier sales order information related to an order.
2751
+
2752
+ This is also used in PunchOutOrderMessage to indicate that the
2753
+ supplier has created an order associated with the punchout order message.
2754
+ The buyer can later cancel the sales order by sending an OrderRequest
2755
+ of type "delete" that refers to the sales order by including the
2756
+ SupplierOrderInfo element in the OrderRequestHeader
2757
+
2758
+ orderID
2759
+ Supplier sales order id of this order.
2760
+ -->
2761
+ <!ELEMENT SupplierOrderInfo EMPTY>
2762
+ <!ATTLIST SupplierOrderInfo
2763
+ orderID %string; #REQUIRED
2764
+ >
2765
+
2766
+
2767
+ <!--
2768
+ The ShipNoticeReference element provides a clear reference to a prior
2769
+ ShipNoticeRequest document. While the contained DocumentReference provides
2770
+ an unambiguous reference, the additional attributes of the
2771
+ ShipNoticeReference may allow the ReceiptRequest to be viewed independently.
2772
+
2773
+ DocumentReference
2774
+ The reference to an earlier ShipNoticeRequest.
2775
+
2776
+ shipNoticeID
2777
+ Unique identifier of the referenced ShipNoticeRequest.
2778
+
2779
+ shipNoticeDate
2780
+ Date and time of the referenced ShipNoticeRequest.
2781
+ -->
2782
+ <!ELEMENT ShipNoticeReference (DocumentReference)>
2783
+ <!ATTLIST ShipNoticeReference
2784
+ shipNoticeID %string; #IMPLIED
2785
+ shipNoticeDate %datetime.tz; #IMPLIED
2786
+ >
2787
+
2788
+ <!--
2789
+ Defines ID of a Ship Notice known to the Buyer system.
2790
+
2791
+ shipNoticeID
2792
+ Unique identifier of the referenced ShipNoticeRequest.
2793
+
2794
+ shipNoticeDate
2795
+ Date and time of the referenced ShipNoticeRequest.
2796
+ -->
2797
+ <!ELEMENT ShipNoticeIDInfo EMPTY>
2798
+ <!ATTLIST ShipNoticeIDInfo
2799
+ shipNoticeID %string; #REQUIRED
2800
+ shipNoticeDate %datetime.tz; #IMPLIED
2801
+ ><!--
2802
+ For cXML license agreement information, please see
2803
+ http://www.cxml.org/home/license.asp
2804
+
2805
+ $Id: //ariba/cxml/schema/Modules/Entities.mod#5 $
2806
+ -->
2807
+
2808
+ <!--
2809
+ Top-level entities used in Transport.mod. Defined here to allow easy
2810
+ extention of the cXML specification (using additional DTDs) without
2811
+ redefining these entities.
2812
+ -->
2813
+
2814
+ <!-- cxml.messages
2815
+ Possible elements (for particular situations) within Message. These
2816
+ are all of the messages defined in the base cXML protocol.
2817
+ -->
2818
+ <!ENTITY % cxml.messages ",(PunchOutOrderMessage |
2819
+ ProviderDoneMessage |
2820
+ SubscriptionChangeMessage |
2821
+ DataAvailableMessage |
2822
+ SupplierChangeMessage |
2823
+ OrganizationChangeMessage)"
2824
+ >
2825
+
2826
+ <!-- cxml.requests
2827
+ Possible elements (for particular situations) within Request. These
2828
+ are all of the requests defined in the base cXML protocol.
2829
+ -->
2830
+ <!ENTITY % cxml.requests "(ProfileRequest |
2831
+ OrderRequest |
2832
+ MasterAgreementRequest|
2833
+ PunchOutSetupRequest |
2834
+ ProviderSetupRequest |
2835
+ StatusUpdateRequest |
2836
+ GetPendingRequest |
2837
+ SubscriptionListRequest |
2838
+ SubscriptionContentRequest |
2839
+ SupplierListRequest |
2840
+ SupplierDataRequest |
2841
+ SubscriptionStatusUpdateRequest |
2842
+ CopyRequest |
2843
+ CatalogUploadRequest |
2844
+ AuthRequest |
2845
+ DataRequest |
2846
+ OrganizationDataRequest)"
2847
+ >
2848
+
2849
+ <!-- cxml.responses
2850
+ Possible elements (for particular situations) within Response. These
2851
+ are all of the responses (corresponding to a subset of the possible
2852
+ requests) defined in the base cXML protocol.
2853
+ -->
2854
+ <!ENTITY % cxml.responses ",(ProfileResponse |
2855
+ PunchOutSetupResponse |
2856
+ ProviderSetupResponse |
2857
+ GetPendingResponse |
2858
+ SubscriptionListResponse |
2859
+ SubscriptionContentResponse |
2860
+ SupplierListResponse |
2861
+ SupplierDataResponse |
2862
+ AuthResponse |
2863
+ DataResponse |
2864
+ OrganizationDataResponse)?"
2865
+ >
2866
+ <!--
2867
+ For cXML license agreement information, please see
2868
+ http://www.cxml.org/home/license.asp
2869
+
2870
+ $Id: //ariba/cxml/schema/Modules/Profile.mod#1 $
2871
+ -->
2872
+
2873
+ <!--
2874
+ Request for the latest profile from the server. May also be used as
2875
+ a 'ping' transaction (to check if the server is available).
2876
+ -->
2877
+ <!ELEMENT ProfileRequest EMPTY >
2878
+
2879
+ <!--
2880
+ Static profile response describing the transactions supported by this
2881
+ server. The content should not change frequently.
2882
+
2883
+ effectiveDate
2884
+ When these services were first available. Should not be in the
2885
+ future since new clients may need to interact with a server.
2886
+
2887
+ lastRefresh
2888
+ When service information was last received from the end server.
2889
+
2890
+ a-dtype
2891
+ Datatype enumeration for the attributes of this element. May be
2892
+ ignored by most XML parsers (used for documentation purposes).
2893
+ -->
2894
+ <!ELEMENT ProfileResponse ( Option*, Transaction+ )>
2895
+ <!ATTLIST ProfileResponse
2896
+ effectiveDate %datetime.tz; #REQUIRED
2897
+ lastRefresh %datetime.tz; #IMPLIED
2898
+ a-dtype NMTOKENS #FIXED 'effectiveDate dateTime.tz
2899
+ lastRefresh dateTime.tz'
2900
+ >
2901
+
2902
+
2903
+ <!--
2904
+ Value for a defined option (either for the overall service or a
2905
+ specific transaction. At this time, no options are defined at either
2906
+ level.
2907
+
2908
+ name
2909
+ The name of this option. Future versions of cXML will define
2910
+ values for this attribute. This is not intended to be viewed
2911
+ directly (the profile is intended mostly for machine consumption).
2912
+
2913
+ a-dtype
2914
+ Datatype enumeration for the attributes of this element. May be
2915
+ ignored by most XML parsers (used for documentation purposes).
2916
+ -->
2917
+ <!ELEMENT Option ( #PCDATA )> <!-- string -->
2918
+ <!ATTLIST Option
2919
+ name %string; #REQUIRED
2920
+ a-dtype NMTOKENS #FIXED 'name string'
2921
+ >
2922
+
2923
+ <!--
2924
+ A transaction supported by this server.
2925
+
2926
+ requestName
2927
+ A specific request this server accepts at the given URL. The
2928
+ %cxml.requests entity (defined in transport.mod) contains the
2929
+ possible values for this attribute.
2930
+
2931
+ a-dtype
2932
+ Datatype enumeration for the attributes of this element. May be
2933
+ ignored by most XML parsers (used for documentation purposes).
2934
+ -->
2935
+ <!ELEMENT Transaction ( URL, Option* )>
2936
+ <!ATTLIST Transaction
2937
+ requestName %nmtoken; #REQUIRED
2938
+ a-dtype NMTOKENS #FIXED 'requestName NMTOKEN'
2939
+ >
2940
+ <!--
2941
+ For cXML license agreement information, please see
2942
+ http://www.cxml.org/home/license.asp
2943
+
2944
+ $Id: //ariba/cxml/schema/Modules/Transport.mod#6 $
2945
+ -->
2946
+
2947
+ <!--
2948
+ For better definitions of these Elements/Entities, refer to the cXML
2949
+ Protocol Specification documents.
2950
+ -->
2951
+
2952
+ <!--
2953
+ Defines the set of known valid cXML digital signature versions
2954
+ -->
2955
+ <!ENTITY % cxml.signatureVersions "(1.0)">
2956
+
2957
+ <!--
2958
+ cXML envelope
2959
+
2960
+ version
2961
+ Version of this cXML transmission. Should be less than or equal
2962
+ to the version portion of the SYSTEM identifier for this document.
2963
+
2964
+ payloadID
2965
+ A unique identifier for this document.
2966
+
2967
+ timestamp
2968
+ The date and time at which this document was originally created.
2969
+
2970
+ signatureVersion
2971
+ If present, specifies the cXML digital signature version to
2972
+ which this document conforms. This implies that the
2973
+ ds:Signature element must be present. It is an error if this
2974
+ attribute is present and the document does not conform to the
2975
+ specified signature version. If absent, the document is not
2976
+ signed.
2977
+
2978
+ xml:lang
2979
+ The default locale for all strings (not formatted items such as
2980
+ dates, times and numbers) in this document. This attribute will be
2981
+ required in a future version of cXML. (Leaving it out is
2982
+ deprecated.)
2983
+ -->
2984
+ <!ELEMENT cXML (((Header, (Message | Request)) | Response), ds:Signature*)>
2985
+ <!ATTLIST cXML
2986
+ version %string; "&cxml.version;"
2987
+ payloadID %string; #REQUIRED
2988
+ timestamp %datetime.tz; #REQUIRED
2989
+ signatureVersion %cxml.signatureVersions; #IMPLIED
2990
+ xml:lang %xmlLangCode; #IMPLIED
2991
+ >
2992
+
2993
+ <!-- header -->
2994
+ <!ELEMENT Header (From, To, Sender, (Path, OriginalDocument)?)>
2995
+
2996
+ <!ELEMENT From (Credential+, Correspondent?)>
2997
+ <!ELEMENT To (Credential+, Correspondent?)>
2998
+ <!ELEMENT Sender (Credential+, UserAgent)>
2999
+
3000
+ <!--
3001
+ Path. A list of nodes that records the path taken by a user through
3002
+ a punchout chaining scenario.
3003
+ -->
3004
+ <!ELEMENT Path (Node+)>
3005
+
3006
+ <!--
3007
+ A Node is any entity connected to a Network.
3008
+
3009
+ type
3010
+ A node can define itself as a router node or a copy node. Routers
3011
+ assume responsibility for the transaction. Copy Nodes request to only
3012
+ be aware of the transaction.
3013
+
3014
+ itemDetailsRequired
3015
+ Intermediary Nodes may want to support special operations without
3016
+ having to store specific information required to fulfill that operation.
3017
+ This attribute tells the previous node to send ItemDetail information
3018
+ when performing a PunchOutSetupRequest edit/inspect operation.
3019
+ -->
3020
+ <!ELEMENT Node (Credential+)>
3021
+ <!ATTLIST Node
3022
+ type (copy | route) #REQUIRED
3023
+ itemDetailsRequired (yes) #IMPLIED
3024
+ >
3025
+
3026
+
3027
+ <!--
3028
+ Identifies the previous document in the situation that a router node
3029
+ forwards a message or request on to a more distant node.
3030
+
3031
+ payloadID
3032
+ The payloadId of the original document.
3033
+ -->
3034
+ <!ELEMENT OriginalDocument EMPTY>
3035
+ <!ATTLIST OriginalDocument
3036
+ payloadID %string; #REQUIRED
3037
+ >
3038
+
3039
+ <!--
3040
+ A textual string representing who the UserAgent is conducting the cXML
3041
+ conversation. Analogous to UserAgent for HTTP conversations.
3042
+ -->
3043
+ <!ELEMENT UserAgent (#PCDATA)>
3044
+
3045
+ <!--
3046
+ DEPRECATED
3047
+ Do not use this element.
3048
+ -->
3049
+ <!ELEMENT DigitalSignature ANY>
3050
+ <!ATTLIST DigitalSignature
3051
+ type %string; "PK7 self-contained"
3052
+ encoding %string; "Base64"
3053
+ >
3054
+
3055
+ <!--
3056
+ A shared secret. Typically, this is a username/password type of secret
3057
+ exchanged through a secure transport before communication takes place.
3058
+ -->
3059
+ <!ELEMENT SharedSecret ANY>
3060
+
3061
+ <!--
3062
+ Represents an identity for a credential.
3063
+
3064
+ lastChangedTimestamp
3065
+ When the underlying object last changed in the originating system.
3066
+ This is used in cases where the same object (e.g. a buyer
3067
+ organization) is replicated, and kept synchronized, across two
3068
+ systems.
3069
+ -->
3070
+ <!ELEMENT Identity ANY>
3071
+ <!ATTLIST Identity
3072
+ lastChangedTimestamp %datetime.tz; #IMPLIED
3073
+ >
3074
+
3075
+ <!--
3076
+ A Credential Message Authentication Code (MAC). This is used in
3077
+ situations where one party (the sender) must prove to another (the
3078
+ receiver) that it is authenticated by a shared secret with a third
3079
+ party trusted by both.
3080
+
3081
+ The MAC should be computed by the trusted third party and
3082
+ transferred to the sender. The MAC should be opaque to the sender
3083
+ (i.e., it should be secure and non-reversible). The MAC should
3084
+ use as its inputs enough information to accomplish the following
3085
+ goals:
3086
+
3087
+ (1) The MAC must prove to the receiver that it really originated
3088
+ with the trusted third party. E.g., the MAC could use a shared
3089
+ secret between the receiver and the trusted third party as its
3090
+ secret key.
3091
+
3092
+ (2) The MAC should be usable only by a certain sender. E.g., the
3093
+ MAC could authenticate an identifier for the sending organization.
3094
+
3095
+ (3) The MAC should prove that the sender is authorized to send on
3096
+ behalf of the From organization. E.g., the MAC could authenticate
3097
+ an identifier for the From organization.
3098
+
3099
+ (4) The MAC should limit the risk of the MAC being compromised and
3100
+ used to impersonate the sender by another party communicating with
3101
+ the receiver. E.g., the MAC could authenticate an expiration date
3102
+ or sequence number.
3103
+
3104
+ type
3105
+ An implementation-dependent identifier for the exact data
3106
+ being authenticated and the method in which it is formatted
3107
+ for authentication. Currently the only supported value is
3108
+ "FromSenderCredentials".
3109
+
3110
+ algorithm
3111
+ An implementation-dependent identifier for the exact MAC
3112
+ algorithm used on the data. Currently the only supported
3113
+ value is "HMAC-SHA1-96".
3114
+
3115
+ creationDate
3116
+ The time at which this MAC was issued. The receiver must not
3117
+ accept the MAC before this time.
3118
+
3119
+ expirationDate
3120
+ The time at which this MAC expires. The receiver must not
3121
+ accept the MAC after this time.
3122
+ -->
3123
+ <!ELEMENT CredentialMac (#PCDATA)>
3124
+ <!ATTLIST CredentialMac
3125
+ type %string; #REQUIRED
3126
+ algorithm %string; #REQUIRED
3127
+ creationDate %datetime.tz; #REQUIRED
3128
+ expirationDate %datetime.tz; #REQUIRED
3129
+ >
3130
+
3131
+ <!--
3132
+ A combination of an Identity and authentication element. If the
3133
+ authentication element is present, it strongly authenticates who/what
3134
+ someone is. The authentication element should not be sent within Message
3135
+ documents transported via an end user's browser. One-way communication
3136
+ must be authenticated in the transport layer.
3137
+
3138
+ domain
3139
+ In what domain is this Credential represented?
3140
+ type
3141
+ Does this Credential identify a marketplace or one of its member
3142
+ companies? A Credential without this attribute describes a member
3143
+ company or unaffiliated buying organization.
3144
+ -->
3145
+ <!ENTITY % cxml.authentication "SharedSecret |
3146
+ DigitalSignature |
3147
+ CredentialMac"
3148
+ >
3149
+ <!ELEMENT Credential (Identity, (%cxml.authentication;)?)>
3150
+ <!ATTLIST Credential
3151
+ domain %string; #REQUIRED
3152
+ type (marketplace) #IMPLIED
3153
+ >
3154
+
3155
+ <!--
3156
+ Status of a Response or Message. If present, the element content
3157
+ describes specifics of a problem.
3158
+
3159
+ code
3160
+ HTTP or cXML-specific status code.
3161
+
3162
+ text
3163
+ Textual version of the status code (not specific issue).
3164
+
3165
+ xml:lang
3166
+ The language in which the text attribute and element content are
3167
+ written. This attribute will be required in a future version of
3168
+ cXML. (Leaving it out is deprecated.)
3169
+ -->
3170
+ <!ELEMENT Status (#PCDATA)>
3171
+ <!ATTLIST Status
3172
+ code %uint; #REQUIRED
3173
+ text %string; #REQUIRED
3174
+ xml:lang %xmlLangCode; #IMPLIED
3175
+ >
3176
+
3177
+ <!--
3178
+ Message
3179
+
3180
+ When Status not present, '<Status code="200" text="OK" />' is implied.
3181
+ -->
3182
+ <!ELEMENT Message (Status? %cxml.messages;)>
3183
+ <!ATTLIST Message
3184
+ deploymentMode (production | test) "production"
3185
+ inReplyTo %string; #IMPLIED
3186
+ Id ID #IMPLIED
3187
+ >
3188
+
3189
+ <!-- request -->
3190
+ <!ELEMENT Request (%cxml.requests;)>
3191
+ <!ATTLIST Request
3192
+ deploymentMode (production | test) "production"
3193
+ Id ID #IMPLIED
3194
+ >
3195
+
3196
+ <!-- response -->
3197
+ <!ELEMENT Response (Status %cxml.responses;)>
3198
+ <!ATTLIST Response
3199
+ Id ID #IMPLIED
3200
+ >
3201
+
3202
+ <!--
3203
+ This element includes signed cXML-specific details about the
3204
+ document being signed. When a cXML document is signed, this
3205
+ element must appear inside the first ds:Object element in the
3206
+ ds:Signature element.
3207
+
3208
+ signatureVersion
3209
+ This specifies the cXML signature version to which this
3210
+ document conforms. It is an error if this attribute value
3211
+ does not exactly match the value of the signatureVersion
3212
+ attribute from the top-level cXML element. It is an error if
3213
+ the document does not conform to the specified cXML signature
3214
+ version.
3215
+
3216
+ payloadID
3217
+ Specifies the payloadID of the document. It is an error if
3218
+ the value of this attribute does not exactly match the value
3219
+ of the payloadID attribute from the top-level cXML element.
3220
+
3221
+ Id
3222
+ This identifies this cXMLSignedInfo element for purposes of
3223
+ the signature. This attribute must always be present and
3224
+ should always have the value "cXMLSignedInfo"
3225
+
3226
+ -->
3227
+ <!ELEMENT cXMLSignedInfo EMPTY>
3228
+ <!ATTLIST cXMLSignedInfo
3229
+ signatureVersion %cxml.signatureVersions; #REQUIRED
3230
+ payloadID %string; #REQUIRED
3231
+ Id ID #REQUIRED
3232
+ >
3233
+
3234
+ <!--
3235
+ This element includes the contact information of the organisation
3236
+ to/from whom the document is sent/received.
3237
+
3238
+ preferredLanguage
3239
+ optional language which the organisation, identified by this
3240
+ element, would prefer to use. Refer to the definition of
3241
+ xmlLangCode entity.
3242
+ -->
3243
+ <!ELEMENT Correspondent (Contact+, Extrinsic*)>
3244
+ <!ATTLIST Correspondent
3245
+ preferredLanguage %xmlLangCode; #IMPLIED
3246
+ ><!--
3247
+ For cXML license agreement information, please see
3248
+ http://www.cxml.org/home/license.asp
3249
+
3250
+ $Id: //ariba/cxml/modules/Contract.mod#6 $
3251
+ -->
3252
+
3253
+ <!--
3254
+ Use of the Contract element is deprecated
3255
+
3256
+ A mechanism for sending static contract pricing information.
3257
+ -->
3258
+ <!ELEMENT Contract (SupplierID+, Comments?, ItemSegment+)>
3259
+ <!ATTLIST Contract
3260
+ effectiveDate %datetime.tz; #REQUIRED
3261
+ expirationDate %datetime.tz; #REQUIRED
3262
+ >
3263
+
3264
+ <!--
3265
+ Use of the ItemSegment element is deprecated.
3266
+
3267
+ Defines an item segment for the index. An item segment is an
3268
+ overlay for index items, allowing suppliers to override certain
3269
+ item attributes on a per-contract basis.
3270
+
3271
+ Items may be segmented by some agreed-upon user-specific key that
3272
+ is used to determine who is eligible for these particular overlaid
3273
+ attributes (such as reduced or different prices). Omitting the
3274
+ segmentKey indicates that the supplier wishes to set the given
3275
+ contract price system wide (for all users).
3276
+
3277
+ segmentKey - optional agreed-upon string used to segment
3278
+ custom prices
3279
+ -->
3280
+ <!ELEMENT ItemSegment (ContractItem+)>
3281
+ <!ATTLIST ItemSegment
3282
+ segmentKey %string; #IMPLIED
3283
+ >
3284
+
3285
+ <!--
3286
+ Use of the ContractItem element is deprecated
3287
+
3288
+ A particular (custom) item overlay for a index item. The item is
3289
+ referenced by the supplierPartID.
3290
+
3291
+ ItemID - ID for the part to be overlaid.
3292
+ UnitPrice - Contract price for item
3293
+ Extrinsic - Named overlay. The Extrinsic should be named with the
3294
+ item field name it is to overlay. The Extrinsic must contain a
3295
+ <value> element which supplies the replacement value for the item
3296
+ field.
3297
+ For example:
3298
+ <ContractItem>
3299
+ <ItemID>
3300
+ <SupplierPartID>123456</SupplierPartID>
3301
+ </ItemID>
3302
+ <Extrinsic name="URL">http://www.newaddress.com</Extrinsic>
3303
+ </ContractItem>
3304
+ -->
3305
+ <!ELEMENT ContractItem (ItemID, UnitPrice?, Extrinsic*)>
3306
+ <!--
3307
+ For cXML license agreement information, please see
3308
+ http://www.cxml.org/home/license.asp
3309
+
3310
+ $Id: //ariba/cxml/schema/Modules/Index.mod#6 $
3311
+ -->
3312
+
3313
+ <!--
3314
+ IndexItemAdd is the element used to insert an item in an index.
3315
+
3316
+ ItemID - uniquely identifies the item
3317
+ ItemDetail - general information about the item
3318
+ IndexItemDetail - Index specific item detail
3319
+
3320
+ Note that for historical reasons there is a LeadTime element in
3321
+ both ItemDetail and IndexItemDetail. For interoperability, it is
3322
+ recommended to specify the same value in both LeadTime elements.
3323
+ If different values are specified in the different LeadTime
3324
+ elements for the same IndexItemAdd, the meaning of this is
3325
+ undefined.
3326
+ -->
3327
+ <!ELEMENT IndexItemAdd (ItemID, ItemDetail, IndexItemDetail)>
3328
+ <!--
3329
+ IndexItemDelete is the element used to remove an item from the
3330
+ index.
3331
+ ItemID - uniquely identifies the item
3332
+
3333
+ -->
3334
+ <!ELEMENT IndexItemDelete (ItemID) >
3335
+
3336
+ <!--
3337
+ IndexItemPunchout is the element used to dynamically connect an
3338
+ index item to the supplier's resource for that item.
3339
+
3340
+ ItemID - uniquely identifies the item
3341
+ PunchoutDetail - Describes the item being accessed
3342
+ -->
3343
+ <!ELEMENT IndexItemPunchout (ItemID, PunchoutDetail)>
3344
+
3345
+ <!--
3346
+ IndexItem is the general ELEMENT for the list of items in an
3347
+ index.
3348
+
3349
+ IndexItemAdd - Item(s) to be added to the index
3350
+ IndexItemDelete - Item(s) to be removed from the index
3351
+ IndexItemPunchout - PunchOut Item(s) to be added to the index
3352
+
3353
+ -->
3354
+ <!ELEMENT IndexItem (IndexItemAdd+ | IndexItemDelete+ | IndexItemPunchout+)>
3355
+
3356
+ <!--
3357
+ PunchoutDetail is the description of an item which is referenced
3358
+ in the index.
3359
+
3360
+ -->
3361
+ <!ELEMENT PunchoutDetail (Description+, URL, Classification+,
3362
+ UnitPrice?, UnitOfMeasure?,
3363
+ ManufacturerName?, ManufacturerPartID?,
3364
+ LeadTime?, ExpirationDate?, EffectiveDate?,
3365
+ SearchGroupData*, TerritoryAvailable*,
3366
+ Extrinsic*)>
3367
+
3368
+ <!ATTLIST PunchoutDetail
3369
+ punchoutLevel (store | aisle | shelf | product) "store"
3370
+ >
3371
+
3372
+ <!--
3373
+ Index is the element used to update the list of goods and/or
3374
+ services which are being handled by the system.
3375
+
3376
+ SupplierID - One or more identities by which this supplier is
3377
+ known. NOTE: These are to be considered synonyms
3378
+ for the same Supplier.
3379
+ SearchGroup - Description(s) of parametric search(es) for this
3380
+ index. Use of the SearchGroup element is
3381
+ deprecated.
3382
+ IndexItem - The list of items with which to modify the index
3383
+
3384
+ loadmode - The mode in which the Index is loaded, either Full
3385
+ or Incremental. A full index load will
3386
+ completely replace a previously loaded index. The
3387
+ recommended application default is incremental.
3388
+ -->
3389
+ <!ELEMENT Index (SupplierID+, Comments?, SearchGroup*, IndexItem+)>
3390
+ <!ATTLIST Index
3391
+ loadmode (Full | Incremental) #IMPLIED
3392
+ >
3393
+
3394
+ <!--
3395
+ Use of the SearchGroup element is deprecated. Parametric search
3396
+ shapes should be defined using TypeDefinition and its child
3397
+ elements.
3398
+
3399
+ SearchGroup is a grouping of attributes which constitute a search
3400
+ which can be performed against an index.
3401
+
3402
+ Name - Name of the search
3403
+ SearchAttribute - List of searchable index fields.
3404
+ -->
3405
+ <!ELEMENT SearchGroup (Name, SearchAttribute+)>
3406
+
3407
+ <!--
3408
+ Use of the SearchAttribute element is deprecated. Parametric
3409
+ search shapes should be defined using TypeDefinition and its
3410
+ child elements.
3411
+
3412
+ An attribute that can searched parametrically.
3413
+
3414
+ name - name of the attribute.
3415
+ type - the type of the attribute
3416
+ -->
3417
+ <!ELEMENT SearchAttribute EMPTY>
3418
+ <!ATTLIST SearchAttribute
3419
+ name %string; #REQUIRED
3420
+ type %string; #IMPLIED
3421
+ >
3422
+
3423
+ <!--
3424
+ ExpirationDate is the date and time after which the element is no longer
3425
+ valid. Must be specified in ISO 8601 format.
3426
+
3427
+ -->
3428
+ <!ELEMENT ExpirationDate (#PCDATA)> <!-- datetime.tz -->
3429
+ <!--
3430
+ EffectiveDate date and time at which the element becomes valid.
3431
+ Must be specified in ISO 8601 format.
3432
+ -->
3433
+ <!ELEMENT EffectiveDate (#PCDATA)> <!-- datetime.tz -->
3434
+
3435
+ <!--
3436
+ IndexItemDetail contains various index specific elements which
3437
+ help to define an index item.
3438
+ LeadTime - time in days to receive the item
3439
+ ExpirationDate - Expiration date and time for the item in this index
3440
+ EffectiveDate - Effective date and time for the item in this index
3441
+ SearchGroupData - Parametric search data
3442
+ TerritoryAvailable - Country codes
3443
+ -->
3444
+ <!ELEMENT IndexItemDetail (LeadTime, ExpirationDate?, EffectiveDate?,
3445
+ SearchGroupData*, TerritoryAvailable*)>
3446
+
3447
+ <!--
3448
+ Specification of a territory (using ISO country and/or region codes)
3449
+ in which the particular index item is available.
3450
+ -->
3451
+ <!ELEMENT TerritoryAvailable (#PCDATA)>
3452
+
3453
+ <!--
3454
+ SearchGroupData specifies the data which should be used to identify
3455
+ this item in a search.
3456
+ -->
3457
+ <!ELEMENT SearchGroupData (Name, SearchDataElement*)>
3458
+
3459
+ <!--
3460
+ SearchDataElement is a field and value which are used to provide the
3461
+ parametric data to a search.
3462
+ -->
3463
+ <!ELEMENT SearchDataElement EMPTY>
3464
+ <!ATTLIST SearchDataElement
3465
+ name %string; #REQUIRED
3466
+ value %string; #REQUIRED
3467
+ >
3468
+ <!--
3469
+ For cXML license agreement information, please see
3470
+ http://www.cxml.org/home/license.asp
3471
+
3472
+ $Id: //ariba/cxml/modules/Pending.mod#6 $
3473
+ -->
3474
+
3475
+ <!--
3476
+ For better definitions of these Elements/Entities, refer to the cXML
3477
+ Specification documents.
3478
+ -->
3479
+
3480
+ <!--
3481
+ A request used for polling for waiting messages. A waiting message, if
3482
+ any, will be included in the returned stream. The lastReceivedTimestamp
3483
+ attribute, if present, provides the timestamp of the last received
3484
+ message. When the Receiver sees this, it can remove messages with earlier
3485
+ timestamps from the pending queue.
3486
+
3487
+ The maxMessages attribute is used to indicate the maximum number of
3488
+ pending messages that can be included in the response.
3489
+
3490
+
3491
+ -->
3492
+ <!ELEMENT GetPendingRequest (MessageType+)>
3493
+ <!ATTLIST GetPendingRequest
3494
+ maxMessages %uint; #IMPLIED
3495
+ lastReceivedTimestamp %datetime.tz; #IMPLIED
3496
+ >
3497
+
3498
+ <!--
3499
+ Indicates the type of message(s) being polled for. The valid values are
3500
+ the corresponding element names e.g. SubscriptionChangeMessage.
3501
+ -->
3502
+ <!ELEMENT MessageType (#PCDATA)> <!-- nmtoken -->
3503
+
3504
+
3505
+ <!--
3506
+ The data elements being carried back in the response. These are fully
3507
+ formed cXML messages being carried through the Request/Response channel.
3508
+ -->
3509
+ <!ELEMENT GetPendingResponse (cXML+)>
3510
+ <!--
3511
+ For cXML license agreement information, please see
3512
+ http://www.cxml.org/home/license.asp
3513
+
3514
+ $Id: //ariba/cxml/schema/Modules/Subscription.mod#2 $
3515
+ -->
3516
+
3517
+ <!--
3518
+ Indicates that something changed in a buyer's content subscription.
3519
+ Since this is a Message, it can come at any time - no explicit Request
3520
+ needs to be sent first.
3521
+ -->
3522
+ <!ELEMENT SubscriptionChangeMessage (Subscription+)>
3523
+ <!ATTLIST SubscriptionChangeMessage
3524
+ type (new | update | delete) #REQUIRED
3525
+ >
3526
+
3527
+ <!--
3528
+ A content subscription.
3529
+ -->
3530
+ <!ELEMENT Subscription (InternalID, SubscriptionVersion?, Name, Changetime, SupplierID+, Format?,
3531
+ Description?)>
3532
+
3533
+
3534
+ <!ELEMENT Changetime (#PCDATA)> <!-- datetime.tz -->
3535
+ <!ELEMENT Format (#PCDATA)> <!-- string -->
3536
+ <!ATTLIST Format
3537
+ version %string; #REQUIRED
3538
+ >
3539
+
3540
+ <!--
3541
+ Requests a complete list of catalog subscriptions for a buyer.
3542
+ -->
3543
+ <!ELEMENT SubscriptionListRequest EMPTY>
3544
+
3545
+ <!--
3546
+ The list of Subscriptions for the given buyer.
3547
+ -->
3548
+ <!ELEMENT SubscriptionListResponse (Subscription+)>
3549
+
3550
+ <!--
3551
+ Requests the contents of a catalog that the buyer is subscribed to.
3552
+ -->
3553
+ <!ELEMENT SubscriptionContentRequest (InternalID, SubscriptionVersion?, SupplierID+)>
3554
+
3555
+ <!--
3556
+ The data associated with a particular subscription.
3557
+ -->
3558
+ <!ELEMENT SubscriptionContentResponse (Subscription, SubscriptionContent+)>
3559
+
3560
+ <!--
3561
+ The actual content associated with a particular subscription.
3562
+
3563
+ Use of the Contract element is deprecated.
3564
+ -->
3565
+ <!ELEMENT SubscriptionContent (CIFContent | Index | Contract)>
3566
+ <!ATTLIST SubscriptionContent
3567
+ filename %string; #IMPLIED
3568
+ >
3569
+
3570
+ <!--
3571
+ Contents of CIF file in base64 encoding.
3572
+ -->
3573
+ <!ELEMENT CIFContent (#PCDATA)> <!-- bin.base64 -->
3574
+
3575
+ <!--
3576
+ Indicates that something has changed in the supplier data for
3577
+ a supplier the buyer has a relationship with. Since this is a message, no
3578
+ Request needs to be sent to receive this Message.
3579
+ -->
3580
+ <!ELEMENT SupplierChangeMessage (Supplier+)>
3581
+ <!ATTLIST SupplierChangeMessage
3582
+ type (new | update | delete) #REQUIRED
3583
+ >
3584
+
3585
+ <!--
3586
+ Requests for a complete list of suppliers the buyer currently has
3587
+ relationships with.
3588
+ -->
3589
+ <!ELEMENT SupplierListRequest EMPTY>
3590
+
3591
+ <!--
3592
+ The list of suppliers requested by SupplierListRequest.
3593
+ -->
3594
+ <!ELEMENT SupplierListResponse (Supplier+)>
3595
+
3596
+ <!--
3597
+ Requests for a data associated with a particular supplier identified by
3598
+ SupplierID.
3599
+ -->
3600
+ <!ELEMENT SupplierDataRequest (SupplierID+)>
3601
+
3602
+ <!--
3603
+ The data associated with the desired supplier.
3604
+ -->
3605
+ <!ELEMENT SupplierDataResponse (Supplier)>
3606
+
3607
+
3608
+ <!--
3609
+ Reference to the Subscription Version. To be used with InternalID of a catalog.
3610
+ vesionNumber
3611
+ To uniquely identify a catalog with the given InternalID and versionNumber.
3612
+ -->
3613
+ <!ELEMENT SubscriptionVersion EMPTY>
3614
+ <!ATTLIST SubscriptionVersion
3615
+ versionNumber %uint; #REQUIRED
3616
+ >
3617
+
3618
+
3619
+ <!--
3620
+ Catalog subscription status from buyer.
3621
+ -->
3622
+ <!ELEMENT SubscriptionStatus (Comments?)>
3623
+ <!ATTLIST SubscriptionStatus
3624
+ status (received | validation_error | validated | approved | rejected | activated | deactivated | deleted | changed) #REQUIRED>
3625
+
3626
+ <!--
3627
+ SubscriptionStatusUpdateRequest
3628
+ A request to update the subscription status of a Catalog.
3629
+
3630
+ InternalID
3631
+ ID of the catalog.
3632
+
3633
+ SubscriptionStatus
3634
+ Element representing the status updates to the catalog.
3635
+ -->
3636
+ <!ELEMENT SubscriptionStatusUpdateRequest (InternalID, SubscriptionVersion?, SubscriptionStatus)>
3637
+ <!--
3638
+ For cXML license agreement information, please see
3639
+ http://www.cxml.org/home/license.asp
3640
+
3641
+ $Id: //ariba/cxml/schema/Modules/Provider.mod#1 $
3642
+ -->
3643
+
3644
+ <!-- ====
3645
+ Provider* transaction is used to visually integrate an application with
3646
+ a UI provided by a service provider.
3647
+ ==== -->
3648
+
3649
+ <!--
3650
+ ProviderSetupRequest
3651
+
3652
+ The originating application would provide the BrowserFormPost location
3653
+ only if it wished the provider site to display a "Done" button or
3654
+ would like information (at least Status) returned at the end of the
3655
+ interactive session. Inclusion should lead to a ProviderDoneMessage
3656
+ from the provider at the end of a session.
3657
+
3658
+ The originating application would provide the Followup location if it
3659
+ wished the provider to provide information about later status changes
3660
+ in the service (after the end of a particular Provider session). This
3661
+ applies only when the initial status (transmitted via a
3662
+ ProviderDoneMessage) was an interim value.
3663
+ -->
3664
+
3665
+ <!ELEMENT ProviderSetupRequest (OriginatorCookie,
3666
+ (BrowserFormPost, Followup?)?,
3667
+ SelectedService, Extrinsic*)>
3668
+
3669
+ <!--
3670
+ ProviderSetupResponse
3671
+ -->
3672
+
3673
+ <!ELEMENT ProviderSetupResponse (StartPage)>
3674
+
3675
+ <!--
3676
+ ProviderDoneMessage
3677
+ -->
3678
+
3679
+ <!ELEMENT ProviderDoneMessage (OriginatorCookie, ReturnData*)>
3680
+ <!--
3681
+ For cXML license agreement information, please see
3682
+ http://www.cxml.org/home/license.asp
3683
+
3684
+ $Id: //ariba/cxml/schema/Modules/DataAvailable.mod#1 $
3685
+ -->
3686
+
3687
+
3688
+ <!--
3689
+ DataAvailable message.
3690
+ -->
3691
+
3692
+ <!ELEMENT DataAvailableMessage (InternalID)>
3693
+ <!--
3694
+ For cXML license agreement information, please see
3695
+ http://www.cxml.org/home/license.asp
3696
+
3697
+ $Id: //ariba/cxml/schema/Modules/DataRequest.mod#1 $
3698
+ -->
3699
+
3700
+
3701
+ <!--
3702
+ Definition of a DataRequest.
3703
+ -->
3704
+ <!ELEMENT DataRequest (InternalID)>
3705
+
3706
+ <!--
3707
+ DataResponse. Contains the attachments if any for this response.
3708
+ Only a successful response to a download attempt would include this element
3709
+ -->
3710
+
3711
+ <!ELEMENT DataResponse (Attachment+)>
3712
+
3713
+ <!--
3714
+ For cXML license agreement information, please see
3715
+ http://www.cxml.org/home/license.asp
3716
+
3717
+ $Id: //ariba/cxml/schema/Modules/CatalogUpload.mod#1 $
3718
+ -->
3719
+
3720
+ <!--
3721
+ Contain all the information related to the catalog upload, the same
3722
+ functionality as the catalog upload provided by supplier.ariba.com
3723
+ -->
3724
+ <!ELEMENT CatalogUploadRequest (CatalogName, Description, Attachment,
3725
+ Commodities?, AutoPublish?, Notification)>
3726
+ <!ATTLIST CatalogUploadRequest
3727
+ operation (new | update) #REQUIRED
3728
+ >
3729
+
3730
+ <!--
3731
+ CatalogName is the name of the uploaded/published catalog. The
3732
+ name is unique per supplier, and it can be defined in the
3733
+ different languages
3734
+ -->
3735
+ <!ELEMENT CatalogName ( #PCDATA )> <!-- string -->
3736
+ <!ATTLIST CatalogName
3737
+ xml:lang %xmlLangCode; #REQUIRED
3738
+ >
3739
+
3740
+ <!--
3741
+ The list of the commodity codes.
3742
+ -->
3743
+ <!ELEMENT Commodities (CommodityCode+)>
3744
+
3745
+ <!--
3746
+ The two-digit code
3747
+ -->
3748
+ <!ELEMENT CommodityCode ( #PCDATA )> <!-- string -->
3749
+
3750
+ <!--
3751
+ If the attribute "enabled" set to be "true", the updated catalog
3752
+ will be published to the same buyers according to its previous
3753
+ publish
3754
+ -->
3755
+ <!ELEMENT AutoPublish EMPTY>
3756
+ <!ATTLIST AutoPublish
3757
+ enabled %string; #REQUIRED
3758
+ >
3759
+
3760
+ <!--
3761
+ The information used by Ariba CSN to send the notification (the
3762
+ status of the catalog upload) to the suppliers.
3763
+ -->
3764
+ <!ELEMENT Notification (Email?, URLPost?)>
3765
+
3766
+ <!--
3767
+ The URL to receive the StatusUpdateRequest, which describes the
3768
+ status of the catalog upload, such as the "success" (means the
3769
+ catalog is validated, or the catalog is published),
3770
+ the "failed" (the catalog has errors, ......)
3771
+ -->
3772
+ <!ELEMENT URLPost EMPTY>
3773
+ <!ATTLIST URLPost
3774
+ enabled %string; #REQUIRED
3775
+ >
3776
+ <!--
3777
+ For cXML license agreement information, please see
3778
+ http://www.cxml.org/home/license.asp
3779
+
3780
+ $Id: //ariba/cxml/Modules/Profile.mod#6 $
3781
+ -->
3782
+
3783
+ <!--
3784
+ AuthRequest
3785
+
3786
+ An AuthRequest is used when one party (the "receiver") receives
3787
+ credentials from another party (the "principal") and the receiver
3788
+ needs a trusted third party to validate the credentials. The
3789
+ receiver should enclose the credentials in an AuthRequest and send
3790
+ them to the trusted third party for validation.
3791
+
3792
+ If the principal attempts to authenticate by revealing the shared
3793
+ secret between itself and the trusted third party (not
3794
+ recommended), the receiver should forward the credentials as they
3795
+ were received, including the shared secret.
3796
+
3797
+ If the principal attempts to authenticate through a client
3798
+ certificate (recommended), the receiver should forward the
3799
+ credentials as well as an X509Data element containing an
3800
+ X509IssuerSerial element describing the certificate used by the
3801
+ principal (the receiver normally obtains this information from its
3802
+ webserver or SSL/TLS implementation).
3803
+
3804
+ If the supplied credential is invalid, the trusted third party
3805
+ should respond with an empty cXML response of status 403
3806
+ (Forbidden). If the supplied credential is valid, the trusted
3807
+ third party should respond with an AuthResponse that contains the
3808
+ valid credentials.
3809
+ -->
3810
+ <!ELEMENT AuthRequest (Credential+, X509Data?)>
3811
+
3812
+ <!--
3813
+ X509Data
3814
+
3815
+ An X509Data element is constructed to describe an X.509 client
3816
+ certificate being used for authentication. This element (and its
3817
+ children) are derived from the XML Digital Signature standard ().
3818
+ -->
3819
+ <!ELEMENT X509Data ((X509IssuerSerial |
3820
+ X509SKI |
3821
+ X509SubjectName |
3822
+ X509Certificate)+ |
3823
+ X509CRL)>
3824
+
3825
+ <!--
3826
+ X509IssuerSerial
3827
+
3828
+ This element is a container for the serial number and issuer name
3829
+ of the X.509 certificate.
3830
+ -->
3831
+ <!ELEMENT X509IssuerSerial (X509IssuerName, X509SerialNumber) >
3832
+
3833
+ <!--
3834
+ X509IssuerName
3835
+
3836
+ This element contains the distinguished name of the issuer of the
3837
+ X.509 certificate. The distinguished name should be a string
3838
+ representation of an LDAP Distinguished Name, as described in RFC
3839
+ 2253. For example,
3840
+
3841
+ C=US, O="John Doe Data Security, Inc.", OU=Secure Server
3842
+ Certification Authority
3843
+
3844
+ -->
3845
+ <!ELEMENT X509IssuerName (#PCDATA)> <!-- string -->
3846
+
3847
+ <!--
3848
+ X509 SubjectName
3849
+
3850
+ This element contains the distinguished name of the subject of the
3851
+ X.509 certificate. This should be a string representation of an
3852
+ LDAP distinguished name, as described in RFC 2253.
3853
+ -->
3854
+ <!ELEMENT X509SubjectName (#PCDATA)> <!-- string -->
3855
+
3856
+ <!--
3857
+ X509SerialNumber
3858
+
3859
+ This element contains the serial number of the X.509 certificate.
3860
+ -->
3861
+ <!ELEMENT X509SerialNumber (#PCDATA)> <!-- string -->
3862
+
3863
+ <!--
3864
+ X509SKI
3865
+
3866
+ This element contains the Subject Key Identifier of the X.509
3867
+ certificate.
3868
+ -->
3869
+ <!ELEMENT X509SKI (#PCDATA)> <!-- string -->
3870
+
3871
+ <!--
3872
+ X509Certificate
3873
+
3874
+ This element contains a Base 64-encoded X.509v3 certificate.
3875
+ -->
3876
+ <!ELEMENT X509Certificate (#PCDATA)> <!-- string -->
3877
+
3878
+ <!--
3879
+ X509CRL
3880
+
3881
+ This element contains a Base 64-encoded X.509v3 Certificate
3882
+ Revocation List.
3883
+ -->
3884
+ <!ELEMENT X509CRL (#PCDATA)> <!-- string -->
3885
+
3886
+ <!--
3887
+ AuthResponse
3888
+
3889
+ This response returns a list of valid credentials of the person
3890
+ entity in the AuthRequest. An AuthResponse is returned only for a
3891
+ successful authentication; for failed authentications, an empty
3892
+ response with status 403 (Forbidden) will be returned.
3893
+
3894
+ expirationDate
3895
+ Specifies the time beyond which the information contained in
3896
+ the AuthResponse must be discarded. In other words, the
3897
+ inclusion of the expirationDate attribute specifies that the
3898
+ receiver of the AuthResponse may cache the information therein
3899
+ until the expirationDate.
3900
+
3901
+ The absence of an expirationDate should be interpreted to
3902
+ forbid caching.
3903
+ -->
3904
+ <!ELEMENT AuthResponse (Credential)+>
3905
+ <!ATTLIST AuthResponse
3906
+ expirationDate %datetime.tz; #IMPLIED
3907
+ >
3908
+ <!--
3909
+ For cXML license agreement information, please see
3910
+ http://www.cxml.org/home/license.asp
3911
+
3912
+ $Id: //ariba/cxml/schema/Modules/Payment.mod#1 $
3913
+ -->
3914
+
3915
+ <!--
3916
+ This file contains all the payment related elements
3917
+ -->
3918
+
3919
+ <!--
3920
+ Defines different payment methods
3921
+ -->
3922
+ <!ENTITY % cxml.paymentMethod "(ach | cash | check |
3923
+ creditCard | debitCard |
3924
+ draft | wire |
3925
+ other)">
3926
+
3927
+ <!--
3928
+ Defines a payment method
3929
+
3930
+ Description
3931
+ The description of the payment method. Description is
3932
+ mandatory if the type is set to "other". The <ShortName>
3933
+ element in Description must indicate the name of the payment
3934
+ method.
3935
+
3936
+ type
3937
+ the payment method type
3938
+ -->
3939
+ <!ELEMENT PaymentMethod (Description?)>
3940
+ <!ATTLIST PaymentMethod
3941
+ type %cxml.paymentMethod; #REQUIRED
3942
+ >
3943
+
3944
+ <!--
3945
+ Defines payable information related to a invoice.
3946
+
3947
+ InvoiceReference
3948
+ The reference to invoice being paid. Copied from the InvoiceDetailRequest message.
3949
+
3950
+ InvoiceIDInfo
3951
+ The reference to invoice in the Supplier system being paid.
3952
+
3953
+ PayableOrderInfo
3954
+ Supplementary information related to the invoice. For example,
3955
+ if you are making a payment against a consolidated invoice,
3956
+ you may also include associated order information.
3957
+
3958
+ PayableMasterAgreementInfo
3959
+ Supplementary information related to the invoice. For example,
3960
+ if you are making a payment against a Consolidated Invoice,
3961
+ you may also include associated master agreement information.
3962
+ -->
3963
+ <!ELEMENT PayableInvoiceInfo ((InvoiceReference | InvoiceIDInfo),
3964
+ (PayableOrderInfo | PayableMasterAgreementInfo)?)>
3965
+
3966
+ <!--
3967
+ Defines payable information related to an order.
3968
+
3969
+ OrderReference
3970
+ The reference to the order being paid.
3971
+
3972
+ OrderIDInfo
3973
+ The buyer system order id of the order.
3974
+ -->
3975
+ <!ELEMENT PayableOrderInfo (OrderReference | OrderIDInfo)>
3976
+
3977
+ <!--
3978
+ Defines payable information related to a master agreement.
3979
+
3980
+ MasterAgreementReference
3981
+ The reference to master agreement in the Buyer system being paid.
3982
+ Copied from the InvoiceDetailRequest message.
3983
+
3984
+ MasterAgreementIDInfo
3985
+ The reference to master agreement in the Buyer system being paid.
3986
+ -->
3987
+ <!ELEMENT PayableMasterAgreementInfo (MasterAgreementReference | MasterAgreementIDInfo)>
3988
+
3989
+ <!--
3990
+ Defines information related to a payable such as an invoice,
3991
+ order, masteragreement, receipt, etc. More than one payable
3992
+ information can be included.
3993
+
3994
+ PayableInvoiceInfo
3995
+ The info about the invoice being paid.
3996
+
3997
+ PayableOrderInfo
3998
+ The info about the order being paid.
3999
+
4000
+ PayableMasterAgreeementInfo
4001
+ The info about the master agreement being paid.
4002
+
4003
+ -->
4004
+ <!ELEMENT PayableInfo ( PayableInvoiceInfo | PayableOrderInfo |
4005
+ PayableMasterAgreementInfo)>
4006
+
4007
+
4008
+
4009
+ <!--
4010
+ Defines the party involved in the payment, including Payer of this
4011
+ payment (payer), Payee of this payment (payee),
4012
+ Payer's bank (originatingBank), Payee's bank (receivingBank),
4013
+ Payer's Correspondent Bank, Payee's Correspondent Bank, Intermediary Bank, etc
4014
+
4015
+ Contact
4016
+ Contact information of the payment partner. Allowed contact
4017
+ roles include payer, payee, originatingBank, receivingBank,
4018
+ originatingCorrespondentBank, receivingCorrespondent,
4019
+ receivingCorrespondentBank, intermediaryBank, and remitTo.
4020
+
4021
+ Contact elements with role 'payer' and 'payee' are always
4022
+ required. If the payment method indicates a bank transfer,
4023
+ then Contact elements with role 'originatingBank' and
4024
+ 'receivingBank' are required.
4025
+
4026
+ If the contact role is 'remitTo', it would contain contact
4027
+ information of the remittance address. For this role, the
4028
+ IdReference and PCard elements may be absent.
4029
+
4030
+ IdReference
4031
+ Partner reference ID, including bank account identification,
4032
+ bank identification, and optionally bank branch identification.
4033
+
4034
+ IdReference is mandatory for all transactions that involve
4035
+ electronic payments. It is optional only for non-electronic
4036
+ forms of payments, such as, 'check', 'draft' etc.
4037
+
4038
+ The bank account identification is specified as follows:
4039
+ bankAccountID : Domestic account number
4040
+ ibanID : IBAN ID (International Bank Account Number) as
4041
+ specified in ISO 13616.
4042
+
4043
+ The bank identification is specified as follows:
4044
+ abaRoutingNumber: ABA (American Banking Association)
4045
+ Routing Number)
4046
+ swiftID : SWIFT ID (Society for Worldwide Interbank Financial
4047
+ Telecommunications)
4048
+ chipsID : CHIPS ID (Clearing House Interbank Payment System)
4049
+ isoBicID : ISO BIC ID (Bank Identifier Code) as specified
4050
+ in ISO 9362.
4051
+ The Bank Identifier Code (BIC) is a
4052
+ universal method of identifying
4053
+ financial institutions. The BIC consists
4054
+ of 8 or 11 characters, comprising a bank
4055
+ code (4 characters), a country code (2
4056
+ characters), a location code (2
4057
+ characters) and an optional branch code
4058
+ (3 characters).
4059
+
4060
+ bankNationalID : If none of the above bank identification
4061
+ methods are applicable, then use this to
4062
+ specify national clearing codes that are
4063
+ specific to a country. This identification
4064
+ if used, should uniquely identify
4065
+ the bank within the country specified in the
4066
+ Contact.
4067
+
4068
+
4069
+ The bank branch identification, if necessary, is specified as follows:
4070
+ bankBranchID : The bank branch ID
4071
+
4072
+ The following table illustrates some valid combinations of
4073
+ Contact and IdReference domains:
4074
+ +..............................+.....................................+
4075
+ | Contact@role | IdReference@domain |
4076
+ +..............................+.....................................+
4077
+ | payer | bankAccountID, ibanID |
4078
+ | | |
4079
+ | payee | bankAccountID, ibanID |
4080
+ | receivingCorrespondent | bankAccountId, swiftID |
4081
+ | | |
4082
+ | originatingBank | abaRoutingNumber, bankNationalID, |
4083
+ | | isoBicID, swiftID, |
4084
+ | | bankBranchID (optional) |
4085
+ | | |
4086
+ | receivingBank | abaRoutingNumber, bankNationalID, |
4087
+ | | isoBicID, swiftID, |
4088
+ | | bankBranchID (optional) |
4089
+ | | |
4090
+ | originatingCorrespondentBank | abaRoutingNumber, isoBicID, swiftID |
4091
+ | | |
4092
+ | receivingCorrespondentBank | abaRoutingNumber, isoBicID, swiftID |
4093
+ | | |
4094
+ | intermediaryBank | abaRoutingNumber, isoBicID, swiftID |
4095
+ +..............................+.....................................+
4096
+
4097
+ PCard
4098
+ PCard information including pcard number, pcard expiration date,
4099
+ pcard name.IdReference
4100
+
4101
+ This can only appear for the Contact with payer role. This is used
4102
+ when the payment is done through a pcard.
4103
+ -->
4104
+ <!ELEMENT PaymentPartner (Contact, IdReference*, PCard?)>
4105
+ <!--
4106
+ For cXML license agreement information, please see
4107
+ http://www.cxml.org/home/license.asp
4108
+
4109
+ $Id: //ariba/cxml/schema/Modules/Organization.mod#2 $
4110
+ -->
4111
+ <!--
4112
+ Organization
4113
+ -->
4114
+
4115
+ <!ELEMENT Organization (Name, Credential+, OrganizationRole*, Address, CorporateInformation?, TaxInformation?, RelationshipInformation?, Description*, Person*, Industry*, Commodity*, Territory*, PaymentInformation*, Extrinsic*)>
4116
+
4117
+
4118
+
4119
+ <!-- ====
4120
+ OrganizationDataRequest - Get data about an organization (or multiple
4121
+ organizations).
4122
+
4123
+ The OrganizationID wrapper is used to distinguish between requests
4124
+ about multiple organizations and requests including alias Credentials
4125
+ for the same organization.
4126
+ ==== -->
4127
+
4128
+ <!ELEMENT OrganizationDataRequest
4129
+ (OrganizationID+)>
4130
+
4131
+ <!--
4132
+ OrganizationDataResponse
4133
+
4134
+ Extrinsic elements will be used to pass data about an Org that is not
4135
+ already represented by the Organization element.
4136
+ -->
4137
+
4138
+ <!ELEMENT OrganizationDataResponse (Organization+)>
4139
+
4140
+ <!--
4141
+ Used to push organization information to another system.
4142
+ -->
4143
+
4144
+ <!ELEMENT OrganizationChangeMessage (Organization+)>
4145
+ <!ATTLIST OrganizationChangeMessage
4146
+ type (new | update | delete) #REQUIRED
4147
+ >
4148
+
4149
+
4150
+
4151
+ <!ELEMENT CorporateInformation (AnnualRevenue?, StateOfIncorporation?, OwnershipType*)>
4152
+ <!ATTLIST CorporateInformation
4153
+ yearFounded %uint; #IMPLIED
4154
+ numberOfEmployees %uint; #IMPLIED
4155
+ organizationType NMTOKEN #IMPLIED
4156
+ >
4157
+ <!ELEMENT StateOfIncorporation (State)>
4158
+ <!ELEMENT AnnualRevenue (MinAmount, MaxAmount?)>
4159
+ <!ELEMENT OwnershipType (Extrinsic*)>
4160
+
4161
+ <!--
4162
+ name can be either minorityOwned, womanOwned, veteranOwned, disabledVeteranOwned,
4163
+ vietnamVeteranOwned for US companies.
4164
+ The list is not enumerated since it can be different for different countries.
4165
+ -->
4166
+ <!ATTLIST OwnershipType
4167
+ name NMTOKEN #REQUIRED
4168
+ >
4169
+
4170
+
4171
+
4172
+ <!--
4173
+ TaxInformation
4174
+
4175
+ Used to list the associated tax information that for example can be
4176
+ used for 1099 purposes.
4177
+ -->
4178
+ <!ELEMENT TaxInformation (LegalName?, TaxID*)>
4179
+ <!ATTLIST TaxInformation
4180
+ isExemptFromBackupWithholding (yes | no) #IMPLIED
4181
+ >
4182
+
4183
+ <!--
4184
+ Owner of ssn or tin
4185
+ -->
4186
+ <!ELEMENT LegalName (#PCDATA)>
4187
+ <!ATTLIST LegalName
4188
+ xml:lang %xmlLangCode; #REQUIRED
4189
+ >
4190
+
4191
+ <!--
4192
+ This contains the actual tin or ssn number. Domain specifies
4193
+ whether it is us social security number or us tax identification
4194
+ number.
4195
+ -->
4196
+ <!ELEMENT TaxID (#PCDATA)>
4197
+ <!ATTLIST TaxID
4198
+ domain (usSSN | usTIN) #REQUIRED
4199
+ >
4200
+
4201
+
4202
+
4203
+ <!--
4204
+ This section contains anything that is specific between the
4205
+ requester and requestee
4206
+ -->
4207
+ <!ELEMENT RelationshipInformation (PaymentRelationshipInformation?)>
4208
+
4209
+ <!--
4210
+ This section contains payment information between requester and
4211
+ requestee.
4212
+ -->
4213
+ <!ELEMENT PaymentRelationshipInformation (PaymentProviderInformation+, Extrinsic*)>
4214
+
4215
+ <!--
4216
+ This section contains information about the payment provider who is
4217
+ going to execute payment between the requester and the requestee.
4218
+ It has the id of the payment provider payment service as well as
4219
+ the payment methods that the payment provider supports.
4220
+ -->
4221
+ <!ELEMENT PaymentProviderInformation (Description?, PaymentMethod+, Extrinsic*)>
4222
+ <!ATTLIST PaymentProviderInformation
4223
+ paymentProviderID %string; #REQUIRED
4224
+ >
4225
+
4226
+
4227
+
4228
+ <!--
4229
+ Person associates a particular individual with the (many) roles they may
4230
+ play on behalf of an organization.
4231
+
4232
+ Note: The Contact element in this context would not include a role
4233
+ attribute since this does not describe a person acting in any particular
4234
+ fashion.
4235
+ -->
4236
+ <!ELEMENT Person (Contact, PersonRole+, IdReference*, Extrinsic*)>
4237
+
4238
+ <!--
4239
+ PersonRole
4240
+
4241
+ Used to list the possible values the Contact@role attribute may take
4242
+ when the associated Contact appears in a cXML Request (such as
4243
+ ProviderSetupRequest).
4244
+ -->
4245
+ <!ELEMENT PersonRole EMPTY>
4246
+ <!ATTLIST PersonRole
4247
+ name NMTOKEN #REQUIRED
4248
+ >
4249
+
4250
+
4251
+ <!ELEMENT Industry (Classification)>
4252
+ <!ELEMENT Commodity (Classification)>
4253
+ <!ELEMENT Territory (Classification)>
4254
+
4255
+
4256
+
4257
+ <!ELEMENT PaymentInformation (PaymentMethodRemittanceInformation+)>
4258
+
4259
+ <!ELEMENT PaymentMethodRemittanceInformation (Contact, PaymentMethod*, PaymentMethodPartner*)>
4260
+ <!ATTLIST PaymentMethodRemittanceInformation
4261
+ isDefault (yes) #IMPLIED
4262
+ preferredPaymentMethod %cxml.paymentMethod; #IMPLIED
4263
+ >
4264
+
4265
+ <!--
4266
+ This new tag helps to include the financial information of an organization into the
4267
+ PaymentMethodRemittance tag.
4268
+ Also, for IdReference tag, we add a new domain receivingCorrspondent. This new role
4269
+ behaves as the payee for receiving correspondent bank. We need this new role because
4270
+ in the wire transfer case, the receiving party could have up to two banks: beneficiary
4271
+ and corresponding banks. Hence, payee role is needed to contain the information about
4272
+ beneficiary bank account and receivingBank role is needed to contain the information
4273
+ about the beneficiary bank. Similary, for the receiving correspondent bank, we have the
4274
+ roles receivingCorresondent and receivingCorrespondentBank
4275
+
4276
+ -->
4277
+
4278
+ <!ELEMENT PaymentMethodPartner (PaymentMethod, PaymentPartner+) >
4279
+
4280
+
4281
+ <!--
4282
+ For cXML license agreement information, please see
4283
+ http://www.cxml.org/home/license.asp
4284
+
4285
+ $Id: //ariba/cxml/schema/Modules/OrganizationID.mod#1 $
4286
+ -->
4287
+ <!--
4288
+ OrganizationID
4289
+
4290
+ Credentials listed here describe the same organization. May include
4291
+ type="marketplace" Credential elements if that context is necessary.
4292
+ -->
4293
+ <!ELEMENT OrganizationID (Credential+)>
4294
+
4295
+
4296
+ <!--
4297
+ For cXML license agreement information, please see
4298
+ http://www.cxml.org/home/license.asp
4299
+
4300
+ $Id: //ariba/cxml/schema/Modules/OrganizationPrivate.mod#1 $
4301
+ -->
4302
+
4303
+
4304
+ <!--
4305
+ OrganizationRole - Identifies one of the roles this (new) organization
4306
+ is playing.
4307
+
4308
+ name
4309
+ Name of the role played by the organization. Common values
4310
+ include "supplier" and "buyer".
4311
+ -->
4312
+ <!ELEMENT OrganizationRole EMPTY>
4313
+ <!ATTLIST OrganizationRole
4314
+ name NMTOKEN #REQUIRED
4315
+ >
4316
+ <!--
4317
+ For cXML license agreement information, please see
4318
+ http://www.cxml.org/home/license.asp
4319
+
4320
+ $Id: //ariba/cxml/Modules/Profile.mod#6 $
4321
+ -->
4322
+
4323
+ <!--
4324
+ For more information about W3C XML signatures, refer to the
4325
+ following URL. Portions of this DTD are derived from information
4326
+ contained therein.
4327
+ http://www.w3.org/TR/xmldsig-core/
4328
+ -->
4329
+
4330
+ <!-- DTD for XML Signatures
4331
+ http://www.w3.org/2000/09/xmldsig#
4332
+ Joseph Reagle $last changed 20001215$
4333
+
4334
+ http://www.w3.org/2000/09/xmldsig#
4335
+ $Revision: 1.1 $ on $Date: 2002/02/08 20:32:26 $ by $Author: reagle $
4336
+
4337
+ Copyright 2001 The Internet Society and W3C (Massachusetts Institute
4338
+ of Technology, Institut National de Recherche en Informatique et en
4339
+ Automatique, Keio University). All Rights Reserved.
4340
+ http://www.w3.org/Consortium/Legal/
4341
+
4342
+ This document is governed by the W3C Software License [1] as described
4343
+ in the FAQ [2].
4344
+
4345
+ [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
4346
+ [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
4347
+ -->
4348
+
4349
+ <!--
4350
+
4351
+ The following entity declarations enable external/flexible content in
4352
+ the Signature content model.
4353
+
4354
+ #PCDATA emulates schema string; when combined with element types it
4355
+ emulates schema's mixed content type.
4356
+
4357
+ %foo.ANY permits the user to include their own element types from
4358
+ other namespaces, for example:
4359
+ <!ENTITY % KeyValue.ANY '| ecds:ECDSAKeyValue'>
4360
+ ...
4361
+ <!ELEMENT ecds:ECDSAKeyValue (#PCDATA) >
4362
+
4363
+ -->
4364
+
4365
+ <!ENTITY % Object.ANY '|xades:QualifyingProperties|cXMLSignedInfo|Extrinsic'>
4366
+ <!ENTITY % Method.ANY ''>
4367
+ <!ENTITY % Transform.ANY ''>
4368
+ <!ENTITY % SignatureProperty.ANY ''>
4369
+ <!ENTITY % KeyInfo.ANY ''>
4370
+ <!ENTITY % KeyValue.ANY ''>
4371
+ <!ENTITY % PGPData.ANY ''>
4372
+ <!ENTITY % X509Data.ANY ''>
4373
+ <!ENTITY % SPKIData.ANY ''>
4374
+
4375
+
4376
+
4377
+ <!-- Start Core Signature declarations, these should NOT be altered -->
4378
+
4379
+ <!ELEMENT ds:Signature (ds:SignedInfo, ds:SignatureValue, ds:KeyInfo?, ds:Object*) >
4380
+ <!ATTLIST ds:Signature
4381
+ xmlns:ds CDATA #FIXED 'http://www.w3.org/2000/09/xmldsig#'
4382
+ xmlns:xades CDATA #FIXED 'http://uri.etsi.org/01903/v1.3.2#'
4383
+ Id ID #IMPLIED >
4384
+
4385
+ <!ELEMENT ds:SignatureValue (#PCDATA) >
4386
+ <!ATTLIST ds:SignatureValue
4387
+ Id ID #IMPLIED>
4388
+
4389
+ <!ELEMENT ds:SignedInfo (ds:CanonicalizationMethod,
4390
+ ds:SignatureMethod, ds:Reference+) >
4391
+ <!ATTLIST ds:SignedInfo
4392
+ Id ID #IMPLIED
4393
+ >
4394
+
4395
+ <!ELEMENT ds:CanonicalizationMethod (#PCDATA %Method.ANY;)* >
4396
+ <!ATTLIST ds:CanonicalizationMethod
4397
+ Algorithm CDATA #REQUIRED >
4398
+
4399
+ <!ELEMENT ds:SignatureMethod (#PCDATA|ds:HMACOutputLength %Method.ANY;)* >
4400
+ <!ATTLIST ds:SignatureMethod
4401
+ Algorithm CDATA #REQUIRED >
4402
+
4403
+ <!ELEMENT ds:Reference (ds:Transforms?, ds:DigestMethod, ds:DigestValue) >
4404
+ <!ATTLIST ds:Reference
4405
+ Id ID #IMPLIED
4406
+ URI CDATA #IMPLIED
4407
+ Type CDATA #IMPLIED>
4408
+
4409
+
4410
+ <!ELEMENT ds:Transforms (ds:Transform+)>
4411
+
4412
+ <!ELEMENT ds:Transform (#PCDATA|ds:XPath %Transform.ANY;)* >
4413
+ <!ATTLIST ds:Transform
4414
+ Algorithm CDATA #REQUIRED >
4415
+
4416
+ <!ELEMENT ds:XPath (#PCDATA) >
4417
+
4418
+ <!ELEMENT ds:DigestMethod (#PCDATA %Method.ANY;)* >
4419
+ <!ATTLIST ds:DigestMethod
4420
+ Algorithm CDATA #REQUIRED >
4421
+
4422
+ <!ELEMENT ds:DigestValue (#PCDATA) >
4423
+
4424
+ <!ELEMENT ds:KeyInfo (#PCDATA|ds:KeyName|ds:KeyValue|ds:RetrievalMethod|
4425
+ ds:X509Data|ds:PGPData|ds:SPKIData|ds:MgmtData %KeyInfo.ANY;)* >
4426
+ <!ATTLIST ds:KeyInfo
4427
+ Id ID #IMPLIED >
4428
+
4429
+ <!-- Key Information -->
4430
+
4431
+ <!ELEMENT ds:KeyName (#PCDATA) >
4432
+ <!ELEMENT ds:KeyValue (#PCDATA|ds:DSAKeyValue|ds:RSAKeyValue %KeyValue.ANY;)* >
4433
+ <!ELEMENT ds:MgmtData (#PCDATA) >
4434
+
4435
+ <!ELEMENT ds:RetrievalMethod (ds:Transforms?) >
4436
+ <!ATTLIST ds:RetrievalMethod
4437
+ URI CDATA #REQUIRED
4438
+ Type CDATA #IMPLIED >
4439
+
4440
+ <!-- X.509 Data -->
4441
+
4442
+ <!ELEMENT ds:X509Data ((ds:X509IssuerSerial | ds:X509SKI | ds:X509SubjectName |
4443
+ ds:X509Certificate | ds:X509CRL )+ %X509Data.ANY;)>
4444
+ <!ELEMENT ds:X509IssuerSerial (ds:X509IssuerName, ds:X509SerialNumber) >
4445
+ <!ELEMENT ds:X509IssuerName (#PCDATA) >
4446
+ <!ELEMENT ds:X509SubjectName (#PCDATA) >
4447
+ <!ELEMENT ds:X509SerialNumber (#PCDATA) >
4448
+ <!ELEMENT ds:X509SKI (#PCDATA) >
4449
+ <!ELEMENT ds:X509Certificate (#PCDATA) >
4450
+ <!ELEMENT ds:X509CRL (#PCDATA) >
4451
+
4452
+ <!-- PGPData -->
4453
+
4454
+ <!ELEMENT ds:PGPData ((ds:PGPKeyID, ds:PGPKeyPacket?) | (ds:PGPKeyPacket) %PGPData.ANY;) >
4455
+ <!ELEMENT ds:PGPKeyPacket (#PCDATA) >
4456
+ <!ELEMENT ds:PGPKeyID (#PCDATA) >
4457
+
4458
+ <!-- SPKI Data -->
4459
+
4460
+ <!ELEMENT ds:SPKIData (ds:SPKISexp %SPKIData.ANY;) >
4461
+ <!ELEMENT ds:SPKISexp (#PCDATA) >
4462
+
4463
+ <!-- Extensible Content -->
4464
+
4465
+ <!ELEMENT ds:Object (#PCDATA|ds:Signature|ds:SignatureProperties|ds:Manifest %Object.ANY;)* >
4466
+ <!ATTLIST ds:Object
4467
+ Id ID #IMPLIED
4468
+ MimeType CDATA #IMPLIED
4469
+ Encoding CDATA #IMPLIED >
4470
+
4471
+ <!ELEMENT ds:Manifest (ds:Reference+) >
4472
+ <!ATTLIST ds:Manifest
4473
+ Id ID #IMPLIED >
4474
+
4475
+ <!ELEMENT ds:SignatureProperties (ds:SignatureProperty+) >
4476
+ <!ATTLIST ds:SignatureProperties
4477
+ Id ID #IMPLIED >
4478
+
4479
+ <!ELEMENT ds:SignatureProperty (#PCDATA %SignatureProperty.ANY;)* >
4480
+ <!ATTLIST ds:SignatureProperty
4481
+ Target CDATA #REQUIRED
4482
+ Id ID #IMPLIED >
4483
+
4484
+ <!-- Algorithm Parameters -->
4485
+
4486
+ <!ELEMENT ds:HMACOutputLength (#PCDATA) >
4487
+
4488
+ <!ELEMENT ds:DSAKeyValue ((ds:P, ds:Q)?, ds:G?, ds:Y, ds:J?, (ds:Seed, ds:PgenCounter)?) >
4489
+ <!ELEMENT ds:P (#PCDATA) >
4490
+ <!ELEMENT ds:Q (#PCDATA) >
4491
+ <!ELEMENT ds:G (#PCDATA) >
4492
+ <!ELEMENT ds:Y (#PCDATA) >
4493
+ <!ELEMENT ds:J (#PCDATA) >
4494
+ <!ELEMENT ds:Seed (#PCDATA) >
4495
+ <!ELEMENT ds:PgenCounter (#PCDATA) >
4496
+
4497
+ <!ELEMENT ds:RSAKeyValue (ds:Modulus, ds:Exponent) >
4498
+ <!ELEMENT ds:Modulus (#PCDATA) >
4499
+ <!ELEMENT ds:Exponent (#PCDATA) >
4500
+ <!--
4501
+ For cXML license agreement information, please see
4502
+ http://www.cxml.org/home/license.asp
4503
+
4504
+ $Id: //ariba/cxml/Modules/Profile.mod#6 $
4505
+ -->
4506
+
4507
+ <!--
4508
+ For more information about XAdES, refer to the following URL.
4509
+ Portions of this DTD are derived from information contained therein.
4510
+ http://uri.etsi.org/01903/v1.3.2#
4511
+ -->
4512
+
4513
+ <!ENTITY % Any.ANY ' '>
4514
+ <!ENTITY % XMLTimeStamp.ANY ' '>
4515
+ <!ENTITY % Method.ANY ' '>
4516
+
4517
+ <!-- Start Any -->
4518
+
4519
+ <!ELEMENT xades:Any (#PCDATA %Any.ANY;)*>
4520
+
4521
+ <!-- End Any -->
4522
+
4523
+ <!-- Start ObjectIdentifier -->
4524
+
4525
+ <!ELEMENT xades:ObjectIdentifier (xades:Identifier, xades:Description?,
4526
+ xades:DocumentationReferences?)>
4527
+ <!ELEMENT xades:Identifier (#PCDATA)>
4528
+ <!ATTLIST xades:Identifier
4529
+ Qualifier (OIDAsURI | OIDAsURN) #IMPLIED
4530
+ >
4531
+ <!ELEMENT xades:Description (#PCDATA)>
4532
+ <!ELEMENT xades:DocumentationReferences (xades:DocumentationReference)+>
4533
+ <!ELEMENT xades:DocumentationReference (#PCDATA)>
4534
+
4535
+ <!-- End ObjectIdentifier -->
4536
+
4537
+ <!-- Start EncapsulatedPKIData -->
4538
+
4539
+ <!ELEMENT xades:EncapsulatedPKIData (#PCDATA)>
4540
+ <!ATTLIST xades:EncapsulatedPKIData
4541
+ Id ID #IMPLIED
4542
+ Encoding CDATA #IMPLIED
4543
+ >
4544
+
4545
+ <!-- End EncapsulatedPKIData -->
4546
+
4547
+ <!-- Start time-stamp container types -->
4548
+
4549
+ <!ELEMENT xades:Include EMPTY>
4550
+ <!ATTLIST xades:Include
4551
+ URI CDATA #REQUIRED
4552
+ referencedData CDATA #IMPLIED
4553
+ >
4554
+
4555
+ <!ELEMENT xades:ReferenceInfo (ds:DigestMethod, ds:DigestValue)>
4556
+ <!ATTLIST xades:ReferenceInfo
4557
+ Id ID #IMPLIED
4558
+ URI CDATA #IMPLIED
4559
+ >
4560
+ <!ELEMENT xades:XAdESTimeStamp (xades:Include*, ds:CanonicalizationMethod?,
4561
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp)+)>
4562
+ <!ATTLIST xades:XAdESTimeStamp
4563
+ Id ID #IMPLIED
4564
+ >
4565
+
4566
+ <!ELEMENT xades:OtherTimeStamp (xades:ReferenceInfo+, ds:CanonicalizationMethod?,
4567
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp))>
4568
+ <!ATTLIST xades:OtherTimeStamp
4569
+ Id ID #IMPLIED
4570
+ >
4571
+
4572
+ <!ELEMENT xades:EncapsulatedTimeStamp (#PCDATA)>
4573
+ <!ATTLIST xades:EncapsulatedTimeStamp
4574
+ Id ID #IMPLIED
4575
+ >
4576
+
4577
+ <!ELEMENT xades:XMLTimeStamp (#PCDATA %XMLTimeStamp.ANY; )*>
4578
+
4579
+ <!-- End time-stamp tokens container -->
4580
+
4581
+ <!-- Start container types -->
4582
+
4583
+ <!-- Start QualifyingProperties -->
4584
+
4585
+ <!ELEMENT xades:QualifyingProperties (xades:SignedProperties?, xades:UnsignedProperties?)>
4586
+ <!ATTLIST xades:QualifyingProperties
4587
+ Target CDATA #REQUIRED
4588
+ Id ID #IMPLIED
4589
+ xmlns:xades CDATA #FIXED 'http://uri.etsi.org/01903/v1.3.2#'
4590
+ >
4591
+
4592
+ <!ELEMENT xades:SignedProperties (xades:SignedSignatureProperties,
4593
+ xades:SignedDataObjectProperties?)>
4594
+ <!ATTLIST xades:SignedProperties
4595
+ Id ID #IMPLIED
4596
+ >
4597
+
4598
+ <!ELEMENT xades:UnsignedProperties (xades:UnsignedSignatureProperties?,
4599
+ xades:UnsignedDataObjectProperties?)>
4600
+ <!ATTLIST xades:UnsignedProperties
4601
+ Id ID #IMPLIED
4602
+ >
4603
+
4604
+ <!-- End QualifyingProperties -->
4605
+
4606
+ <!-- Start SignedSignatureProperties, SignedDataObjectProperties,
4607
+ UnsignedSignatureProperties, UnsignedDataObjectProperties -->
4608
+
4609
+ <!ELEMENT xades:SignedSignatureProperties (xades:SigningTime?, xades:SigningCertificate?,
4610
+ xades:SignaturePolicyIdentifier?, xades:SignatureProductionPlace?, xades:SignerRole?)>
4611
+ <!ATTLIST xades:SignedSignatureProperties
4612
+ Id ID #IMPLIED
4613
+ >
4614
+
4615
+ <!ELEMENT xades:SignedDataObjectProperties (xades:DataObjectFormat*,
4616
+ xades:CommitmentTypeIndication*, xades:AllDataObjectsTimeStamp*,
4617
+ xades:IndividualDataObjectsTimeStamp*)>
4618
+ <!ATTLIST xades:SignedDataObjectProperties
4619
+ Id ID #IMPLIED
4620
+ >
4621
+
4622
+ <!ELEMENT xades:UnsignedSignatureProperties (xades:CounterSignature | xades:SignatureTimeStamp
4623
+ | xades:CompleteCertificateRefs | xades:CompleteRevocationRefs | xades:AttributeCertificateRefs
4624
+ | xades:AttributeRevocationRefs | (xades:SigAndRefsTimeStamp | xades:RefsOnlyTimeStamp) |
4625
+ xades:CertificateValues | xades:RevocationValues | xades:AttrAuthoritiesCertValues
4626
+ | xades:AttributeRevocationValues | xades:ArchiveTimeStamp)+>
4627
+ <!ATTLIST xades:UnsignedSignatureProperties
4628
+ Id ID #IMPLIED
4629
+ >
4630
+
4631
+ <!ELEMENT xades:UnsignedDataObjectProperties (xades:UnsignedDataObjectProperty*)>
4632
+ <!ATTLIST xades:UnsignedDataObjectProperties
4633
+ Id ID #IMPLIED
4634
+ >
4635
+
4636
+ <!ELEMENT xades:UnsignedDataObjectProperty (#PCDATA %Any.ANY;)*>
4637
+
4638
+ <!-- End SignedSignatureProperties, SignedDataObjectProperties,
4639
+ UnsignedSignatureProperties, UnsignedDataObjectProperties -->
4640
+
4641
+ <!-- Start QualifyingPropertiesReference -->
4642
+
4643
+ <!ELEMENT xades:QualifyingPropertiesReference EMPTY>
4644
+ <!ATTLIST xades:QualifyingPropertiesReference
4645
+ URI CDATA #REQUIRED
4646
+ Id ID #IMPLIED
4647
+ >
4648
+
4649
+ <!-- End QualifyingPropertiesReference -->
4650
+
4651
+ <!-- End container types -->
4652
+
4653
+ <!-- Start SigningTime -->
4654
+
4655
+ <!ELEMENT xades:SigningTime (#PCDATA)>
4656
+
4657
+ <!-- End SigningTime -->
4658
+
4659
+ <!-- Start SigningCertificate -->
4660
+
4661
+ <!ELEMENT xades:SigningCertificate (xades:Cert+)>
4662
+ <!ELEMENT xades:Cert (xades:CertDigest, xades:IssuerSerial)>
4663
+ <!ATTLIST xades:Cert
4664
+ URI CDATA #IMPLIED
4665
+ >
4666
+ <!ELEMENT xades:CertDigest (ds:DigestMethod, ds:DigestValue)>
4667
+ <!ELEMENT xades:IssuerSerial (ds:X509IssuerName, ds:X509SerialNumber)>
4668
+ <!ELEMENT xades:X509IssuerName (#PCDATA)>
4669
+ <!ELEMENT xades:X509SerialNumber (#PCDATA)>
4670
+
4671
+ <!-- End SigningCertificate -->
4672
+
4673
+ <!-- Start SignaturePolicyIdentifier -->
4674
+
4675
+ <!ELEMENT xades:SignaturePolicyIdentifier (xades:SignaturePolicyId |
4676
+ xades:SignaturePolicyImplied)>
4677
+ <!ELEMENT xades:SignaturePolicyImplied ANY>
4678
+ <!ELEMENT xades:SignaturePolicyId (xades:SigPolicyId, ds:Transforms?, xades:SigPolicyHash,
4679
+ xades:SigPolicyQualifiers?)>
4680
+ <!ELEMENT xades:SigPolicyId (xades:Identifier, xades:Description?, xades:DocumentationReferences?)>
4681
+ <!ELEMENT xades:SigPolicyHash (ds:DigestMethod, ds:DigestValue)>
4682
+ <!ELEMENT xades:SigPolicyQualifiers (xades:SigPolicyQualifier+)>
4683
+ <!ELEMENT xades:SigPolicyQualifier (#PCDATA|xades:SPURI %Any.ANY; )*>
4684
+
4685
+ <!-- End SignaturePolicyIdentifier -->
4686
+
4687
+ <!-- Start SPURI and SPUserNotice -->
4688
+
4689
+ <!ELEMENT xades:SPURI (#PCDATA)>
4690
+ <!ELEMENT xades:SPUserNotice (xades:NoticeRef?, xades:ExplicitText?)>
4691
+ <!ELEMENT xades:NoticeRef (xades:Organization, xades:NoticeNumbers)>
4692
+ <!ELEMENT xades:ExplicitText (#PCDATA)>
4693
+ <!ELEMENT xades:Organization (#PCDATA)>
4694
+ <!ELEMENT xades:NoticeNumbers (xades:int*)>
4695
+ <!ELEMENT xades:int (#PCDATA)>
4696
+
4697
+ <!-- End SPURI and SPUserNotice -->
4698
+
4699
+ <!-- Start CounterSignature -->
4700
+
4701
+ <!ELEMENT xades:CounterSignature (ds:Signature)>
4702
+
4703
+ <!-- End CounterSignature -->
4704
+
4705
+ <!-- Start DataObjectFormat -->
4706
+
4707
+ <!ELEMENT xades:DataObjectFormat (xades:Description?, xades:ObjectIdentifier?, xades:MimeType?,
4708
+ xades:Encoding?)>
4709
+ <!ATTLIST xades:DataObjectFormat
4710
+ ObjectReference CDATA #REQUIRED
4711
+ >
4712
+ <!ELEMENT xades:MimeType (#PCDATA)>
4713
+ <!ELEMENT xades:Encoding (#PCDATA)>
4714
+
4715
+ <!-- End DataObjectFormat -->
4716
+
4717
+ <!-- Start CommitmentTypeIndication -->
4718
+
4719
+ <!ELEMENT xades:CommitmentTypeIndication (xades:CommitmentTypeId, (xades:ObjectReference+ |
4720
+ xades:AllSignedDataObjects), xades:CommitmentTypeQualifiers?)>
4721
+ <!ELEMENT xades:CommitmentTypeId (xades:Identifier, xades:Description?,
4722
+ xades:DocumentationReferences?)>
4723
+ <!ELEMENT xades:ObjectReference (#PCDATA)>
4724
+ <!ELEMENT xades:AllSignedDataObjects ANY>
4725
+ <!ELEMENT xades:CommitmentTypeQualifiers (xades:CommitmentTypeQualifier*)>
4726
+ <!ELEMENT xades:CommitmentTypeQualifier (#PCDATA %Any.ANY; )*>
4727
+
4728
+ <!-- End CommitmentTypeIndication -->
4729
+
4730
+ <!-- Start SignatureProductionPlace -->
4731
+
4732
+ <!ELEMENT xades:SignatureProductionPlace (xades:City?, xades:StateOrProvince?, xades:PostalCode?,
4733
+ xades:CountryName?)>
4734
+ <!ELEMENT xades:City (#PCDATA)>
4735
+ <!ELEMENT xades:StateOrProvince (#PCDATA)>
4736
+ <!ELEMENT xades:PostalCode (#PCDATA)>
4737
+ <!ELEMENT xades:CountryName (#PCDATA)>
4738
+
4739
+ <!-- End SignatureProductionPlace -->
4740
+
4741
+ <!-- Start SignerRole -->
4742
+
4743
+ <!ELEMENT xades:SignerRole (xades:ClaimedRoles?, xades:CertifiedRoles?)>
4744
+ <!ELEMENT xades:ClaimedRoles (xades:ClaimedRole+)>
4745
+ <!ELEMENT xades:CertifiedRoles (xades:CertifiedRole+)>
4746
+ <!ELEMENT xades:ClaimedRole (#PCDATA %Any.ANY; )*>
4747
+ <!ELEMENT xades:CertifiedRole (#PCDATA)>
4748
+ <!ATTLIST xades:CertifiedRole
4749
+ Id ID #IMPLIED
4750
+ Encoding CDATA #IMPLIED
4751
+ >
4752
+
4753
+ <!-- End SignerRole -->
4754
+
4755
+ <!-- Start AllDataObjectsTimeStamp, IndividualDataObjectsTimeStamp,
4756
+ SignatureTimeStamp -->
4757
+
4758
+ <!ELEMENT xades:AllDataObjectsTimeStamp (ds:CanonicalizationMethod?,
4759
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp)+)>
4760
+ <!ATTLIST xades:AllDataObjectsTimeStamp
4761
+ Id ID #IMPLIED
4762
+ >
4763
+
4764
+ <!ELEMENT xades:IndividualDataObjectsTimeStamp (xades:Include+, ds:CanonicalizationMethod?,
4765
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp)+)>
4766
+ <!ATTLIST xades:IndividualDataObjectsTimeStamp
4767
+ Id ID #IMPLIED
4768
+ >
4769
+
4770
+ <!ELEMENT xades:SignatureTimeStamp (ds:CanonicalizationMethod?, (xades:EncapsulatedTimeStamp
4771
+ | xades:XMLTimeStamp)+)>
4772
+ <!ATTLIST xades:SignatureTimeStamp
4773
+ Id ID #IMPLIED
4774
+ >
4775
+
4776
+ <!-- End AllDataObjectsTimeStamp, IndividualDataObjectsTimeStamp,
4777
+ SignatureTimeStamp -->
4778
+
4779
+ <!-- Start CompleteCertificateRefs -->
4780
+
4781
+ <!ELEMENT xades:CompleteCertificateRefs (xades:CertRefs)>
4782
+ <!ATTLIST xades:CompleteCertificateRefs
4783
+ Id ID #IMPLIED
4784
+ >
4785
+ <!ELEMENT xades:CertRefs (xades:Cert+)>
4786
+
4787
+ <!-- End CompleteCertificateRefs -->
4788
+
4789
+ <!-- Start AttributeCertificateRefs -->
4790
+
4791
+ <!ELEMENT xades:AttributeCertificateRefs (xades:CertRefs)>
4792
+ <!ATTLIST xades:AttributeCertificateRefs
4793
+ Id ID #IMPLIED
4794
+ >
4795
+
4796
+ <!-- End AttributeCertificateRefs -->
4797
+
4798
+ <!-- Start CompleteRevocationRefs -->
4799
+
4800
+ <!ELEMENT xades:CompleteRevocationRefs (xades:CRLRefs?, xades:OCSPRefs?, xades:OtherRefs?)>
4801
+ <!ATTLIST xades:CompleteRevocationRefs
4802
+ Id ID #IMPLIED
4803
+ >
4804
+ <!ELEMENT xades:CRLRefs (xades:CRLRef+)>
4805
+ <!ELEMENT xades:OCSPRefs (xades:OCSPRef+)>
4806
+ <!ELEMENT xades:OtherRefs (xades:OtherRef+)>
4807
+
4808
+ <!ELEMENT xades:CRLRef (xades:DigestAlgAndValue, xades:CRLIdentifier?)>
4809
+ <!ELEMENT xades:OCSPRef (xades:OCSPIdentifier, xades:DigestAlgAndValue?)>
4810
+ <!ELEMENT xades:OtherRef (#PCDATA %Any.ANY; )*>
4811
+
4812
+ <!ELEMENT xades:DigestAlgAndValue (ds:DigestMethod, ds:DigestValue)>
4813
+ <!ELEMENT xades:CRLIdentifier (xades:Issuer, xades:IssueTime, xades:Number?)>
4814
+ <!ATTLIST xades:CRLIdentifier
4815
+ URI CDATA #IMPLIED
4816
+ >
4817
+ <!ELEMENT xades:OCSPIdentifier (xades:ResponderID, xades:ProducedAt)>
4818
+ <!ATTLIST xades:OCSPIdentifier
4819
+ URI CDATA #IMPLIED
4820
+ >
4821
+
4822
+ <!ELEMENT xades:Issuer (#PCDATA)>
4823
+ <!ELEMENT xades:IssueTime (#PCDATA)>
4824
+ <!ELEMENT xades:Number (#PCDATA)>
4825
+
4826
+ <!ELEMENT xades:ResponderID (xades:ByName | xades:ByKey)>
4827
+ <!ELEMENT xades:ByName (#PCDATA)>
4828
+ <!ELEMENT xades:ByKey (#PCDATA)>
4829
+ <!ELEMENT xades:ProducedAt (#PCDATA)>
4830
+
4831
+ <!-- End CompleteRevocationRefs -->
4832
+
4833
+ <!-- Start AttributeRevocationRefs -->
4834
+
4835
+ <!ELEMENT xades:AttributeRevocationRefs (xades:CRLRefs?, xades:OCSPRefs?, xades:OtherRefs?)>
4836
+ <!ATTLIST xades:AttributeRevocationRefs
4837
+ Id ID #IMPLIED
4838
+ >
4839
+
4840
+ <!-- End AttributeRevocationRefs -->
4841
+
4842
+ <!-- Start SigAndRefsTimeStamp, RefsOnlyTimeStamp -->
4843
+
4844
+ <!ELEMENT xades:SigAndRefsTimeStamp (xades:Include*, ds:CanonicalizationMethod?,
4845
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp)+)>
4846
+ <!ATTLIST xades:SigAndRefsTimeStamp
4847
+ Id ID #IMPLIED
4848
+ >
4849
+
4850
+ <!ELEMENT xades:RefsOnlyTimeStamp (xades:Include*, ds:CanonicalizationMethod?,
4851
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp)+)>
4852
+ <!ATTLIST xades:RefsOnlyTimeStamp
4853
+ Id ID #IMPLIED
4854
+ >
4855
+
4856
+ <!-- End SigAndRefsTimeStamp, RefsOnlyTimeStamp -->
4857
+
4858
+ <!-- Start CertificateValues -->
4859
+
4860
+ <!ELEMENT xades:CertificateValues (xades:EncapsulatedX509Certificate |
4861
+ xades:OtherCertificate)*>
4862
+ <!ATTLIST xades:CertificateValues
4863
+ Id ID #IMPLIED
4864
+ >
4865
+
4866
+ <!ELEMENT xades:EncapsulatedX509Certificate (#PCDATA)>
4867
+ <!ATTLIST xades:EncapsulatedX509Certificate
4868
+ Id ID #IMPLIED
4869
+ Encoding CDATA #IMPLIED
4870
+ >
4871
+ <!ELEMENT xades:OtherCertificate (#PCDATA %Any.ANY;)*>
4872
+
4873
+ <!ELEMENT xades:AttrAuthoritiesCertValues (xades:EncapsulatedX509Certificate |
4874
+ xades:OtherCertificate)*>
4875
+ <!ATTLIST xades:AttrAuthoritiesCertValues
4876
+ Id ID #IMPLIED
4877
+ >
4878
+
4879
+ <!-- Start RevocationValues -->
4880
+
4881
+ <!ELEMENT xades:RevocationValues (xades:CRLValues?, xades:OCSPValues?, xades:OtherValues?)>
4882
+ <!ATTLIST xades:RevocationValues
4883
+ Id ID #IMPLIED
4884
+ >
4885
+
4886
+ <!ELEMENT xades:CRLValues (xades:EncapsulatedCRLValue+)>
4887
+ <!ELEMENT xades:OCSPValues (xades:EncapsulatedOCSPValue+)>
4888
+ <!ELEMENT xades:OtherValues (xades:OtherValue+)>
4889
+
4890
+ <!ELEMENT xades:EncapsulatedCRLValue (#PCDATA)>
4891
+ <!ATTLIST xades:EncapsulatedCRLValue
4892
+ Id ID #IMPLIED
4893
+ Encoding CDATA #IMPLIED
4894
+ >
4895
+ <!ELEMENT xades:EncapsulatedOCSPValue (#PCDATA)>
4896
+ <!ATTLIST xades:EncapsulatedOCSPValue
4897
+ Id ID #IMPLIED
4898
+ Encoding CDATA #IMPLIED
4899
+ >
4900
+ <!ELEMENT xades:OtherValue (#PCDATA %Any.ANY; )*>
4901
+
4902
+ <!-- End RevocationValues -->
4903
+
4904
+ <!ELEMENT xades:AttributeRevocationValues (xades:CRLValues?, xades:OCSPValues?, xades:OtherValues?)>
4905
+ <!ATTLIST xades:AttributeRevocationValues
4906
+ Id ID #IMPLIED
4907
+ >
4908
+ <!-- Start ArchiveTimeStamp -->
4909
+
4910
+ <!ELEMENT xades:ArchiveTimeStamp (xades:Include*, ds:CanonicalizationMethod?,
4911
+ (xades:EncapsulatedTimeStamp | xades:XMLTimeStamp)+)>
4912
+ <!ATTLIST xades:ArchiveTimeStamp
4913
+ Id ID #IMPLIED
4914
+ >
4915
+
4916
+
4917
+ <!-- End ArchiveTimeStamp -->