$(function () { pageContext.i18n.modTalk = 'moderation talk'; pageContext.i18n.replyToComment = 'Reply'; pageContext.i18n.modTalkEmpty = 'moderation talk is empty'; pageContext.url.getModTalk = "/comments/%25ID%25/listModTalk.json"; pageContext.url.possibleCommentRecipients = "/comments/%ID%/possibleRecipients.json"; pageContext.url.commentEdit = '/comments/%25ID%25/edit.html'; pageContext.url.commentView = '/comments/%ID%/view.html'; pageContext.i18n.commentVisibility = { 'full': 'Viewable by all users', 'op': 'Viewable by the original poster', 'mod': 'Viewable by moderators', 'opAndMod': 'Viewable by moderators and the original poster', 'other': 'Advanced visibility', 'dialogTitle': 'Comment visibility', 'selectGroups': 'Visible to groups', 'selectOther': 'Other recipients', 'selectOriginalPoster': 'Original poster', 'selectModerators': 'Moderators', 'selectAssignees': 'Asked to answer users' }; pageContext.i18n.commentMenuLabels = { 'comment-edit': 'comments.menu.edit', 'comment-delete': 'comments.menu.delete', 'comment-convert': 'comments.menu.convert' };pageContext.i18n.answer= { bestAnswer: 'Best Answer', controlBar : { accept: 'Accept', unaccept: 'Unaccept', acceptCommand: 'Accept this answer as correct', cancelAcceptedCommand: 'Remove this answers accepted status' } }; window.croles = { u: false, op: false, m: false, og: false, as: false, ag: false, dc: false, doc: false, eo: false, ea: false }; tools.init({ q: { e: false, ew: false, eo: false, r: false, ro: false, d: false, dow: false, fv: false, c: false, co: false, p: false, tm: false , ms: false, mos: false }, n: { f: false, vf: false, vfo: false, vr: false, vro: false, c: false, co: false, vu: false, vd: false, w: false, wo: false, l: false }, c: { e: false, eo: false, d: false, dow: false, ta: false, tao: false, l: false }, a: { e: false, ew: false, eo: false, d: false, dow: false, a: false, aoq: false, ao: false, tc: false, tco: false, p: false, tm: false }, pc: croles }, { tc: true, nsc: true }); commandUtils.initializeLabels(); }); Skip to Content
0

Sort by key in XSLT mapping ???

Apr 18, 2017 at 11:46 AM

67

avatar image

hello Experts,

I am doing XSLT mapping, below is my xml and xsl code:

xml code:

<?xml version="1.0" encoding="UTF-8"?>
<ns0:MT_sender xmlns:ns0="http://sortbykey_xslt.com">
	<Root>
		<ReportID>1</ReportID>
		<ReportName>test1</ReportName>
		<Amount>99</Amount>
		<Referance>google</Referance>
	</Root>
	<Root>
		<ReportID>3</ReportID>
		<ReportName>test3</ReportName>
		<Amount>90</Amount>
		<Referance>yahoo</Referance>
	</Root>
	<Root>
		<ReportID>2</ReportID>
		<ReportName>test2</ReportName>
		<Amount>92</Amount>
		<Referance>bing</Referance>
	</Root>
</ns0:MT_sender>

xsl code:

<?xml version='1.0' ?>
<xsl:stylesheet version="1.0"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns0="http://sortbykey_xslt.com">
	<xsl:output method="xml" indent="yes" />
	<xsl:template match="Root">
		<xsl:copy>
			<xsl:apply-templates select="ReportID">
			   <xsl:sort select="ReportID" order="ascending"/>
			</xsl:apply-templates>
			<ReportID>
				<xsl:apply-templates select="ReportID" />
			</ReportID>
			<ReportName>
				<xsl:value-of select="ReportName" />
			</ReportName>
			<Amount>
				<xsl:value-of select="Amount" />
			</Amount>
			<Referance>
				<xsl:value-of select="Referance" />
			</Referance>
		</xsl:copy>
	</xsl:template>
</xsl:stylesheet>

i want output in ascending order by ReportID, but I am not getting it by this xsl code.

please help me where am I wrong???

Thanks,

Ravi

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Best Answer
Evgeniy Kolmakov Apr 18, 2017 at 01:44 PM
1

Hi Ravi!

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:template match="/">
        <ns0:MT_sender xmlns:ns0="http://sortbykey_xslt.com">
            <xsl:apply-templates select="//Root">
                <xsl:sort select="ReportID"/>
            </xsl:apply-templates>
        </ns0:MT_sender>
    </xsl:template>
    <xsl:template match="Root">
        <xsl:copy-of select="."/>    
    </xsl:template>
</xsl:stylesheet>

Regards, Evgeniy.

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Thanks Evgeniy.

0