Привет!
Есть xsd - схема:
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
<xs:complexType name="Ф0409310Данные310Р4" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:sequence>
<xs:element name="Р4.1" type="Ф0409310Данные310Р4Р4.1" minOccurs="1" maxOccurs="1"/>
<xs:choice>
<xs:element name="Р4.2" type="Ф0409310Данные310Р4Р4.2" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.3" type="Ф0409310Данные310Р4Р4.3" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.4" type="Ф0409310Данные310Р4Р4.4" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.5" type="Ф0409310Данные310Р4Р4.5" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.6" type="Ф0409310Данные310Р4Р4.6" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.7" type="Ф0409310Данные310Р4Р4.7" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.8" type="Ф0409310Данные310Р4Р4.8" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.9" type="Ф0409310Данные310Р4Р4.9" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.10" type="Ф0409310Данные310Р4Р4.10" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.11" type="Ф0409310Данные310Р4Р4.11" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.12" type="Ф0409310Данные310Р4Р4.12" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.13" type="Ф0409310Данные310Р4Р4.13" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.14" type="Ф0409310Данные310Р4Р4.14" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.15" type="Ф0409310Данные310Р4Р4.15" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.16" type="Ф0409310Данные310Р4Р4.16" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.17" type="Ф0409310Данные310Р4Р4.17" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.18" type="Ф0409310Данные310Р4Р4.18" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.19" type="Ф0409310Данные310Р4Р4.19" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.20" type="Ф0409310Данные310Р4Р4.20" minOccurs="0" maxOccurs="1"/>
<xs:element name="Р4.21" type="Ф0409310Данные310Р4Р4.21" minOccurs="0" maxOccurs="1"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="Р4_1" type="ИдЗалога-лок" use="required"/>
</xs:complexType>
<xs:complexType name="Ф0409310Данные310Р4Р4.1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:attribute name="Р4.1_2" type="Строка5_100Непустая-лок" use="required"/>
<xs:attribute name="Р4.1_3" type="Симв10-Спр-лок" use="required"/>
<xs:attribute name="Р4.1_4" type="Симв10-Спр-лок" use="optional"/>
<xs:attribute name="Р4.1_5" type="ИдГрпЗалога-лок" use="optional"/>
<xs:attribute name="Р4.1_6" type="Симв10-Спр-лок" use="required"/>
</xs:complexType>
<xs:complexType name="Ф0409310Данные310Р4Р4.2" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:attribute name="Р4.2_2" type="Симв10-Спр-лок" use="required"/>
<xs:attribute name="Р4.2_3" type="КадастрНомОбщ-лок" use="optional"/>
<xs:attribute name="Р4.2_4" type="Строка255Непустая" use="optional"/>
<xs:attribute name="Р4.2_5" type="Симв10-Спр-лок" use="optional"/>
<xs:attribute name="Р4.2_6" type="Строка255Непустая" use="optional"/>
<xs:attribute name="Р4.2_7" type="Симв10-Спр-лок" use="optional"/>
<xs:attribute name="Р4.2_8" type="ДесятПоложит-лок" use="optional"/>
<xs:attribute name="Р4.2_9" type="ЦелоеПолож" use="optional"/>
<xs:attribute name="Р4.2_10" type="Симв10-Спр-лок" use="optional"/>
<xs:attribute name="Р4.2_11" type="СтрокаДо1000Непустая-лок" use="optional"/>
<xs:attribute name="Р4.2_12" type="Симв10-Спр-лок" use="required"/>
<xs:attribute name="Р4.2_13" type="Дата" use="optional"/>
<xs:attribute name="Р4.2_14" type="Симв10-Спр-лок" use="optional"/>
</xs:complexType>
как преобразовать xsd в таблицу, чтобы Р4.2_2, Р4.2_3, Р4.2_4 были в отдельных колонках и под ними был указан тип данных, нужно сделать так:
Р4.2_2 | Р4.2_3 | Р4.2_4
Симв10-Спр-лок | КадастрНомОбщ-лок | Строка255Непустая
есть готовые инструменты для автопреобразования?