...
<?xml version="1.0" encoding="UTF-8"?> |
XSD for Payment Upload
Code Block |
---|
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2007-2008 The Kuali Foundation Licensed under the Educational Community License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.opensource.org/licenses/ecl2.php Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <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="http://localhost:8080/kfs-dev/static/xsd/sys/types.xsd" /> <xsd:import namespace="http://www.kuali.org/kfs/sys/ddTypes" schemaLocation="http://localhost:8080/kfs-dev/static/xsd/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> <!-- END UCI CODE --> <!-- definition of simple type elements --> <xsd:element name="chart" type="xsd:normalizedString"/> <xsd:element name="unit" type="xsd:normalizedString"/> <xsd:element name="sub_unit" type="xsd:normalizedString"/> <!-- KFSI-1202 just make create date xsd:datetime --> <xsd:element name="creation_date" type="xsd:dateTime"/> <xsd:element name="source_doc_nbr" type="xsd:normalizedString"/> <xsd:element name="invoice_nbr" type="xsd:normalizedString"/> <xsd:element name="po_nbr" type="xsd:normalizedString"/> <xsd:element name="req_nbr" type="xsd:normalizedString"/> <xsd:element name="org_doc_nbr" type="xsd:normalizedString"/> <xsd:element name="payee_name" type="xsd:normalizedString"/> <xsd:element name="payee_own_cd" type="xsd:normalizedString"/> <xsd:element name="customer_institution_identifier" type="xsd:normalizedString"/> <xsd:element name="address1" type="xsd:normalizedString"/> <xsd:element name="address2" type="xsd:normalizedString"/> <xsd:element name="address3" type="xsd:normalizedString"/> <xsd:element name="address4" type="xsd:normalizedString"/> <xsd:element name="city" type="xsd:normalizedString"/> <xsd:element name="state" type="xsd:normalizedString"/> <xsd:element name="zip" type="xsd:normalizedString"/> <xsd:element name="country" type="xsd:normalizedString"/> <xsd:element name="campus_address_ind" type="xsd:normalizedString"/> <!-- 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="xsd:normalizedString"/> <xsd:element name="special_handling_ind" type="xsd:normalizedString"/> <xsd:element name="taxable_ind" type="xsd:normalizedString"/> <xsd:element name="orig_invoice_amt" type="xsd:decimal"/> <xsd:element name="net_payment_amt" type="xsd:decimal"/> <xsd:element name="invoice_tot_discount_amt" type="xsd:decimal"/> <xsd:element name="invoice_tot_ship_amt" type="xsd:decimal"/> <xsd:element name="invoice_tot_other_debits" type="xsd:decimal"/> <xsd:element name="invoice_tot_other_credits" type="xsd:decimal"/> <xsd:element name="nra_ind" type="xsd:normalizedString"/> <xsd:element name="combine_group_ind" type="xsd:normalizedString"/> <xsd:element name="coa_cd" type="xsd:normalizedString"/> <xsd:element name="account_nbr" type="xsd:normalizedString"/> <xsd:element name="sub_account_nbr" type="xsd:normalizedString"/> <xsd:element name="object_cd" type="xsd:normalizedString"/> <xsd:element name="sub_object_cd" type="xsd:normalizedString"/> <xsd:element name="org_ref_id" type="xsd:normalizedString"/> <xsd:element name="project_cd" type="xsd:normalizedString"/> <xsd:element name="amount" type="xsd:normalizedString"/> <xsd:element name="payment_text" type="xsd:normalizedString"/> <xsd:element name="detail_count" type="xsd:integer"/> <xsd:element name="detail_tot_amt" type="xsd:decimal"/> <xsd:element name="bank_code" type="xsd:normalizedString"/> <xsd:element name="fs_origin_cd" type="xsd:normalizedString"/> <xsd:element name="fdoc_typ_cd" type="xsd:normalizedString"/> <!-- 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" /> <!-- END UCI CODE KFSI-470 --> <!-- WARREN ADD delivery date --> <xsd:element name="delivery_date" type="xsd:date"/> <!-- 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"/> <xsd:element maxOccurs="1" minOccurs="0" ref="customer_institution_identifier"/> <!-- 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"/> <!-- UCI CODE KFSI-470 --> <!-- WARREN DELETE <xsd:element maxOccurs="1" minOccurs="0" ref="tax_type_cd" /> --> </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"/> <xsd:element maxOccurs="1" minOccurs="0" ref="payment_date"/> <xsd:element maxOccurs="1" minOccurs="0" ref="attachment_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"/> <xsd:element maxOccurs="1" minOccurs="0" ref="bank_code"/> <!-- 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 <xsd:element maxOccurs="27" minOccurs="1" ref="detail"/> --> <xsd:element maxOccurs="200" minOccurs="1" ref="detail"/> <!-- END UCI CODE KFSI-4582 --> <!-- 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="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> <xsd:element maxOccurs="1" minOccurs="0" name="address_id" type="kfs:oneToTenCharType"/> <!-- 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> |
...