[xsl] value-of select problem

Subject: [xsl] value-of select problem
From: cchelius@xxxxxxxxxxxxxxx
Date: Tue, 15 Aug 2006 17:35:03 -0400 (EDT)
I have included a snippet from my xslt that I am having difficulties with.
My source XML can contain several authors names but those names dont have
to contain a middle name. The problem with my xslt is that when an author
doesnt contain a middle name it will pull the middle name from the next
author after it. Obviously this is no good as it creates a name that is
incorrect. Im not sure how to tell the xslt that if there is no middle
name not to grab <authorMname from the next author. Any ideas?

XML Code Sample:

<author><authorFname>John</authorFname>
            <authorLname>Dai</authorLname>, <authorDegree>MD</authorDegree>;
                <authorFname>Jane</authorFname><authorMname>Austin</authorMname><authorLname>Smith</authorLname></author>


XSLT Sample:

  <xsl:for-each select="Story/author/authorFname">
                        <!-- Adjusted to allow for multiple authors -->
                        <Author>
                            <FirstName>
                                <xsl:value-of select="."/>
                            </FirstName>
                            <MiddleName>
                                <xsl:value-of
select="following-sibling::authorMname[1]"/>
                            </MiddleName>
                            <LastName>
                                <xsl:value-of
select="following-sibling::authorLname[1]"/>
                            </LastName>
                            <Suffix>
                                <xsl:value-of
select="following-sibling::authorSuffix[1]"/>
                            </Suffix>
                            <Affiliation>
                                <xsl:value-of
select="following-sibling::authorAffiliation[1]"/>
                            </Affiliation>
                        </Author>
                    </xsl:for-each>

Current Thread