Hi
I am going to receive a dataset downstream and I will not know the
the fields
number of field
relations
number of relations
So I have to be flexible to take unknown data and be able to summarize all
the info being passed
I have included an example
I don't know what is the best way to attack this
XML and Xpath using the XSD as a guide?? I am not too familiar with what the
xsd is giving me
If I know how many tables and what field to xpath to the different levels
???
Dataset and walk the relations?? But they are at different levels
Every row get another row collection with the GetChild depending on the
number of relations
They cascade or are nested
What I want to see is
GM Pontiac GTO 82 4
GM Pontiac Gand Prix 134 38
GM Pontiac 1130 630
....
....
GM Buick 294 84
GM 43310 9880
<?xml version="1.0" standalone="yes "?>
<NewDataSet>
<l1>
<ID>Total</ID>
<Company>GM</Company>
<Sum_x0020_of_x 0020_HoursDev>4 3310</Sum_x0020_of_x0 020_HoursDev>
<Sum_x0020_of_x 0020_MarketLife >9880</Sum_x0020_of_x0 020_MarketLife>
</l1>
<l2>
<ID>Total</ID>
<Company>GM</Company>
<Division>Ponti ac</Division>
<Sum_x0020_of_x 0020_HoursDev>1 130</Sum_x0020_of_x0 020_HoursDev>
<Sum_x0020_of_x 0020_MarketLife >630</Sum_x0020_of_x0 020_MarketLife>
</l2>
<l2>
<ID>Total</ID>
<Company>GM</Company>
<Division>Buick </Division>
<Sum_x0020_of_x 0020_HoursDev>2 94</Sum_x0020_of_x0 020_HoursDev>
<Sum_x0020_of_x 0020_MarketLife >84</Sum_x0020_of_x0 020_MarketLife>
</l2>
<l2>
<ID>Total</ID>
<Company>GM</Company>
<Division>Cadil lac</Division>
<Sum_x0020_of_x 0020_HoursDev>5 658</Sum_x0020_of_x0 020_HoursDev>
<Sum_x0020_of_x 0020_MarketLife >2038</Sum_x0020_of_x0 020_MarketLife>
</l2>
<l3>
<ID>Total</ID>
<Company>GM</Company>
<Division>Ponti ac</Division>
<Car>GTO</Car>
<Sum_x0020_of_x 0020_HoursDev>8 2</Sum_x0020_of_x0 020_HoursDev>
<Sum_x0020_of_x 0020_MarketLife >4</Sum_x0020_of_x0 020_MarketLife>
</l3>
<l3>
<ID>Total</ID>
<Company>GM</Company>
<Division>Ponti ac</Division>
<Car>Grand Prix</Car>
<Sum_x0020_of_x 0020_HoursDev>1 34</Sum_x0020_of_x0 020_HoursDev>
<Sum_x0020_of_x 0020_MarketLife >38</Sum_x0020_of_x0 020_MarketLife>
</l3>
<NewDataSet>
<?xml version="1.0" standalone="yes "?>
<xs:schema id="NewDataSet " xmlns=""
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:msdata="u rn:schemas-microsoft-com:xml-msdata">
<xs:element name="NewDataSe t" msdata:IsDataSe t="true"
msdata:UseCurre ntLocale="true" >
<xs:complexType >
<xs:choice minOccurs="0" maxOccurs="unbo unded">
<xs:element name="vDWHPat">
<xs:complexType >
<xs:sequence>
<xs:element name="ID" type="xs:string " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Hours Dev"
type="xs:double " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Marke tLife"
type="xs:double " minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="l1">
<xs:complexType >
<xs:sequence>
<xs:element name="ID" type="xs:string " minOccurs="0" />
<xs:element name="Company" type="xs:string " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Hours Dev"
type="xs:double " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Marke tLife"
type="xs:double " minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="l2">
<xs:complexType >
<xs:sequence>
<xs:element name="ID" type="xs:string " minOccurs="0" />
<xs:element name="Company" type="xs:string " minOccurs="0" />
<xs:element name="Division" type="xs:string " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Hours Dev"
type="xs:double " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Marke tLife"
type="xs:double " minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="l3">
<xs:complexType >
<xs:sequence>
<xs:element name="ID" type="xs:string " minOccurs="0" />
<xs:element name="Company" type="xs:string " minOccurs="0" />
<xs:element name="Division" type="xs:string " minOccurs="0" />
<xs:element name="MainDepar tment" type="xs:string "
minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Hours Dev"
type="xs:double " minOccurs="0" />
<xs:element name="Sum_x0020 _of_x0020_Marke tLife"
type="xs:double " minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
<xs:unique name="Constrain t1">
<xs:selector xpath=".//Table" />
<xs:field xpath="ID" />
</xs:unique>
<xs:unique name="l1_Constr aint1" msdata:Constrai ntName="Constra int1">
<xs:selector xpath=".//l1" />
<xs:field xpath="ID" />
<xs:field xpath="Company" />
</xs:unique>
<xs:unique name="l2_Constr aint1" msdata:Constrai ntName="Constra int1">
<xs:selector xpath=".//l2" />
<xs:field xpath="ID" />
<xs:field xpath="Company" />
<xs:field xpath="Division " />
</xs:unique>
<xs:keyref name="l2" refer="l2_Const raint1">
<xs:selector xpath=".//l3" />
<xs:field xpath="ID" />
<xs:field xpath="Company" />
<xs:field xpath="Division " />
</xs:keyref>
<xs:keyref name="l1" refer="l1_Const raint1">
<xs:selector xpath=".//l2" />
<xs:field xpath="ID" />
<xs:field xpath="Company" />
</xs:keyref>
<xs:keyref name="l0" refer="Constrai nt1">
<xs:selector xpath=".//l1" />
<xs:field xpath="ID" />
</xs:keyref>
</xs:element>
</xs:schema>