我正在尝试使用XPath对映射文档中的以下XML提取进行反向工程。以下数据将来自SAS数据集。
<data1:Animal>
<data1:AnimalDetails>
<data1:Name>Abcd</data1:Name>
</data1:AnimalDetails>
<data1:AnimalCondition>
<data1:ConditionType>YYY</data1:ConditionType>
<data1:SignsDescription>XXX</data1:SignsDescription>
</data1:AnimalCondition>
</data1:Animal>
<data1:Parties>
<data1:PolicyHolder>
<data1:Type>PolicyHolder</data1:Type>
<data1:Person>
<data1:Title>Mrs</data1:Title>
</data1:Person>
</data1:PolicyHolder>
</data1:Parties>
我知道这涉及在一个嵌套中创建一个嵌套。我正在使用下面的代码来获取PolicyHolder标签,但不确定如何在PolicyHolder标签中使用Person标签。
<COLUMN name="PETNAME">
<PATH syntax="XPath">/REQUEST/DATA/ANIMAL/ANIMALDETAILS/Name</PATH>
<TYPE>character</TYPE>
<DATATYPE>string</DATATYPE>
<LENGTH>30</LENGTH>
</COLUMN>
<COLUMN name="condit_type">
<PATH syntax="XPath">/REQUEST/DATA/ANIMAL/ANIMALCONDITION/ConditionType</PATH>
<TYPE>character</TYPE>
<DATATYPE>string</DATATYPE>
<LENGTH>17</LENGTH>
</COLUMN>
<COLUMN name="signs">
<PATH syntax="XPath">/REQUEST/DATA/ANIMAL/ANIMALCONDITION/SignsDescription</PATH>
<TYPE>character</TYPE>
<DATATYPE>string</DATATYPE>
<LENGTH>40</LENGTH>
</COLUMN>
<COLUMN name="party_type">
<PATH syntax="XPath">/REQUEST/DATA/PARTIES/POLICYHOLDER/Type</PATH>
<TYPE>character</TYPE>
<DATATYPE>string</DATATYPE>
<LENGTH>13</LENGTH>
</COLUMN>
<COLUMN name="TITLE">
<PATH syntax="XPath">/REQUEST/DATA/PARTIES/POLICYHOLDER/PERSON/Title</PATH>
<TYPE>character</TYPE>
<DATATYPE>string</DATATYPE>
<LENGTH>5</LENGTH>
</COLUMN>
这是我得到的输出:
<ANIMAL>
<ANIMALDETAILS>
<Name>Abcd</Name>
</ANIMALDETAILS>
<ANIMALCONDITION>
<ConditionType>YYY</ConditionType>
<SignsDescription>XXX</SignsDescription>
</ANIMAL>
<PARTIES>
<POLICYHOLDER>
<Type>POLICY HOLDER</Type>
<PERSON>
<Title>MRS</Title>
</ANIMALCONDITION>
</PERSON>
</POLICYHOLDER>
</PARTIES>
</AnimalCondition>
标签在错误的位置,应位于</Animal>
之前
如何解决此问题并确保结束标记在正确的位置。
任何帮助将不胜感激
谢谢。