XML Schema,包括标题中的独立信息和重复行

时间:2017-11-14 14:12:33

标签: xml xsd xsd-validation

输入文件

Kontonummer Datum   Betrag  Ratenzahl   Ratenart    Vorname Nachname    Geschlecht  Geburtsdatum    Strasse PLZ Ort
1234    30/10/1994  Test1   Hello1  Testing1    George  Brown   Male    30/10/1985  Street 1    2   Test 1
1235    30/10/1995  Test2   Hello2  Testing2    John    Dwayne  Male    30/10/1986  Street 2    3   Test 2
1236    30/10/1996  Test3   Hello3  Testing3    Tony    Jim Male    30/10/1987  Street 3    3   Test 3
1237    30/10/1997  Test4   Hello4  Testing4    Bill    Tony    Male    30/10/1988  Street 4    4   Test 4
1238    30/10/1998  Test5   Hello5  Testing5    Bob George  Male    30/10/1989  Street 5    4   Test 5
1239    30/10/1999  Test6   Hello6  Testing6    Robert  Brad    Male    30/10/1990  Street 6    5   Test 6
1240    30/10/2000  Test7   Hello7  Testing7    Brad    Sean    Male    30/10/1991  Street 7    5   Test 7
1241    30/10/2001  Test8   Hello8  Testing8    Sean    Paul    Male    30/10/1992  Street 8    6   Test 8
1242    30/10/2002  Test9   Hello9  Testing9    Paul    George  Male    30/10/1993  Street 9    6   Test 9

我正在使用我创建的下面的XSD来映射excel中的XML元素。问题是,在将excel保存为xml时,它只需要一个数据记录并用此填充xml,而实际上有10行数据。

当我将文件保存为我想要的xml

  xsd:element name="SchufaService_Version" type="xsd:string" fixed="2.0"/>

   <xsd:element name="Data_Language" type="xsd:string" fixed="DEU"/> 

出现在标题中,但此刻未显示。你能告诉我吗?

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="TestingRecord" type="TestingRecord"/>
  <xsd:element name="TestingService_Version" type="xsd:string" fixed="2.0"/>
  <xsd:element name="Data_Language" type="xsd:string" fixed="DEU"/>  

  <xsd:complexType name="SchufaRecord">
    <xsd:sequence>
      <xsd:element name="Merkdermal" type="Merkdermal"/>
      <xsd:element name="Verbraucherdaten" type="Verbraucherdaten"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="Merkdermal">
    <xsd:sequence>
      <xsd:element name="Kontonummer"   type="xsd:string"/>
      <xsd:element name="Datum" type="xsd:string"/>
      <xsd:element name="Betrag"   type="xsd:string"/>
      <xsd:element name="Ratenzahl" type="xsd:string"/>
      <xsd:element name="Ratenart"   type="xsd:string"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="Verbraucherdaten">
    <xsd:sequence>
      <xsd:element name="Vorname"   type="xsd:string"/>
      <xsd:element name="Nachname" type="xsd:string"/>
      <xsd:element name="Geschlecht"   type="xsd:string"/>
      <xsd:element name="Geburtsdatum" type="xsd:string"/>
      <xsd:element name="AktuelleAdresse">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Strasse"   type="xsd:string"/>
            <xsd:element name="PLZ" type="xsd:string"/>
            <xsd:element name="Ort"   type="xsd:string"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element> 
    </xsd:sequence>
  </xsd:complexType>
</xsd:schema>

我想要的XML

<?xml version="1.0" encoding="UTF-8"?>
<Testing version="2.0">
  <Data language="DEU">
    <Aktion teilnehmerkennung="123/45678" teilnehmerkennwort="SECURE07">
      <MeldungVertragsdaten version="1.0">
        <Meldemerkmal merkmalcode="BU">
          <Kontonummer>655544454</Kontonummer>
          <Datum>03052010</Datum>
          <Betrag waehrung="EUR">50000</Betrag>
          <Ratenzahl>84</Ratenzahl>
          <Ratenart>M</Ratenart>
        </Meldemerkmal>
        <Meldeart>neumeldung</Meldeart>
        <Verbraucherdaten>
          <Vorname>Geiz</Vorname>
          <Nachname>Heinz</Nachname>
          <Geschlecht>m</Geschlecht>
          <Geburtsdatum>13051970</Geburtsdatum>
          <AktuelleAdresse>
            <Strasse>Am Hello 1</Strasse>
            <PLZ>60437</PLZ>
            <Ort>Denmark</Ort>
          </AktuelleAdresse>
        </Verbraucherdaten>
       </MeldungVertragsdaten>
    </Aktion>
  </Data>
</Testing>

0 个答案:

没有答案