xsl-list
[Top] [All Lists]

RE: Modifying XML file using XSLT based on XSD

2005-07-19 07:29:57
You have perhaps been asking so many questions that you haven't been able to
keep track of the answers.

Please see
http://www.biglist.com/lists/xsl-list/archives/200507/msg00368.html

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Lakshmi narayana [mailto:lchintala(_at_)osi-tech(_dot_)com] 
Sent: 19 July 2005 08:58
To: XSL (E-mail)
Subject: [xsl] Modifying XML file using XSLT based on XSD


Hi List,

Is it possible to translate the xml file using xslt based on 
the XSD. For
example, In my XSD file
I specified the sequence of child nodes how they should 
appear in XML. It
validates and raises
error if they are not in specified sequence. Now I have to access that
particular node and arrange the
child nodes in the sequence specified in XSD file. Is it 
possible to do
this. If possible can any one
send me the xslt code to modify the source xml file using 
xslt based on XSD.

Sample XML and XSD files
XML file
 <Exception>
      <Type>X</Type>
      <Location><![CDATA[Right/Door Front]]></Location>
      <Description>Dings No Paint Damage, PDR</Description>
      <ChargeableFlag>0</ChargeableFlag>
      <PaintHours>0.0</PaintHours>
      <PartCost>50.0</PartCost>
      <RepairHours>0.0</RepairHours>
      <Total>50.0</Total>
 </Exception>

XSD file

<xs:schema elementFormDefault="qualified" 
attributeFormDefault="unqualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema";>
      <xs:element name="Exception">
              <xs:complexType>
                      <xs:sequence>
                              <xs:element name="Type" 
type="xs:string"/>
                              <xs:element name="Description" 
type="xs:string"/>
                              <xs:element 
name="ChargeableFlag" type="xs:boolean"/>
                              <xs:element name="FrameHours" 
type="xs:decimal" minOccurs="0"/>
                              <xs:element name="PaintHours" 
type="xs:decimal" minOccurs="0"/>
                              <xs:element name="PartCost" 
type="xs:decimal" minOccurs="0"/>
                              <xs:element name="MetalHours" 
type="xs:decimal" minOccurs="0"/>
                              <xs:element name="RepairHours" 
type="xs:decimal" minOccurs="0"/>
                              <xs:element name="Total" 
type="xs:decimal"/>
                              <xs:element name="Location" 
type="xs:string"/>
                              <xs:element 
name="ExceptionImage" minOccurs="0" maxOccurs="5">
                                      <xs:complexType>
                                              <xs:all>
                                                      
<xs:element name="FileName" type="xs:string"/>
                                              </xs:all>
                                      </xs:complexType>
                              </xs:element>
                      </xs:sequence>
              </xs:complexType>
      </xs:element>
</xs:schema>

Thanks,
Laxmi Narayana



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--





--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>