unfortunately it works only for the preface. for the whole book I
encountered the following error:

Ambiguous rule match for /book[1]/part[3]/chapter[1]/para[3]
Matches both "d:para[not(parent::d:footnote)]" on line 280 of 
file:/F:/EigeneDateien/Schmetterlingsbuechlein/xslt/fo/Falterbuechlein_4.xsl
and "d:para[@role = 'zitat']" on line 261 of 
file:/F:/EigeneDateien/Schmetterlingsbuechlein/xslt/fo/Falterbuechlein_4.xsl


Do you have a solution?
Regards Bernhard

 <xsl:template match="d:para[@role = 'zitat']">
    <!--for a multiline text citation -->
    <fo:block xsl:use-attribute-sets="zitatlayout.properties">
      <xsl:apply-templates/>
    </fo:block>
  </xsl:template>
  <xsl:attribute-set name="zitatlayout.properties">
    <xsl:attribute name="margin-left">2em</xsl:attribute>
    <xsl:attribute name="margin-right">2em</xsl:attribute>
    <xsl:attribute name="font-size">13pt</xsl:attribute>
  </xsl:attribute-set>
  <xsl:attribute-set name="figure.properties">
    <xsl:attribute name="keep-together.within-column">
      <xsl:choose>
        <xsl:when test="count(d:mediaobject) &gt; 1">inherit</xsl:when>
        <xsl:otherwise>always</xsl:otherwise>
      </xsl:choose>
    </xsl:attribute>
  </xsl:attribute-set>
  <xsl:template match="d:para[not(parent::d:footnote)]"> <!-- In
compacted lists adjust the  para distance -->
    <xsl:variable name="keep.together">
      <xsl:call-template name="pi.dbfo_keep-together"/>
    </xsl:variable>
    <fo:block xsl:use-attribute-sets="para.properties">
      <xsl:if test="$keep.together != ''">
        <xsl:attribute name="keep-together.within-column"><xsl:value-of
          select="$keep.together"/></xsl:attribute>
      </xsl:if>
      <xsl:if test="ancestor::*/@spacing = 'compact'">
        <xsl:attribute name="space-before.optimum">0.15em</xsl:attribute>
        <xsl:attribute name="space-before.minimum">0.1em</xsl:attribute>
        <xsl:attribute name="space-before.maximum">.2em</xsl:attribute>
        <xsl:attribute name="font-size">12pt</xsl:attribute>
      </xsl:if>
      <xsl:call-template name="anchor"/>
      <xsl:apply-templates/>
    </fo:block>
  </xsl:template> 

Am 11.02.2019 um 22:48 schrieb Bernhard Kleine:
> works! Thanks a lot Bernhard
>
> Am 11.02.2019 um 16:32 schrieb Jirka Kosek:
>> On 11.2.2019 10:03, Bernhard Kleine wrote:
>>> I did as you advised. I found the offending template:
>>>
>>> <xsl:template match="d:para"> <!-\- In kompakten Listen para-Abstand
>>> anpassen -\->
>> This templates overrides the following template that injects footnote
>> marks into the footnote:
>>
>> <xsl:template match="d:footnote/d:para[1]
>>                      |d:footnote/d:simpara[1]
>>                      |d:footnote/d:formalpara[1]"
>>               priority="2">
>>   <!-- this only works if the first thing in a footnote is a para, -->
>>   <!-- which is ok, because it usually is. -->
>>   <fo:block>
>>     <xsl:call-template name="format.footnote.mark">
>>       <xsl:with-param name="mark">
>>         <xsl:apply-templates select="ancestor::d:footnote"
>> mode="footnote.number"/>
>>       </xsl:with-param>
>>     </xsl:call-template>
>>     <xsl:apply-templates/>
>>   </fo:block>
>> </xsl:template>
>>
>> The easiest fix would be to change match attribute in your template to
>>
>> d:para[not(parent::d:footnote)]
>>
>>
>>                                      Jirka
>>
-- 
spitzhalde9
D-79853 lenzkirch
[email protected]
www.b-kleine.com, www.urseetal.net
-
thunderbird mit enigmail
GPG schlüssel: D5257409
fingerprint:
08 B7 F8 70 22 7A FC C1 15 49 CA A6 C7 6F A0 2E D5 25 74 09

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to