<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
code
        {mso-style-priority:99;
        font-family:"Courier New";}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.EmailStyle22
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
p.p1, li.p1, div.p1
        {mso-style-name:p1;
        margin:0in;
        margin-bottom:.0001pt;
        font-size:9.0pt;
        font-family:Helvetica;
        color:#AB4500;}
span.s1
        {mso-style-name:s1;
        color:#0070C1;}
span.s2
        {mso-style-name:s2;
        color:#F9975E;}
span.s3
        {mso-style-name:s3;
        color:#FF9450;}
span.s4
        {mso-style-name:s4;
        color:#021DA7;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
<style type="text/css">.style1 {font-family: "Times New Roman";}</style></head><body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Lou,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Below is how I would approach it. I take into account that you want to treat the opening span specially.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span style="color:black">Best wishes,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="color:black">jk<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">-- <o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Joel Kalvesmaki<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Managing Editor in Byzantine Studies<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">Dumbarton Oaks<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">202 339 6435</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="p1"><span class="s1">    <xsl:template</span><span class="s2"> match</span><span class="s3">=</span>"div[@class = 'wpvw-motto']"<span class="s4">></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">        </span>
</span><span class="s1"><xsl:variable</span><span class="s2"> name</span><span class="s3">=</span>"opener"<span class="s2"> select</span><span class="s3">=</span>"span[not(preceding-sibling::node())]"<span class="s2"> as</span><span class="s3">=</span>"element()?"<span class="s4">/></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">        </span>
</span><span class="s4"><quote></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">            </span>
</span><span class="s1"><xsl:apply-templates</span><span class="s2"> select</span><span class="s3">=</span>"$opener"<span class="s4">/></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">            </span>
</span><span class="s1"><xsl:for-each-group</span><span class="s2"> select</span><span class="s3">=</span>"node() except $opener"<span class="s2"> group-ending-with</span><span class="s3">=</span>"br"<span class="s4">></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">               
</span></span><span class="s4"><p></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">                   
</span></span><span class="s1"><xsl:apply-templates</span><span class="s2"> select</span><span class="s3">=</span>"current-group()"<span class="s4">/></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">               
</span></span><span class="s4"></p></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">            </span>
</span><span class="s1"></xsl:for-each-group></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">        </span>
</span><span class="s4"></quote></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">    </span></span><span class="s1"></xsl:template></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">    </span></span><span class="s1"><xsl:template</span><span class="s2"> match</span><span class="s3">=</span>"*[@class = 'cursief']"<span class="s4">></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">        </span>
</span><span class="s4"><hi</span><span class="s2"> rend</span><span class="s3">=</span>"italic"<span class="s4">></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">            </span>
</span><span class="s1"><xsl:value-of</span><span class="s2"> select</span><span class="s3">=</span>"."<span class="s4">/></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">        </span>
</span><span class="s4"></hi></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">    </span></span><span class="s1"></xsl:template></span><span style="color:black"><br>
</span><span class="apple-converted-space"><span style="color:black">    </span></span><span class="s1"><xsl:template</span><span class="s2"> match</span><span class="s3">=</span>"br"<span class="s4">/></span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">oXygen-user <oxygen-user-bounces@oxygenxml.com> on behalf of Lou Burnard <lou.burnard@retired.ox.ac.uk><br>
<b>Date: </b>Tuesday, March 6, 2018 at 9:21 AM<br>
<b>To: </b>"oxygen-user@oxygenxml.com" <oxygen-user@oxygenxml.com><br>
<b>Subject: </b>[oXygen-user] xslt puzzle<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p><a name="_MailOriginalBody">I take the liberty of exposing my ignorance of how to use the cool grouping features of xslt on the list, in the hope that someone will take pity on me and explain what's going on here.<o:p></o:p></a></p>
<p><span style="mso-bookmark:_MailOriginalBody">My input file (in the HTML namespace) contains chunks like this:<o:p></o:p></span></p>
<pre><span style="mso-bookmark:_MailOriginalBody"><div class="wpvw-motto"><span class="cursief">Waarde Meryan!</span><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"><br/><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody">‘In aanmerking genomen onze gewoonlijk niet heel drukke (!) correspondentie, ...  Dus, vous voilà prévenu, le pire est fait.<o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"><br/><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody">‘Weet dan ...  voet voortleven en ten slotte totaal geruïneerd! Hij, <span class="cursief">zeer</span> plotseling gestorven.... gij begrijpt mij wel! <o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"><br/><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"></div><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"><o:p> </o:p></span></pre>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span style="mso-bookmark:_MailOriginalBody">which I want to transform  (obviously) to something like this<o:p></o:p></span></p>
<pre><span style="mso-bookmark:_MailOriginalBody"><quote><hi rend="italic">Waarde Meryan!</hi><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"><p><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody">‘In aanmerking genomen onze gewoonlijk niet heel drukke (!) correspondentie, ...  Dus, vous voilà prévenu, le pire est fait.<o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"></p><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"><p><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody">‘Weet dan ...  voet voortleven en ten slotte totaal geruïneerd! Hij, <hi rend="italic">zeer</hi> plotseling gestorven.... gij begrijpt mij wel! <o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"></p><o:p></o:p></span></pre>
<pre><span style="mso-bookmark:_MailOriginalBody"></quote><o:p></o:p></span></pre>
<p class="MsoNormal"><span style="mso-bookmark:_MailOriginalBody"><br>
My stylesheet has a template for div[@class] which contains the following:<br>
<br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:when test="@class = 'wpvw-motto'"></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><quote></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:for-each-group select="node()" group-ending-with="h:br"></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:for-each select="current-group()"></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><p></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:choose></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:when test="self::h:br"/></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:when test="self::h:span"></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:apply-templates select="."/></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></xsl:when></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:otherwise></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"><xsl:apply-templates select="."/></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></xsl:otherwise></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></xsl:choose></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></p></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></xsl:for-each></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></xsl:for-each-group></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></quote></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:13.5pt"></xsl:when></span></code></span><span style="mso-bookmark:_MailOriginalBody"><br>
<br>
and another for span which handles the conversion to <hi> <br>
<br>
... and this NEARLY works. But not quite. It generates <br>
<br>
</span><span style="mso-bookmark:_MailOriginalBody"><code><span style="font-size:10.0pt"><quote><p></span></code></span><span style="mso-bookmark:_MailOriginalBody"><span style="font-size:10.0pt;font-family:"Courier New""><br>
<code><hi rend="italic">Waarde Meryan!</hi> </p></code><br>
<code><p></code><br>
<code>‘In aanmerking genomen onze gewoonlijk niet heel drukke (!) correspondentie, ... Dus, vous voilà prévenu, le pire est fait.</code><br>
<code></p>></code><br>
<code><p></code><br>
<code>‘Weet dan ... voet voortleven en ten slotte totaal geruïneerd! Hij, </p></code><br>
<code><p><hi rend="italic">zeer</hi></p></code><br>
<code><p> plotseling gestorven.... gij begrijpt mij wel! </code><br>
<code></p></code><br>
<code></quote></code></span></span><span style="mso-bookmark:_MailOriginalBody"><br>
<br>
i.e. it looks as if the current-group starts a new sequence for each h:div child, rather than for each <br/>. So I am misunderstanding something fairly fundamental about how this grouping mechanism works.
<br>
<br>
Any and all advice gratefully received!<br>
<br>
Lou<br>
<br>
 <br>
<br>
<br>
</span><o:p></o:p></p>
</div>


<br /><br /><p style="font-family: Verdana; font-size:10pt; color:#666666;"><b>Disclaimer</b></p><p style="font-family: Verdana; font-size:8pt; color:#666666;">The information contained in this communication from the sender is confidential. It is intended solely for use by the recipient and others authorized to receive it. If you are not the recipient, you are hereby notified that any disclosure, copying, distribution or taking action in relation of the contents of this information is strictly prohibited and may be unlawful.<br /><br />This email has been scanned for viruses and malware, and may have been automatically archived by <b>Mimecast Ltd</b>, an innovator in Software as a Service (SaaS) for business, providing a <b>safer</b> and <b>more useful</b> place for your human generated data. Mimecast specializes in security, archiving, and compliance. To find out more <a href="http://www.mimecast.com/products/" target="_blank">Click Here</a>.</p></body></html>