为什么'1 + lambda:1'是SyntaxError而'1 +(lambda:1)'是TypeError?

时间:2016-01-03 16:15:32

标签: python python-2.7 python-3.x syntax

在交互式互操作程序中,以下两个表达式会根据括号的加法引出不同的错误:

  

1 + lambda: 1会产生SyntaxError

>>> 1 + lambda: 1
  File "<ipython-input-17-ae284d908963>", line 1
     1 + lambda: 1
              ^
SyntaxError: invalid syntax
  

1 + (lambda: 1)会产生TypeError

>>>> 1 + (lambda: 1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'function'

我理解差异SyntaxErrorTypeError,也就是说,它们本质上意味着什么,但我真的不明白为什么会发生这种情况。

我尝试了reading the Grammar ,但这对我来说真的都是希腊语。 expr(我的意思是表达式)定义为:

expr: xor_expr ('|' xor_expr)*

虽然lambdas:

lambdef: 'lambda' [varargslist] ':' test

这些没有多大帮助。这同样适用于Python 2.x和3.x.那么,为什么括号会改变这种情况下的异常结果呢?

1 个答案:

答案 0 :(得分:3)

  

为什么1 + lambda: 1举起SyntaxError

语法错误被引发,因为语法不支持它。从Full Grammar Specification我们可以看到test expr 而不是名不见经传的test: or_test ['if' or_test 'else' test] | lambdef test_nocond: or_test | lambdef_nocond lambdadef规则具有以下形式: / p>

SyntaxError

其中is the basic expression element

因此,每个表达式必须以 the vertical bar | is used to seperate alternative substitutions for this rule or_test 开头。如果在表达式的开头找不到>>> import parser; parser.expr('1 + lambda: 1') # SyntaxError: invalid syntax ,则在解析期间适当地引发or_test

test

[注意:来自1 + (lambda: 1)的{​​{1}}成员,我们几乎可以通过替换生成Python中的所有其他表达式。

  

为什么TypeError举起enclosure ::= parenth_form | list_display | dict_display | set_display | generator_expression | yield_atom

因为括号用作lambdadef

parenth_form ::=  "(" [expression_list] ")"

enclosures 是:

lambda: 1

此处的括号将test与表达式的其余部分隔离开来,并将其限制在自己的表达式((lambda: 1))中。由于新表达式为lambdadef,因此它在语法上有效(因为SyntaxError是表达式开头的元素)。因此,没有规则可以触发1 + (1 + lambda: 1)。 (如果您执行了SyntaxError,则会触发相同的(lambda: 1)

此外,我们实际上可以通过查看基于列表的解析树的(相关部分)并交叉来验证test是新的>>> parse_tree = parser.expr("1 + (lambda: 1)") >>> parse_tree.tolist() # further up the list, another [304, exists, denoting the # 'outer' expression #.. snipped .. [323, [7, '(', 1, 4], [324, [304, # <-- indicating new expression [306, [1, 'lambda', 1, 5], [11, ':', 1, 11], #.. snipped .. 规则这一事实 - 使用 parenth_form 中包含的数字引用它。

我们可以从:

生成解析树
304

通过查看Include/graminit.h,我们可以看到test定义了新的>>> code_obj = parse_tree.compile()

结果,表达式将被解析并因此编译而没有任何问题:

int

在执行期间,评估将会发生,Python会发现functionTypeError的对象不支持添加。当它发现它时,会引发>>> exec(code_obj) # TypeError: unsupported operand type(s) for +: 'int' and 'function'

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
        xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
        jaxb:extensionBindingPrefixes="xjc"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd"
        version="2.1">

<xsd:annotation>
    <xsd:appinfo>
        <jaxb:globalBindings generateIsSetMethod="true">
            <xjc:serializable uid="1"/>
        </jaxb:globalBindings>
    </xsd:appinfo>
</xsd:annotation>

<xsd:element name="FormTemplateInfo">
    <xsd:complexType>
        <xsd:sequence>
            <!-- <xsd:element ref="TrFormTemplate"/>-->
            <xsd:element ref="TrFormCd"/>
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

<!--<xsd:element name="TrFormTemplate" type="TrFormTemplate"/>-->
<xsd:element name="TrFormCd" type="TrFormCd"/>

<xsd:complexType name="TrFormCd">
    <xsd:sequence>
        <xsd:element name="formCdSysId" type="xsd:int"/>
        <xsd:element name="formRequestedByNm" type="xsd:string" nillable="true"/>
        <xsd:element name="formUploadDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="formPriceAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="formCd" type="xsd:string" nillable="true"/>
        <xsd:element name="formLowLimitCnt" type="xsd:int" nillable="true"/>
        <xsd:element name="formDesc" type="xsd:string" nillable="true"/>
        <xsd:element name="stateRequiredEndrInd" type="xsd:string" nillable="true"/>
        <xsd:element name="formNumberedInd" type="xsd:string" nillable="true"/>
        <xsd:element name="nbrOfPartNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="largeOrdrItemInd" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="formEndDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="formSizeCd" type="xsd:string" nillable="true"/>
        <xsd:element name="formLayoutCd" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="formOrntCd" type="xsd:string" nillable="true"/>
        <xsd:element name="formStockCd" type="xsd:string" nillable="true"/>
        <xsd:element name="binderyNameCd" type="xsd:string" nillable="true"/>
        <xsd:element name="formFinishCd" type="xsd:string" nillable="true"/>
        <xsd:element name="unitCd" type="xsd:string" nillable="true"/>
        <xsd:element name="formBlob" type="xsd:base64Binary" nillable="true"/>
        <xsd:element name="isHardCopyInd" type="xsd:string" nillable="true"/>
        <xsd:element name="quantityPerPackNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="rceFormNm" type="xsd:string" nillable="true"/>
        <xsd:element name="formTemplateId" type="xsd:int" nillable="true"/>
        <xsd:element name="prodSysId" type="xsd:int" nillable="true"/>
        <xsd:element name="formCdStateGrpNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="formCgyCd" type="xsd:string" nillable="true"/>
        <xsd:element name="formTemplateSysId" type="xsd:int" nillable="true"/>
        <xsd:element name="TrFormTemplate" type="TrFormTemplate" nillable="true"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrFormTemplate">
    <xsd:sequence>
        <xsd:element name="formTemplateSysId" type="xsd:int"/>
        <xsd:element name="formTemplateNm" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="TrFormTemplateVersions" type="TrFormTemplateVersion" minOccurs="0"
                     maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrFormTemplateVersion">
    <xsd:sequence>
        <xsd:element name="templateVerSysId" type="xsd:int"/>
        <xsd:element name="formTemplateSysId" type="xsd:int"/>
        <xsd:element name="templateEffectDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="formTemplateBlob" type="xsd:base64Binary" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="documentType" type="xsd:string" nillable="true"/>
        <xsd:element name="TrFormTemplateFields" type="TrFormTemplateField" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrFormTemplateField">
    <xsd:sequence>
        <xsd:element name="templateFldSysId" type="xsd:int"/>
        <xsd:element name="templateVerSysId" type="xsd:int"/>
        <xsd:element name="fieldSeqNo" type="xsd:int" nillable="true"/>
        <xsd:element name="formTemplateBlob" type="xsd:base64Binary" nillable="true"/>
        <xsd:element name="fieldKey" type="xsd:string" nillable="true"/>
        <xsd:element name="fieldNm" type="xsd:string" nillable="true"/>
        <xsd:element name="displType" type="xsd:string" nillable="true"/>
        <xsd:element name="displFormat" type="xsd:string" nillable="true"/>
        <xsd:element name="displLblWhenEmptyInd" type="xsd:string" nillable="true"/>
        <xsd:element name="activeInd" type="xsd:string" nillable="true"/>
        <xsd:element name="requiredInd" type="xsd:string" nillable="true"/>
        <xsd:element name="promptUserInd" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="editAfterRptInd" type="xsd:string" nillable="true"/>
        <xsd:element name="displValOnlyInd" type="xsd:string" nillable="true"/>
        <xsd:element name="TrFormFieldValues" type="TrFormFieldValue" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrFormFieldValue">
    <xsd:sequence>
        <xsd:element name="formFldValSysId" type="xsd:long"/>
        <xsd:element name="formFieldValueTxt" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:long" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="TrPolicies" type="TrPolicy" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrPolicy">
    <xsd:sequence>
        <xsd:element name="polSysId" type="xsd:int" minOccurs="1" maxOccurs="1"/>
        <xsd:element name="prodNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="polNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="relatedPolSysId" type="xsd:int" nillable="true"/>
        <xsd:element name="acctPeriodMonthYrDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="validationDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="agentCmsnAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="agentPremAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="agentNetToCoAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="ourPremAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="ourCmsnAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="ourNetToCoAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="liabAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="polEffectDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="enteredIntoSysDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="polDataSourceCd" type="xsd:string" nillable="true"/>
        <xsd:element name="polSubStatCd" type="xsd:string" nillable="true"/>
        <xsd:element name="externalShipmentNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="ratePolicyCd" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="relatedPolNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="reissueLiabAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="ubeOverrideInd" type="xsd:string" nillable="true"/>
        <xsd:element name="ctiBatchNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="rateCalcInd" type="xsd:string" nillable="true"/>
        <xsd:element name="unitsNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="unitTotalNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="totalOfAllLoansAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="uploadCmsnSplitType" type="xsd:string" nillable="true"/>
        <xsd:element name="uploadCmsnSplitAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="rateCalcErrorCd" type="xsd:string" nillable="true"/>
        <xsd:element name="cmsnCalcErrorCd" type="xsd:string" nillable="true"/>
        <xsd:element name="correctedInd" type="xsd:string" nillable="true"/>
        <xsd:element name="migBalOffsetAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="isMigInd" type="xsd:string" nillable="true"/>
        <xsd:element name="cmsnSplitType" type="xsd:string" nillable="true"/>
        <xsd:element name="origValidationDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="uploadAcctPeriodMonthYrDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="uploadSysId" type="xsd:int" nillable="true"/>
        <xsd:element name="polChckNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="polChckAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="manualMigrInd" type="xsd:string" nillable="true"/>
        <xsd:element name="autoReportLevel" type="xsd:string" nillable="true"/>
        <xsd:element name="externalMsgUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="externalPolSysId" type="xsd:int" nillable="true"/>
        <xsd:element name="priorPolicyDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="priorPolicyPremAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="simultaneousAmt" type="xsd:decimal" nillable="true"/>
        <xsd:element name="chckRcptInd" type="xsd:string" nillable="true"/>
        <xsd:element name="reportedDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="impChckAutoRptInd" type="xsd:string" nillable="true"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrProduct">
    <xsd:sequence>
        <xsd:element name="prodSysId" type="xsd:int"/>
        <xsd:element name="prodNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="prodDesc" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="TrFormCd" type="TrFormCd" minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrFormUw">
    <xsd:sequence>
        <xsd:element name="uwSysId" type="xsd:int"/>
        <!-- <xsd:element name="formCdSysIds" type="xsd:int" minOccurs="0" maxOccurs="unbounded"/>-->
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="TrFormCd" type="TrFormCd" minOccurs="0" maxOccurs="unbounded"/>
        <xsd:element name="TrUnderwriters" type="TrUnderwriter" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrUnderwriter">
    <xsd:sequence>
        <xsd:element name="uwSysId" type="xsd:int"/>
        <xsd:element name="busNm" type="xsd:string" nillable="true"/>
        <xsd:element name="uwGlBankValidInd" type="xsd:string" nillable="true"/>
        <xsd:element name="uwAbbvCd" type="xsd:string" nillable="true"/>
        <xsd:element name="uwNbr" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="uwRceCd" type="xsd:string" nillable="true"/>
        <xsd:element name="uwLogoBlob" type="xsd:base64Binary" nillable="true"/>
        <xsd:element name="rollupUwSysId" type="xsd:int" nillable="true"/>
        <xsd:element name="altBusNm" type="xsd:string" nillable="true"/>
        <xsd:element name="consolidatedRceCd" type="xsd:string" nillable="true"/>
        <xsd:element name="consolidatedDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="TrFormUws" type="TrFormUw" minOccurs="0" maxOccurs="unbounded"/>
        <xsd:element name="TrUnderwriterImages" type="TrUnderwriterImage" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="TrUnderwriterImage">
    <xsd:sequence>
        <xsd:element name="uwSysId" type="xsd:int"/>
        <xsd:element name="imageTypeCd" type="xsd:string" nillable="true"/>
        <xsd:element name="imageBlob" type="xsd:base64Binary" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="imageFileNm" type="xsd:string" nillable="true"/>
    </xsd:sequence>
</xsd:complexType>


<xsd:complexType name="TrFormState">
    <xsd:sequence>
        <xsd:element name="formCdSysId" type="xsd:int" minOccurs="0" maxOccurs="unbounded"/>
        <xsd:element name="formStateStatCd" type="xsd:string" nillable="true"/>
        <xsd:element name="effectDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecCreateDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="priorStatCd" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecCreateApplId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDts" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="auditRecUpdtApplUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtDbUserId" type="xsd:string" nillable="true"/>
        <xsd:element name="auditRecUpdtVerNbr" type="xsd:int" nillable="true"/>
        <xsd:element name="stateCd" type="xsd:string" nillable="true"/>
        <xsd:element name="fileNoteTxt" type="xsd:string" nillable="true"/>
        <xsd:element name="fileDt" type="xsd:dateTime" nillable="true"/>
        <xsd:element name="atFormApprInd" type="xsd:string" nillable="true"/>
        <xsd:element name="rceFormCd" type="xsd:string" nillable="true"/>
        <xsd:element name="atRestrictedInd" type="xsd:string" nillable="true"/>
        <xsd:element name="arFormApprInd" type="xsd:string" nillable="true"/>
    </xsd:sequence>
</xsd:complexType>