...
Code Block |
---|
<?xml version="1.0" encoding="UTF-8"?> <!-- The Kuali Financial System, a comprehensive financial management system for higher education. Copyright 2005-2018 Kuali, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. --> <xsd:schema elementFormDefault="qualified" targetNamespace="http://www.kuali.org/kfs/pdp/payment" xmlns:kfs="http://www.kuali.org/kfs/sys/types" xmlns:dd="http://www.kuali.org/kfs/sys/ddTypes" xmlns="http://www.kuali.org/kfs/pdp/payment" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:import namespace="http://www.kuali.org/kfs/sys/types" schemaLocation="classpath:org/kuali/kfs/sys/types.xsd"/> <xsd:import namespace="http://www.kuali.org/kfs/sys/ddTypes" schemaLocation="classpath:edu/uci/kfs/sys/ddTypes.xsd" /> <!-- simple data types --> <xsd:simpleType name="versionType"> <xsd:restriction base="xsd:string"> <xsd:pattern value="1.0"/> </xsd:restriction> </xsd:simpleType> <!-- BEGIN UCI CODE --> <xsd:simpleType name="oneToSevenCharType"> <xsd:restriction base="xsd:string"> <xsd:minLength value="1"/> <xsd:maxLength value="7"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="useTaxTypeCodeType"> <xsd:restriction base="xsd:string"> <!-- WARREN CHANGE: change codes from E/U to D/I --> <!-- <xsd:enumeration value="E"/> <xsd:enumeration value="U"/> --> <xsd:enumeration value="D"/> <xsd:enumeration value="I"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="uciPurchaseOrderNbr"> <xsd:restriction base="xsd:normalizedString"> <xsd:maxLength value="9"/> <xsd:whiteSpace value="replace"/> </xsd:restriction> </xsd:simpleType> <!-- END UCI CODE --> <!-- BEGIN UCI CODE --> <!-- definition of simple type elements --> <xsd:element name="chart" type="dd:PaymentFileLoad.chart"/> <xsd:element name="unit" type="dd:PaymentFileLoad.unit"/> <xsd:element name="sub_unit" type="dd:PaymentFileLoad.subUnit"/> <!-- KFSI-1202 just make create date xsd:datetime --> <xsd:element name="creation_date" type="xsd:dateTime"/> <xsd:element name="source_doc_nbr" type="dd:PaymentDetail.custPaymentDocNbr"/> <xsd:element name="invoice_nbr" type="dd:PaymentDetail.invoiceNbr"/> <!-- KFSI-14071 limit the length to 9 max --> <xsd:element name="po_nbr" type="uciPurchaseOrderNbr"/> <xsd:element name="req_nbr" type="dd:PaymentDetail.requisitionNbr"/> <xsd:element name="org_doc_nbr" type="dd:PaymentDetail.organizationDocNbr"/> <xsd:element name="payee_name" type="dd:PaymentGroup.payeeName"/> <xsd:element name="payee_own_cd" type="dd:PaymentGroup.payeeOwnerCd"/> <xsd:element name="customer_institution_identifier" type="dd:PaymentGroup.customerInstitutionNumber"/> <xsd:element name="address1" type="dd:PaymentGroup.line1Address"/> <xsd:element name="address2" type="dd:PaymentGroup.line2Address"/> <xsd:element name="address3" type="dd:PaymentGroup.line3Address"/> <xsd:element name="address4" type="dd:PaymentGroup.line4Address"/> <xsd:element name="city" type="dd:PaymentGroup.city"/> <xsd:element name="state" type="dd:PaymentGroup.state"/> <xsd:element name="zip" type="dd:PaymentGroup.zipCd"/> <xsd:element name="country" type="dd:PaymentGroup.country"/> <xsd:element name="campus_address_ind" type="dd:PaymentGroup.campusAddress"/> <!-- KFSI-1202 just make date xsd:date --> <xsd:element name="payment_date" type="xsd:date"/> <!-- KFSI-1202 just make date xsd:date --> <xsd:element name="invoice_date" type="xsd:date"/> <xsd:element name="attachment_ind" type="dd:PaymentGroup.pymtAttachment"/> <xsd:element name="immediate_ind" type="xsd:normalizedString"/> <xsd:element name="special_handling_ind" type="dd:PaymentGroup.pymtSpecialHandling"/> <xsd:element name="taxable_ind" type="dd:PaymentGroup.taxablePayment"/> <xsd:element name="orig_invoice_amt" type="dd:PaymentDetail.origInvoiceAmount"/> <xsd:element name="net_payment_amt" type="dd:PaymentDetail.netPaymentAmount"/> <xsd:element name="invoice_tot_discount_amt" type="dd:PaymentDetail.invTotDiscountAmount"/> <xsd:element name="invoice_tot_ship_amt" type="dd:PaymentDetail.invTotShipAmount"/> <xsd:element name="invoice_tot_other_debits" type="dd:PaymentDetail.invTotOtherDebitAmount"/> <xsd:element name="invoice_tot_other_credits" type="dd:PaymentDetail.invTotOtherCreditAmount"/> <xsd:element name="nra_ind" type="dd:PaymentGroup.nraPayment"/> <xsd:element name="combine_group_ind" type="dd:PaymentGroup.combineGroups"/> <xsd:element name="coa_cd" type="dd:PaymentAccountDetail.finChartCode"/> <xsd:element name="account_nbr" type="dd:PaymentAccountDetail.accountNbr"/> <xsd:element name="sub_account_nbr" type="dd:PaymentAccountDetail.subAccountNbr"/> <xsd:element name="object_cd" type="dd:PaymentAccountDetail.finObjectCode"/> <xsd:element name="sub_object_cd" type="dd:PaymentAccountDetail.finSubObjectCode"/> <xsd:element name="org_ref_id" type="dd:PaymentAccountDetail.orgReferenceId"/> <xsd:element name="project_cd" type="dd:PaymentAccountDetail.projectCode"/> <xsd:element name="amount" type="dd:PaymentAccountDetail.accountNetAmount"/> <xsd:element name="payment_text" type="dd:PaymentNoteText.customerNoteText"/> <xsd:element name="detail_count" type="dd:PaymentFileLoad.paymentCount"/> <xsd:element name="detail_tot_amt" type="dd:PaymentFileLoad.paymentTotalAmount"/> <!-- BEGIN UCI KFSI-3933 --> <xsd:element name="bank_code" type="dd:Bank.bankCode"/> <!-- END UCI --> <xsd:element name="fs_origin_cd" type="dd:PaymentDetail.financialSystemOriginCode"/> <xsd:element name="fdoc_typ_cd" type="dd:PaymentDetail.financialDocumentTypeCode"/> <!-- BEGIN UCI CODE: [FSI-142] INT-PDP-004 Manual/Local Check Upload --> <!-- KFSI-1202 just make date xsd:date --> <xsd:element name="disbursement_date" type="xsd:date" /> <xsd:element name="disbursement_number" type="xsd:string" /> <xsd:element name="disbursement_type" type="kfs:zeroToFourCharType" /> <xsd:element name="pmt_stat_cd" type="kfs:zeroToFourCharType" /> <xsd:element name="generate_gl_entries" type="xsd:boolean" /> <!-- END UCI --> <!-- BEGIN UCI CODE KFSI-191 --> <xsd:element name="asset_type_code" type="oneToSevenCharType" /> <xsd:element name="vendor_number" type="kfs:oneToFortyCharType" /> <xsd:element name="asset_number" type="xsd:integer" /> <xsd:element name="asset_manufacturer_name" type="kfs:zeroToFortyFiveCharType" /> <xsd:element name="asset_manufacturer_model_number" type="kfs:oneToTwentyFiveCharType" /> <xsd:element name="asset_description" type="kfs:oneToFortyCharType" /> <xsd:element name="asset_tag_number" type="kfs:oneToEightCharType" /> <xsd:element name="asset_serial_number" type="kfs:oneToTwentyFiveCharType" /> <xsd:element name="campus_code" type="kfs:oneToTwoCharType" /> <xsd:element name="building_code" type="kfs:oneToTenCharType" /> <xsd:element name="building_room_number" type="kfs:oneToEightCharType" /> <xsd:element name="building_sub_room_number" type="kfs:oneToTwoCharType" /> <!-- END UCI CODE KFSI-191 --> <!-- BEGIN UCI CODE KFSI-470 --> <xsd:element name="use_tax_type_cd" type="useTaxTypeCodeType" /> <!-- KFSI-6743 KFSI-470 --> <xsd:element name="delivery_date" type="xsd:date"/> <!-- END UCI CODE --> <!-- definition of attributes --> <!-- definition of complex type elements --> <xsd:element name="pdp_file"> <xsd:complexType> <xsd:sequence> <xsd:element ref="header"/> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="group"/> <xsd:element ref="trailer"/> </xsd:sequence> <xsd:attribute name="version" type="versionType" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name="accounting"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" ref="coa_cd"/> <xsd:element maxOccurs="1" minOccurs="1" ref="account_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="sub_account_nbr"/> <xsd:element ref="object_cd"/> <xsd:element maxOccurs="1" minOccurs="0" ref="sub_object_cd"/> <xsd:element maxOccurs="1" minOccurs="0" ref="org_ref_id"/> <xsd:element maxOccurs="1" minOccurs="0" ref="project_cd"/> <xsd:element ref="amount"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="header"> <xsd:complexType> <xsd:sequence> <xsd:element ref="chart"/> <xsd:element ref="unit"/> <xsd:element ref="sub_unit"/> <xsd:element ref="creation_date"/> <!-- BEGIN UCI CODE KFSI-142 --> <xsd:element maxOccurs="1" minOccurs="0" ref="generate_gl_entries"/> <!-- END UCI CODE --> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="trailer"> <xsd:complexType> <xsd:sequence> <xsd:element ref="detail_count"/> <xsd:element ref="detail_tot_amt"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="group"> <xsd:complexType> <xsd:sequence> <xsd:element ref="payee_name"/> <xsd:element maxOccurs="1" minOccurs="0" ref="payee_id"/> <xsd:element maxOccurs="1" minOccurs="0" ref="payee_own_cd"/> <!-- BEGIN UCI CODE: [KFSI-98] INT-PDP-003 Payment Upload Using PURAP Vendor--> <xsd:element maxOccurs="1" minOccurs="0" name="extension"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="1" minOccurs="0" name="address_id" type="kfs:oneToTenCharType"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element maxOccurs="1" minOccurs="0" ref="address1"/> <!-- END UCI CODE --> <xsd:element maxOccurs="1" minOccurs="0" ref="address2"/> <xsd:element maxOccurs="1" minOccurs="0" ref="address3"/> <xsd:element maxOccurs="1" minOccurs="0" ref="address4"/> <xsd:element maxOccurs="1" minOccurs="0" ref="city"/> <xsd:element maxOccurs="1" minOccurs="0" ref="state"/> <xsd:element maxOccurs="1" minOccurs="0" ref="zip"/> <xsd:element maxOccurs="1" minOccurs="0" ref="country"/> <xsd:element maxOccurs="1" minOccurs="0" ref="campus_address_ind"/> <!-- BEGIN UCI CODE: [KFSI-9418] force paymen date to be required --> <xsd:element maxOccurs="1" minOccurs="1" ref="payment_date"/> <!-- END UCI CODE --> <xsd:element maxOccurs="1" minOccurs="0" ref="attachment_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="immediate_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="special_handling_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="taxable_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="nra_ind"/> <xsd:element maxOccurs="1" minOccurs="0" ref="combine_group_ind"/> <!-- BEGIN UCI KFSI-3933 --> <xsd:element maxOccurs="1" minOccurs="0" ref="bank_code"/> <!-- END UCI --> <!-- BEGIN UCI CODE: [FSI-142] INT-PDP-004 Manual/Local Check Upload --> <xsd:element maxOccurs="1" minOccurs="0" ref="disbursement_date" /> <xsd:element maxOccurs="1" minOccurs="0" ref="disbursement_number" /> <xsd:element maxOccurs="1" minOccurs="0" ref="disbursement_type" /> <xsd:element maxOccurs="1" minOccurs="0" ref="pmt_stat_cd" /> <!-- END UCI --> <!-- Default check stub holds 27 note lines. There is a line printed for each detail so the number of detail items on a check needs to be subtracted from the total allowed note lines. This can't be enforced in the schema so it is possible to provide too many note lines in some cases. This rule will be enforced in code. Because of this, the maximum number of detail segments is 27 (assuming they have no notes). If your check stub holds more or less than 27 note lines, you need to change this, the maximum number of detail segments in this file and the setting MAX_NOTE_LINES in the application settings file. --> <!-- BEGIN UCI CODE KFSI-4582 up limit to 200 payment details KFSI-13238 up limit to 9999 KFS-451 lower limit to <xsd:element maxOccurs="27" minOccurs="1" ref="detail"/> 5000 --> <xsd:element maxOccurs="99995000" minOccurs="1" ref="detail"/> <!-- END UCI CODE KFSI-4582 KFSI-13238 --> <!-- BEGIN UCI CODE KFSI-191 --> <xsd:element maxOccurs="1" minOccurs="0" ref="capital_asset_information"/> <!-- END UCI CODE KFSI-191 --> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="detail"> <xsd:complexType> <xsd:sequence> <xsd:element ref="source_doc_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="po_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="req_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="org_doc_nbr"/> <xsd:element maxOccurs="1" minOccurs="0" ref="customer_institution_identifier"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_date"/> <xsd:element maxOccurs="1" minOccurs="0" ref="orig_invoice_amt"/> <xsd:element maxOccurs="1" minOccurs="0" ref="net_payment_amt"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_discount_amt"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_ship_amt"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_other_debits"/> <xsd:element maxOccurs="1" minOccurs="0" ref="invoice_tot_other_credits"/> <xsd:element maxOccurs="1" minOccurs="0" ref="fs_origin_cd"/> <xsd:element maxOccurs="1" minOccurs="0" ref="fdoc_typ_cd"/> <!-- WARREN ADD extension --> <xsd:element maxOccurs="1" minOccurs="0" name="extension"> <xsd:complexType> <xsd:sequence> <!-- UCI CODE KFSI-470 --> <!-- WARREN ADD --> <xsd:element maxOccurs="1" minOccurs="0" ref="use_tax_type_cd" /> <xsd:element maxOccurs="1" minOccurs="0" ref="delivery_date" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="accounting"/> <!-- Default check stub holds 27 note lines. There is a line printed for each detail so the number of detail items on a check needs to be subtracted from the total allowed note lines. This can't be enforced in the schema so it is possible to provide too many note lines in some cases. This rule will be enforced in code. Because of this, the maximum note lines a detail can have is 26 (assuming there is only one detail in the payment group). If your check stub holds more or less than 27 note lines, you need to change this, the maximum number of detail segments in this file and the setting MAX_NOTE_LINES in the application settings file. --> <xsd:element maxOccurs="26" minOccurs="0" ref="payment_text"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="payee_id"> <xsd:complexType> <xsd:simpleContent> <xsd:extension base="kfs:oneToTwentyFiveCharType"> <xsd:attribute name="id_type" type="kfs:oneAlphaType" use="required"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> </xsd:element> <!-- BEGIN UCI CODE KFSI-191 --> <xsd:element name="capital_asset_information"> <xsd:complexType> <xsd:choice> <xsd:element minOccurs="0" maxOccurs="1" ref="new_asset"/> <xsd:element minOccurs="0" maxOccurs="1" ref="existing_asset"/> </xsd:choice> </xsd:complexType> </xsd:element> <xsd:element name="existing_asset"> <xsd:complexType> <xsd:all> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_number"/> </xsd:all> </xsd:complexType> </xsd:element> <xsd:element name="new_asset"> <xsd:complexType> <xsd:sequence> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_type_code"/> <xsd:element minOccurs="0" maxOccurs="1" ref="vendor_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_manufacturer_name" /> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_manufacturer_model_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_description"/> <xsd:element minOccurs="0" maxOccurs="unbounded" ref="asset_info_detail"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="asset_info_detail"> <xsd:complexType> <xsd:all> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_tag_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="asset_serial_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="campus_code"/> <xsd:element minOccurs="0" maxOccurs="1" ref="building_code"/> <xsd:element minOccurs="0" maxOccurs="1" ref="building_room_number"/> <xsd:element minOccurs="0" maxOccurs="1" ref="building_sub_room_number"/> </xsd:all> </xsd:complexType> </xsd:element> <!-- END UCI CODE KFSI-191 --> </xsd:schema> |
...