<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:tranFin="urn:financial_2025_2.transactions.webservices.netsuite.com" xmlns:tranFinTyp="urn:types.financial_2025_2.transactions.webservices.netsuite.com" xmlns:platformCore="urn:core_2025_2.platform.webservices.netsuite.com" xmlns:platformCoreTyp="urn:types.core_2025_2.platform.webservices.netsuite.com" xmlns:platformCommon="urn:common_2025_2.platform.webservices.netsuite.com" xmlns:platformCommonTyp="urn:types.common_2025_2.platform.webservices.netsuite.com" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:financial_2025_2.transactions.webservices.netsuite.com" elementFormDefault="qualified">
    <import namespace="urn:core_2025_2.platform.webservices.netsuite.com" schemaLocation="../../../xsd/platform/v2025_2_0/core.xsd"/>
    <import namespace="urn:common_2025_2.platform.webservices.netsuite.com" schemaLocation="../../../xsd/platform/v2025_2_0/common.xsd"/>
    <import namespace="urn:types.financial_2025_2.transactions.webservices.netsuite.com" schemaLocation="../../../xsd/transactions/v2025_2_0/financialTypes.xsd"/>
    <element name="budget" type="tranFin:Budget"/>
    <complexType name="Budget">
        <complexContent>
            <extension base="platformCore:Record">
                <sequence>
                    <element name="year" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="customer" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="item" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="class" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="department" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="location" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="account" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="subsidiary" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="category" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="budgetType" type="tranFinTyp:BudgetBudgetType" minOccurs="0"/>
                    <element name="currency" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="periodAmount1" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount2" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount3" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount4" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount5" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount6" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount7" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount8" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount9" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount10" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount11" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount12" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount13" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount14" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount15" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount16" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount17" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount18" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount19" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount20" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount21" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount22" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount23" type="xsd:double" minOccurs="0"/>
                    <element name="periodAmount24" type="xsd:double" minOccurs="0"/>
                    <element name="amount" type="xsd:double" minOccurs="0"/>
                    <element name="accountingBook" type="platformCore:RecordRef" minOccurs="0"/>
                    <element name="customFieldList" type="platformCore:CustomFieldList" minOccurs="0"/>
                </sequence>
                <!-- primary record internalId -->
                <attribute name="internalId" type="xsd:string"/>
            </extension>
        </complexContent>
    </complexType>
    <element name="budgetSearch" type="tranFin:BudgetSearch"/>
    <complexType name="BudgetSearch">
        <complexContent>
            <extension base="platformCore:SearchRecord">
                <sequence>
                    <element name="basic" type="platformCommon:BudgetSearchBasic" minOccurs="0"/>
                    <element name="customSearchJoin" type="platformCommon:CustomSearchJoin" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="BudgetSearchAdvanced">
        <complexContent>
            <extension base="platformCore:SearchRecord">
                <sequence>
                    <element name="criteria" type="tranFin:BudgetSearch" minOccurs="0"/>
                    <element name="columns" type="tranFin:BudgetSearchRow" minOccurs="0"/>
                </sequence>
                <attribute name="savedSearchId" type="xsd:string"/>
                <attribute name="savedSearchScriptId" type="xsd:string"/>
            </extension>
        </complexContent>
    </complexType>
    <complexType name="BudgetSearchRow">
        <complexContent>
            <extension base="platformCore:SearchRow">
                <sequence>
                    <element name="basic" type="platformCommon:BudgetSearchRowBasic" minOccurs="0"/>
                    <element name="customSearchJoin" type="platformCommon:CustomSearchRowBasic" minOccurs="0" maxOccurs="unbounded"/>
                </sequence>
            </extension>
        </complexContent>
    </complexType>
</schema>
