how can I manipulate my XML ouput using an XSL stylesheet

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • snots34
    New Member
    • Feb 2014
    • 2

    how can I manipulate my XML ouput using an XSL stylesheet

    I have an SQL Query that is outputting as XML like this:
    Code:
    <root>
    <ELECTION>
        <title1>Carroll County Board Dist. 2</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5188</Winner>
        <WinningVotes>1445</WinningVotes>
        <WinningParty>D</WinningParty>
        <Winner1>Gary Imel</Winner1>
        <WinnerSelected>1</WinnerSelected>
        <WinnerPercent>27</WinnerPercent>
        <Loser>5187</Loser>
        <LosingVotes>1382</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser2>Ronald Preston</Loser2>
        <LoserPercent>26</LoserPercent>
        <LoserSelected>0</LoserSelected>
        <title1>Carroll County Board Dist. 2</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5189</Winner>
        <WinningVotes>1281</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner>CherylCole</Winner>
        <WinnerSelected>0</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5190</Loser>
        <LosingVotes>1208</LosingVotes>
        <LosingParty>R</LosingParty>
        <Loser>AnnetteRahn</Loser>
        <LoserSelected>0</LoserSelected>
      </ELECTION>
      <ELECTION>
        <title1>Henry County Circuit Clerk</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5192</Winner>
        <WinningVotes>12893</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner1>Jackie Oberg</Winner1>
        <WinnerSelected>1</WinnerSelected>
        <WinnerPercent>56</WinnerPercent>
        <Loser>5191</Loser>
        <LosingVotes>10214</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser2>David Guzzardo</Loser2>
        <LoserPercent>44</LoserPercent>
        <LoserSelected>0</LoserSelected>
      </ELECTION>
      <ELECTION>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5205</Winner>
        <WinningVotes>6408</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner1>Karen Urick</Winner1>
        <WinnerSelected>1</WinnerSelected>
        <WinnerPercent>6</WinnerPercent>
        <Loser>5204</Loser>
        <LosingVotes>6390</LosingVotes>
        <LosingParty>R</LosingParty>
        <Loser2>Tim Wells</Loser2>
        <LoserPercent>6</LoserPercent>
        <LoserSelected>1</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5203</Winner>
        <WinningVotes>6362</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner>KathyNelson</Winner>
        <WinnerSelected>1</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5212</Loser>
        <LosingVotes>6343</LosingVotes>
        <LosingParty>R</LosingParty>
        <Loser>MarvinGradert</Loser>
        <LoserSelected>1</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5206</Winner>
        <WinningVotes>6281</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner>RickLivesay</Winner>
        <WinnerSelected>1</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5207</Loser>
        <LosingVotes>5618</LosingVotes>
        <LosingParty>R</LosingParty>
        <Loser>LorenRathjen</Loser>
        <LoserSelected>1</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5208</Winner>
        <WinningVotes>5548</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner>BillPreston</Winner>
        <WinnerSelected>1</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5210</Loser>
        <LosingVotes>5493</LosingVotes>
        <LosingParty>R</LosingParty>
        <Loser>JacobWaller</Loser>
        <LoserSelected>1</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5194</Winner>
        <WinningVotes>5479</WinningVotes>
        <WinningParty>D</WinningParty>
        <Winner>AnnDeSmith</Winner>
        <WinnerSelected>1</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5193</Loser>
        <LosingVotes>5269</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser>JoAnneHillman</Loser>
        <LoserSelected>1</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5211</Winner>
        <WinningVotes>5116</WinningVotes>
        <WinningParty>R</WinningParty>
        <Winner>CharlesLotridge</Winner>
        <WinnerSelected>0</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5209</Loser>
        <LosingVotes>5103</LosingVotes>
        <LosingParty>R</LosingParty>
        <Loser>JonZahm</Loser>
        <LoserSelected>0</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5195</Winner>
        <WinningVotes>5034</WinningVotes>
        <WinningParty>D</WinningParty>
        <Winner>JosephSwan</Winner>
        <WinnerSelected>0</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5196</Loser>
        <LosingVotes>4674</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser>BettyMurphy</Loser>
        <LoserSelected>0</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5201</Winner>
        <WinningVotes>4639</WinningVotes>
        <WinningParty>D</WinningParty>
        <Winner>KarenRussell</Winner>
        <WinnerSelected>0</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5198</Loser>
        <LosingVotes>4611</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser>DennisSullivan</Loser>
        <LoserSelected>0</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5200</Winner>
        <WinningVotes>4559</WinningVotes>
        <WinningParty>D</WinningParty>
        <Winner>JimKing</Winner>
        <WinnerSelected>0</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5197</Loser>
        <LosingVotes>4555</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser>IanMalmstrom</Loser>
        <LoserSelected>0</LoserSelected>
        <title1>Henry County Board Dist. 1</title1>
        <PrecintPercent>100</PrecintPercent>
        <Winner>5199</Winner>
        <WinningVotes>4323</WinningVotes>
        <WinningParty>D</WinningParty>
        <Winner>JimEccher</Winner>
        <WinnerSelected>0</WinnerSelected>
        <PrecintPercent>100</PrecintPercent>
        <Loser>5202</Loser>
        <LosingVotes>3734</LosingVotes>
        <LosingParty>D</LosingParty>
        <Loser>JohnSmith</Loser>
        <LoserSelected>0</LoserSelected>
      </ELECTION>
    </root>
    I would like to get each
    Code:
    <title1>
    through
    Code:
    </LoserSelected>
    wrapped with
    Code:
    <ELECTION>
    and
    Code:
    </ELECTION>
    properly formatted as an XML document. Some of these races have only 2 candidates. Some races have 19+ candidates. Unfortunately my ticker can only display 2 candidates at a time. So everything at
    Code:
     <title1>
    between
    Code:
    </LoserSelected>
    contains the data I need to parse for 2 candidates. I plan on trying
    Code:
     msxsl inputfile.xml translation.xsl -o outputfile.xml
    An example of my desired output from the above would be:

    Code:
    <root>
            <ELECTION>
                <title1>Carroll County Board Dist. 2</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5188</Winner>
                <WinningVotes>1445</WinningVotes>
                <WinningParty>D</WinningParty>
                <Winner1>Gary Imel</Winner1>
                <WinnerSelected>1</WinnerSelected>
                <WinnerPercent>27</WinnerPercent>
                <Loser>5187</Loser>
                <LosingVotes>1382</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser2>Ronald Preston</Loser2>
                <LoserPercent>26</LoserPercent>
                <LoserSelected>0</LoserSelected>
    </ELECTION>
                <title1>Carroll County Board Dist. 2</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5189</Winner>
                <WinningVotes>1281</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner>CherylCole</Winner>
                <WinnerSelected>0</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5190</Loser>
                <LosingVotes>1208</LosingVotes>
                <LosingParty>R</LosingParty>
                <Loser>AnnetteRahn</Loser>
                <LoserSelected>0</LoserSelected>
              </ELECTION>
              <ELECTION>
                <title1>Henry County Circuit Clerk</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5192</Winner>
                <WinningVotes>12893</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner1>Jackie Oberg</Winner1>
                <WinnerSelected>1</WinnerSelected>
                <WinnerPercent>56</WinnerPercent>
                <Loser>5191</Loser>
                <LosingVotes>10214</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser2>David Guzzardo</Loser2>
                <LoserPercent>44</LoserPercent>
                <LoserSelected>0</LoserSelected>
              </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5205</Winner>
                <WinningVotes>6408</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner1>Karen Urick</Winner1>
                <WinnerSelected>1</WinnerSelected>
                <WinnerPercent>6</WinnerPercent>
                <Loser>5204</Loser>
                <LosingVotes>6390</LosingVotes>
                <LosingParty>R</LosingParty>
                <Loser2>Tim Wells</Loser2>
                <LoserPercent>6</LoserPercent>
                <LoserSelected>1</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5203</Winner>
                <WinningVotes>6362</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner>KathyNelson</Winner>
                <WinnerSelected>1</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5212</Loser>
                <LosingVotes>6343</LosingVotes>
                <LosingParty>R</LosingParty>
                <Loser>MarvinGradert</Loser>
                <LoserSelected>1</LoserSelected>
    </ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5206</Winner>
                <WinningVotes>6281</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner>RickLivesay</Winner>
                <WinnerSelected>1</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5207</Loser>
                <LosingVotes>5618</LosingVotes>
                <LosingParty>R</LosingParty>
                <Loser>LorenRathjen</Loser>
                <LoserSelected>1</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5208</Winner>
                <WinningVotes>5548</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner>BillPreston</Winner>
                <WinnerSelected>1</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5210</Loser>
                <LosingVotes>5493</LosingVotes>
                <LosingParty>R</LosingParty>
                <Loser>JacobWaller</Loser>
                <LoserSelected>1</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5194</Winner>
                <WinningVotes>5479</WinningVotes>
                <WinningParty>D</WinningParty>
                <Winner>AnnDeSmith</Winner>
                <WinnerSelected>1</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5193</Loser>
                <LosingVotes>5269</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser>JoAnneHillman</Loser>
                <LoserSelected>1</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5211</Winner>
                <WinningVotes>5116</WinningVotes>
                <WinningParty>R</WinningParty>
                <Winner>CharlesLotridge</Winner>
                <WinnerSelected>0</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5209</Loser>
                <LosingVotes>5103</LosingVotes>
                <LosingParty>R</LosingParty>
                <Loser>JonZahm</Loser>
                <LoserSelected>0</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5195</Winner>
                <WinningVotes>5034</WinningVotes>
                <WinningParty>D</WinningParty>
                <Winner>JosephSwan</Winner>
                <WinnerSelected>0</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5196</Loser>
                <LosingVotes>4674</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser>BettyMurphy</Loser>
                <LoserSelected>0</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5201</Winner>
                <WinningVotes>4639</WinningVotes>
                <WinningParty>D</WinningParty>
                <Winner>KarenRussell</Winner>
                <WinnerSelected>0</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5198</Loser>
                <LosingVotes>4611</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser>DennisSullivan</Loser>
                <LoserSelected>0</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5200</Winner>
                <WinningVotes>4559</WinningVotes>
                <WinningParty>D</WinningParty>
                <Winner>JimKing</Winner>
                <WinnerSelected>0</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5197</Loser>
                <LosingVotes>4555</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser>IanMalmstrom</Loser>
                <LoserSelected>0</LoserSelected>
        </ELECTION>
              <ELECTION>
                <title1>Henry County Board Dist. 1</title1>
                <PrecintPercent>100</PrecintPercent>
                <Winner>5199</Winner>
                <WinningVotes>4323</WinningVotes>
                <WinningParty>D</WinningParty>
                <Winner>JimEccher</Winner>
                <WinnerSelected>0</WinnerSelected>
                <PrecintPercent>100</PrecintPercent>
                <Loser>5202</Loser>
                <LosingVotes>3734</LosingVotes>
                <LosingParty>D</LosingParty>
                <Loser>JohnSmith</Loser>
                <LoserSelected>0</LoserSelected>
              </ELECTION>
            </root>
    As you can see, Henry County has MANY candidates, but I can only write 2 candidates at a time using my ticker. If I had each group of 2 candidates wrapped with the
    Code:
    <ELECTION>
    AND
    Code:
    </ELECTION>
    tags, I can parse it correctly.

    As of now, I have this pathes as

    Code:
    FOR XML PATH ('ELECTION'), root('root')
    So it does generate
    Code:
    <ELECTION>
    and
    Code:
    </ELECTION>
    already.

    Can anyone help, or offer any suggestions to get the XML formatted correctly?

    Thank You

    Can anyone help?
Working...