Sha1395
asked on
Xslt Transform XML 2 XML
Hi Guru's
I have an input xml and transform to another xml format thru Xslt.
Input xml
Output XML file
Please help me how can i acheive thru XSLT using C#.
Thanks in Advance
I have an input xml and transform to another xml format thru Xslt.
Input xml
<?xml version="1.0"?>
<Stockpile xmlns="http://www.qr.com.au/schema/2009/2.1/Stockpile">
<Header>
<Reference>
<Identifier>B47M_2010-01-22_2010-01-22T105926</Identifier>
<DateTime>2010-01-22T10:59:26.667+10:00</DateTime>
</Reference>
<Sender>
<Identifier>BS.SPT</Identifier>
</Sender>
<Receiver>
<Identifier type="Logon Name">PA</Identifier>
</Receiver>
</Header>
<Body>
<ServiceId>B47M</ServiceId>
<ServiceDate>2010-01-22</ServiceDate>
<Consignments>
<Consignment>
<Pit>Pit 3</Pit>
<Route>E</Route>
<Location>
<Code>GLD</Code>
</Location>
</Consignment>
</Consignments>
</Body>
</Stockpile>
Output XML file
<?xml version="1.0"?>
<Message>
<MessageHeader>
<Reference>
<Identifier>MessageResponse_2008-05-19T09:18:01.807+10:00_B79M_2008-05-
19_2008-05-19T091617</Identifier>
<ReferenceDate>2008-05-19T09:18:01.807+10:00</ReferenceDate>
</Reference>
<Sender>
<Identifier>PA</Identifier>
</Sender>
<Receiver>
<Identifier>Bus Service</Identifier>
</Receiver>
</MessageHeader>
<MessageBody>
<MessageResponse>
<OriginalReference>
<Identifier>B79M_2008-05-19_2008-05-19T091617</Identifier>
<ReferenceDate>2008-05-19T09:16:17.207+10:00</ReferenceDate>
</OriginalReference>
<ResponseCode>accepted</ResponseCode>
<Comments>
<Comment type="informational">automatically approved</Comment>
</Comments>
</MessageResponse>
</MessageBody>
</Message>
Please help me how can i acheive thru XSLT using C#.
Thanks in Advance
ASKER
Hi Rimvis,
Thanks for your help
1)
In you destination XML there are 2 reference dates: Am generating the date and time here and i don't know how to at this moment.
<ReferenceDate>2008-05-19T
<ReferenceDate>2008-05-19T
2) Are there values constants? : YES
Identifier>Bus Service</Identifier>
<ResponseCode>accepted</Re
<Comment type="informational">autom
ASKER
Hi Rimvis,
Created my xslt but am facing some trouble to get date and time inside my xslt
some one help me how can i get the system date and time inside my xslt.
Thanks in Advance
Created my xslt but am facing some trouble to get date and time inside my xslt
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:template match="/">
<xsl:apply-templates select="Stockpile" />
</xsl:template>
<xsl:template match="Stockpile">
<Message>
<MessageHeader>
<Reference>
<Identifier>
"MessageResponse_[b]2008-05-19T09:18:01.807+10:00[/b]_"<xsl:value-of select="Header/Reference/Identifier"/>
</Identifier>
[b]<ReferenceDate>"2008-05-19T09:18:01.807+10:00"</ReferenceDate>[/b]
</Reference>
<Sender>
<Identifier><xsl:value-of select="Header/Receiver/Identifier"/></Identifier>
</Sender>
<Receiver>
<Identifier>"BusService"</Identifier>
</Receiver>
</MessageHeader>
<MessageBody>
<MessageResponse>
<OriginalReference>
<Identifier>
<xsl:value-of select="Header/Reference/Identifier"/>
</Identifier>
<ReferenceDate>
</ReferenceDate>
</OriginalReference>
<ResponseCode>"accepted"</ResponseCode>
<Comments>
<Comment type="informational">"automatically approved"</Comment>
</Comments>
<xsl:text>
</xsl:text>
</MessageResponse>
</MessageBody>
</Message>
</xsl:template>
</xsl:stylesheet>
some one help me how can i get the system date and time inside my xslt.
Thanks in Advance
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Please refer to this link on how to apply XSLT transformations to XML:
XML transformation using Xslt in C#
http://www.csharpfriends.com/Articles/getArticle.aspx?articleID=63
If you need help to construct your XSLT, you will need to clarify some details:
1)
In you destination XML there are 2 reference dates:
<ReferenceDate>2008-05-19T
<ReferenceDate>2008-05-19T
In source, there is only one. How dates in destination XML are generated?
2) Are there values constants?
Identifier>Bus Service</Identifier>
<ResponseCode>accepted</Re
<Comment type="informational">autom