У меня плоский файл с несколькими записями в каждой строке.Я преобразовал каждую из этих записей в отдельные файлы XML.Теперь мне нужен XSD для проверки этих XML один за другим.Чтобы сгенерировать XSD, у меня есть документ сопоставления Excel, описывающий положение каждого поля, значение и формат.Я прочитал документ сопоставления в java-файле.Теперь, Я ХОЧУ ПРЕОБРАЗОВАТЬ ЭТОТ ФАЙЛ JAVA В ФАЙЛ XSD , чтобы удовлетворить мою потребность.Надеюсь, мое требование ясно.
Пожалуйста, направьте меня с этой проблемой.Заранее спасибо!
Ниже приведен пример сгенерированного XSD (в настоящее время я подготовил его вручную).Мне нужен исходный Java-файл для программного создания этого XSD-файла.
XSD-файл:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Records" type="type_Records" />
<xs:complexType name="type_Records">
<xs:sequence>
<xs:element name="Record" type="type_Record" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="type_Record">
<xs:sequence>
<xs:element name="RecordIdentifier" type="type_RecordIdentifier" />
<xs:element name="AccountType" type="type_AccountType" />
<xs:element name="RoutingNumber8" type="type_RoutingNumber8" />
<xs:element name="RoutingNumberL" type="type_RoutingNumberL" />
<xs:element name="AccountNumber" type="type_AccountNumber" />
<xs:element name="Amount" type="type_Amount" />
<xs:element name="PolicyNumber" type="type_PolicyNumber" />
<xs:element name="AccountHolder" type="type_AccountHolder" />
<xs:element name="AccountSource" type="type_AccountSource" />
<xs:element name="AddendaRecordIdentifier" type="type_AddendaRecordIdentifier" />
<xs:element name="OriginatorIdCode" type="type_OriginatorIdCode" />
<xs:element name="SequenceNumber" type="type_SequenceNumber" />
</xs:sequence>
<xs:attribute name="id" type="type_RecordId" use="required" />
</xs:complexType>
<xs:simpleType name="type_RecordIdentifier">
<xs:restriction base="xs:string">
<xs:pattern value="6" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_AccountType">
<xs:restriction base="xs:string">
<xs:pattern value="27|37" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_RoutingNumber8">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{8}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_RoutingNumberL">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_AccountNumber">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{17}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_Amount">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{10}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_PolicyNumber">
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z0-9]{10}[ ]{5}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_AccountHolder">
<xs:restriction base="xs:string">
<xs:pattern value="[a-zA-Z][a-zA-Z ]{21}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_AccountSource">
<xs:restriction base="xs:string">
<xs:pattern value="S | " />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_AddendaRecordIdentifier">
<xs:restriction base="xs:string">
<xs:pattern value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_OriginatorIdCode">
<xs:restriction base="xs:string">
<xs:pattern value="05310049" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_SequenceNumber">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]{7}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="type_RecordId">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]*" />
</xs:restriction>
</xs:simpleType>
</xs:schema>