What I want to do is use the xml document to get the TicketDate. The xml document could have more than one ChargeID. So I have to match the ChargeHistoryID a child of CitationCharge to the ChargeHistoryID a child of Charge. This ensures I get the right TicketDate for the right Charge and Citation.
The output can look like this.
Desired output
xml
Xslt
The output can look like this.
XML:
<Charge>
<Citation>
<TicketDate>2014-03-26</TicketDate>
</Citation>
</Charge>
Desired output
XML:
<ext:Charge>
<ext:Citation>
<nc:ActivityDate>2014-03-26</nc:ActivityDate>
</ext:Citation>
</ext:Charge>
xml
XML:
<Integration xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:tsg="[URL unfurl="true"]http://tsgweb.com"[/URL] xmlns:IXML="[URL unfurl="true"]http://tsgweb.com"[/URL] xmlns:CMCodeQueryHelper="urn:CMCodeQueryHelper" PackageID="IXML Case Notification Test" MessageID="67078058" xmlns="">
<Case InternalID="1616807927" ID="11747370" xmlns:user="[URL unfurl="true"]http://tylertechnologies.com">[/URL]
<Charge ID="10547226" PartyID="16580814" CurrSentenceID="155092098" InternalChargeID="1616447618" InternalPartyID="1614482843" xmlns:reslib="urn:reslib">
<ChargeOffenseDate>03/26/2014</ChargeOffenseDate>
<ChargeHistory ChargeHistoryID="41490827" Stage="Citation Issued" CitationEventSequence="1" InternalOffenseHistoryID="1635954992">
<ChargeNumber>1</ChargeNumber>
</ChargeHistory>
</Charge>
</Case>
<Citation ID="5131033" xmlns:user="[URL unfurl="true"]http://tylertechnologies.com">[/URL]
<TicketDate>03/26/2014</TicketDate>
<CitationCharge>
<ChargeID>10547226</ChargeID>
<ChargeHistoryID>41490827</ChargeHistoryID>
</CitationCharge>
</Citation>
</Integration>
Xslt
Code:
<xsl:template name="ChargeDetails">
<ext:Citation>
<xsl:if test="@Stage='Citation Issued'">
<!--<xsl:for-each select="../../DispositionEvent[Disposition/@ChargeHistoryID=current()/@ChargeHistoryID][1]">-->
<xsl:for-each select="/Integration/Citation/CitationCharge[ChargeHistoryID=current()/@ChargeHistoryID][1]">
<nc:ActivityDate>
<xsl:value-of select="mscef:formatDate(string(../TicketDate))"/>
</nc:ActivityDate>
</xsl:for-each>
</xsl:if>
</ext:Citation>
</xsl:template>