Business-cXML
view release on metacpan or search on metacpan
t/xml-catalog/cXML-1.2.036/cXML.dtd view on Meta::CPAN
<!--
If you claim an exemption from taxes,
some tax authorities, such as Portugal SAF-T,
require you to specify an exemption code and exemption reason.
exemptCode
specifies the code against which the tax is exempted.
-->
<!ELEMENT TaxExemption (ExemptReason?)>
<!ATTLIST TaxExemption
exemptCode %string; #REQUIRED
>
<!--
ExemptReason
specifies the exemption reason for zero tax.
This would have no relation with the existing "exemptDetail" attribute.
Existing attribute "exemptDetail" will not be ignored and this will also will be kept along with the new element "ExemptReason".
xml:lang
the language in which the exemption reason is written.
-->
<!ELEMENT ExemptReason (#PCDATA) >
<!ATTLIST ExemptReason
xml:lang %xmlLangCode; #REQUIRED
>
<!--
Defines details of one type of tax.
TaxableAmount
The taxable amount.
TaxAmount
The tax amount.
TaxLocation
The tax location.
Description
The textual description of the current type of tax.
TriangularTransactionLawReference
The law reference for transactions where isTriangularTransaction is True
purpose
The purpose of the tax, e.g., tax (tax), custom duty, shippingTax,
specialHandlingTax, etc.
category
The tax category, Sales tax (sales), Use tax (usage), VAT (vat),
GST (gst) are defined categories. Other values are permitted.
percentageRate
The tax rate in number of percentage.
isVatRecoverable
True if the VAT is recoverable. Default is false.
taxPointDate
refers to the date on which VAT becomes due.
paymentDate
indicate the date when payment must be made.
isTriangularTransaction
True if the transaction is triangular. Default is false.
exemptDetail
If the TaxAmount is zero, VAT or other regulations may require
a reason why. zeroRated means the tax rate is zero. exempt
means the item or items are exempt from taxation.
taxRateType
Specify the tax rate type code(a string) that corresponds to a specific tax type.
For example, in Germany the tax rate of 19% for value-added tax (VAT) corresponds to the âStandardâ tax rate type.
In different EU member states, different VAT rates are allowed.
The tax rate type makes it easy for the back-end system to handle different rates that result from changes in tax law.
basePercentageRate
The base tax rate in number of percentage.
For some Tax categories (eg, ICMS for Brazil) TaxAmount will be calculated
considering the basePercentageRate along with percentageRate.
TaxAmount = TaxableAmount * percentageRate * basePercentageRate
Used only in the Quote Messages.
isIncludedInPrice
True if the TaxAmount is included in price. Default is false.
Used only in the Quote Messages.
-->
<!ELEMENT TaxDetail (TaxableAmount?, TaxAmount, TaxLocation?, Description?,
TriangularTransactionLawReference?, TaxRegime?, TaxExemption?,
Extrinsic*)>
<!ATTLIST TaxDetail
taxedElement IDREF #IMPLIED
purpose %string; #IMPLIED
category %string; #REQUIRED
percentageRate %r8; #IMPLIED
isVatRecoverable (yes) #IMPLIED
taxPointDate %datetime.tz; #IMPLIED
paymentDate %datetime.tz; #IMPLIED
isTriangularTransaction (yes) #IMPLIED
exemptDetail (zeroRated | exempt) #IMPLIED
isWithholdingTax (yes) #IMPLIED
taxRateType %string; #IMPLIED
basePercentageRate %r8; #IMPLIED
isIncludedInPrice (yes) #IMPLIED
>
<!-- TaxRegime is related to the type of supplier activities and the
commodities in the invoice. Companies pay taxes based on the tax regime
they are enrolled. Sample tax regimes: Assimilated Regime wages, Regime
of Small Taxpayers (REPECO), Regimen of business and professional activities,
etc. Multiple tax regimes can be associated with a single invoice.
-->
<!ELEMENT TaxRegime (#PCDATA)>
<!--
Definition of a cXML Tax item. This represents what a Tax element should
be in the classic notion of a line on a PO or Invoice. It can also
represent a per-lineitem tax element depending on where it appears
(inside of a item ELEMENT or inside of a something like a supplierOrder
ELEMENT).
Represents a tax item in the shopping basket. There could be one of these
for the entire order, or one per lineitem.
The total amount of taxes for the line item or order should be reflected
in the Money element. The breakdown of taxes, for example, tax on shipping
or tax on goods should be represented in separate TaxDetail elements.
-->
<!ELEMENT Tax (Money, Description, TaxDetail*, Distribution*, Extrinsic*)>
<!--
Defines a Modifications element which provides the original unit
price or shipping price and then describes a set of 1 or more
modifications to that price. There can one per Shipping element.
The optional method attribute defines how multiple Modification elements
are combined.
-->
<!ELEMENT Modifications (Modification+)>
<!--
Defines the original price or shipping price and optionally provides a type.
Example type values might be MSRP, ListPrice, Actual, AverageSellingPrice,
CalculationGross, BaseCharge, AverageWholesalePrice, ExportPrice, AlternatePrice,
ContractPrice, etc.
-->
<!ELEMENT OriginalPrice (Money)>
<!ATTLIST OriginalPrice
type %string; #IMPLIED
>
<!--
Defines a Modification element and optionally provide a level: AdditionalDeduction: used only when allownces are involved
AdditionalCost: used when additional charges are involved
OriginalPrice represents the price on which the discount or charges apply.
Tax represents the Tax on the Modification
Optional attribute level represent level of modification(using in cascading modifications).
Example:
Charge 1 (Level 1): Original Price 10$ Charge: 1$
Charge 2 (Level 1): Original Price 10$ Charge: 1$
Charge 3 (Level 2): Original Price 8$ Charge: 1$
Charge 4 (Level 3): Original Price 7$ Charge: 1$ ...
-->
<!ELEMENT Modification (OriginalPrice?, (AdditionalDeduction | AdditionalCost), Tax?, ModificationDetail?)>
<!ATTLIST Modification
level %uint; #IMPLIED
>
<!--
The type attribute can specify the type of deduction.
Eg. discount -->
<!ELEMENT AdditionalDeduction (DeductionAmount | DeductionPercent | DeductedPrice)>
<!ATTLIST AdditionalDeduction
type %string; #IMPLIED
>
<!ELEMENT ModificationDetail (Description?, Extrinsic*)>
<!ATTLIST ModificationDetail
name %string; #REQUIRED
code %string; #IMPLIED
startDate %datetime.tz; #IMPLIED
endDate %datetime.tz; #IMPLIED
>
<!ELEMENT Value EMPTY>
<!ATTLIST Value
value %number; #REQUIRED
>
<!ELEMENT Percentage EMPTY>
<!ATTLIST Percentage
percent %r8; #REQUIRED
>
<!--
The Money element is the final cost amount for this Additional Cost or Charge
DO NOT USE THIS ELEMENT FOR SHIPPING, SPECIAL HANDLING, FREIGHT, etc
-->
<!ELEMENT AdditionalCost (Money|Percentage)>
<!--
Defines discount applied.
DiscountAmount
The discount expressed as a flat amount with currency.
DiscountPercent
The discount rate expressed as a percentage.
-->
<!ELEMENT Discount (DiscountPercent | DiscountAmount)>
<!-- Defines the Basis for the Discount. -->
<!ELEMENT DiscountBasis (Money)>
<!-- Defines the details of adjustments given over category and region -->
<!ELEMENT TaxAdjustmentDetail (Money)>
<!ATTLIST TaxAdjustmentDetail
category %string; #REQUIRED
region %string; #IMPLIED
>
<!--
Defines TaxAdjustment given on the Total Tax, currently to be used with PPR document
to specify the total adjustments given on the Tax for the payable.
Money
Describes the Total Tax Adjustment given on the payable.
TaxAdjustmentDetail
Describes the list of all the Adjustments given on the payable on
the basis of tax category and region.
-->
<!ELEMENT TaxAdjustment (Money, TaxAdjustmentDetail*)>
<!--
Defines the discount rate
percent
The discount rate expressed as a percentage. A negative discount percent
represents a penalty.
-->
<!ELEMENT DiscountPercent EMPTY>
<!ATTLIST DiscountPercent
percent %r8; #REQUIRED
>
<!--
Defines the deduction rate
percent
The deduction rate expressed as a percentage.
-->
<!ELEMENT DeductionPercent EMPTY>
<!ATTLIST DeductionPercent
percent %r8; #REQUIRED
>
<!--
The ProductMovementItemIDInfo element provides a clear reference to the line item
in a Consignment Movement.
movementLineNumber
The line number of current line item, copied from movement document.
movementID
The id of a consignment movement entry known to the buyer system.
movementDate
The date and time the product was moved from consignment inventory to the buyer inventory.
-->
<!ELEMENT ProductMovementItemIDInfo (IdReference*)>
<!ATTLIST ProductMovementItemIDInfo
movementLineNumber %uint; #REQUIRED
movementID %string; #REQUIRED
movementDate %datetime.tz; #REQUIRED
>
<!-- The InvoiceItemIDInfo element provides a clear reference to the line item in a InvoiceDetailRequest document.
invoiceLineNumber
The line number of a line item, copied from InvoiceDetailRequest.
invoiceID
The id of an invoice known to the supplier system.
invoiceDate
The invoice date.
-->
<!ELEMENT InvoiceItemIDInfo (IdReference*)>
<!ATTLIST InvoiceItemIDInfo
invoiceLineNumber %uint; #REQUIRED
invoiceID %string; #REQUIRED
invoiceDate %datetime.tz; #IMPLIED
>
<!--
ReturnQuantity
Quantity that was returned.
-->
<!ELEMENT ReturnQuantity (UnitOfMeasure)>
<!ATTLIST ReturnQuantity
quantity %r8; #REQUIRED
>
<!--
For cXML license agreement information, please see
http://www.cxml.org/home/license.asp
$Id: //ariba/cxml/modules/Version.mod#4 $
-->
<!--
Another top-level entity used in Transport.mod. Defined here to allow
easy updates to the release version of cXML without opening
t/xml-catalog/cXML-1.2.036/cXML.dtd view on Meta::CPAN
Address
To provide a plant location description, the domain attribute of the element IdReference should be set to "buyerLocationID", the identifier to the plantID.
The addressIDDomain should be set to "buyerLocationID" and the addressID to the plantID. Use the name for the description.
-->
<!ELEMENT ShipTo (Address, CarrierIdentifier*, TransportInformation*, IdReference*)>
<!--
Definition of a cXML Shipping item. Represents a shipping cost in the
shopping basket (PunchOutOrderMessage) or an order to the supplier
(OrderRequest). There could be one of these for the entire order, or one
per lineitem.
The Modifications element (if present) represents any changes to
the shipping cost.
trackingDomain
represents the logistics supplier, I.E., "FedEx", "UPS", etc.
trackingId
an optional element value that represents the logistics supplier
tracking number
tracking
Deprecated - Do Not Use
-->
<!ELEMENT Shipping (Money, Description, Modifications?)>
<!ATTLIST Shipping
trackingDomain %string; #IMPLIED
trackingId %string; #IMPLIED
tracking %string; #IMPLIED
>
<!--
Defines the payment terms in a PaymentProposalRequest document.
Description
A general description on payment terms.
Extrinsic
Additional information related to this payment terms.
paymentTermCode
This is the payment term code defined by buyers in ERP.
-->
<!ELEMENT PaymentTerms (PaymentTerm*, Description?, Extrinsic*)>
<!ATTLIST PaymentTerms
paymentTermCode %string; #REQUIRED
>
<!--
Defines a payment term in an invoice or order. This deprecates the
InvoiceDetailPaymentTerm previously defined. Payment term can be the
net term (without discount) or discount term (with discount).
payInNumberOfDays
The number of days after invoice effective date for the invoice to be paid.
Discount
The percentage or amount of the discount term. This element should be omitted
if the payment term is a net term.
Extrinsic
Additional information related to this payment term.
-->
<!ELEMENT PaymentTerm (Discount?, Extrinsic*)>
<!ATTLIST PaymentTerm
payInNumberOfDays %uint; #REQUIRED
>
<!--
The list of valid payment types.
-->
<!ENTITY % cxml.payment "PCard">
<!ELEMENT Payment (%cxml.payment;)>
<!--
Defines an accounting segment. Segment is an older, deprecated way to
transport this information.
type
The accounting type of this segment.
id
The unique key of this Segment against the type.
description
Textual description of the Segment. For human readability.
-->
<!ELEMENT Segment EMPTY>
<!ATTLIST Segment
type %string; #REQUIRED
id %string; #REQUIRED
description %string; #REQUIRED
>
<!--
Defines an accounting segment. AccountingSegment is the newer, better
way to transport this information. Name corresponds to the type
attribute of Segment; Description corresponds to description. Both add
required locale attributes to the strings.
id
The unique key of this Segment against the type.
-->
<!ELEMENT AccountingSegment ( Name, Description )>
<!ATTLIST AccountingSegment
id %string; #REQUIRED
>
<!--
An accounting object. Use of the Segment element here is deprecated.
name
The name of the object containing the specified accounting segments.
-->
<!ENTITY % cxml.accounting "( Segment+ | AccountingSegment+ )">
<!ELEMENT Accounting (%cxml.accounting;)>
<!ATTLIST Accounting
name %string; #REQUIRED
>
t/xml-catalog/cXML-1.2.036/cXML.dtd view on Meta::CPAN
<!--
The representation of a contract line item to be sent to external system.
TermsOfDelivery
Optional item level incoTerms.
ReferenceDocumentInfo
Optional reference document info for this line item.
For example, Requisition or RFQ in the external system.
<ReferenceDocumentInfo lineNumber = "1">
<DocumentInfo documentID = "RFQ12345"
documentType = "RFQ"
documentDate = "2005-11-07T07:03:34-05:00">
</DocumentInfo>
</ReferenceDocumentInfo>
Note:
The lineNumber attribute in the <ItemIn> will be used to specify the corresponding
lineNumber on the contract in the source buyer system.
At an implementation, level checks should be made to validate this.
Note:
itemClassification attribute in the <ItemIn> will be used to specify whether the current line item is material or service.
Note:
The external system Id of PaymentTerm can be sent as an extrinsic inside of <PaymentTerm>
For example,
<PaymentTerm payInNumberOfDays="30">
<Extrinsic name="Id">Net30</Extrinsic>
</PaymentTerm>
Note:
Address in ShipTo will be used specify Location (Plant or StorageLocation for SAP) of the line item.
For example,
<ShipTo>
<Address
addressID="3000"
addressIDDomain="buyerLocationID"
isoCountryCode="US">
<Name xml:lang="en">Plant 3000</Name>
</Address>
</ShipTo>
Note:
<IdReference> in <ItemID> will be used to send the corresponding line number of the
contract in the external system. For example, domain = 'SAPLineNumber', identifier='0100'
Note:
The quantity attribute in the ItemIn tag should be set to target quantity. If the line item is amount based,
it could be set to one.
Note:
The UnitsOfMeasure of Min/MaxQuantity and Min/MaxReleaseQuantity is same as the one in ItemDetail.
Note:
The MaxReleaseAmount/Quantity and MinReleaseAmount/Quantity at an item level
indicate the item level amounts and quantities per release (purchase order).
Note:
<Modifications> in <UnitPrice> will be used to send Discount amount/percent, Surcharges, Tax, and etc.
For example,
<UnitPrice>
<Money currency="USD">1000.00</Money>
<Modifications>
<Modification>
<AdditionalDeduction type="DISCOUNT">
<DeductionAmount>
<Money currency="USD">10.00</Money>
</DeductionAmount>
</AdditionalDeduction>
</Modification>
</Modifications>
</UnitPrice>
operation
Represents the state of the Contract line item that is being sent to the external system.
new: represents new contract line item sent to External system
update: represents update to an existing contract line item
delete: represents instruction to delete this contract line item in external system.
-->
<!ELEMENT ContractItemIn (MaxAmount?, MinAmount?, MaxReleaseAmount?, MinReleaseAmount?,
MaxQuantity?, MinQuantity?, MaxReleaseQuantity?, MinReleaseQuantity?,
TermsOfDelivery?, ItemIn, ReferenceDocumentInfo*)>
<!ATTLIST ContractItemIn
operation (new | update | delete) #IMPLIED
>
<!--
Identifies Parent contract Id if the current contract is a part of an hierarchy.
-->
<!ELEMENT ParentContractInfo (DocumentInfo)>
<!--
Identifies legal entity in the external system.
identifier
Unique Id for Legal Entity. For example, 3000.
domain
Domain is the name of the legal entity in the external system.
For example, CompanyCode for SAP, BusinessUnit for PSoft
-->
<!ELEMENT LegalEntity (IdReference)>
<!--
Identifies Purchase Unit or Purchase group in the external system.
identifier
Unique Id for Purchase Unit or Purchase Group. For example, 3000.
domain
Domain is the name of the purchase unit or Purchase group in the external system.
For example, PurchasingOrganization or PurchasingGroup for SAP
-->
<!ELEMENT OrganizationalUnit (IdReference)>
<!--
The representation of a contract status including line items.
( run in 0.773 second using v1.01-cache-2.11-cpan-ceb78f64989 )