As @riedde pointed out on TEI-L, there seems to be an issue with @mode="replace" when chaining.
Attached is a zip archive with four files to demonstrate the case:
oddex1.odd – the base customization
oddex1.xml – the compiled ODD from the above oddex1.odd
oddex2.odd – a second customization, building on the above oddex1.xml
oddex2.rng – the resulting RNG file from the oddex2.odd chained customization
The first oddex1.odd features some modifications with @mode="replace" and – for reference – one with @mode="change". After chaining (i.e. create the compiled ODD from oddex1.odd, use this as the source for oddex2.odd, and finally create the RelaxNG schema from this oddex2.odd) the specifications that were modified via @mode="replace" are missing from the schema while the one modification that was done via @mode="change" is available.
I suspect there to be an issue with the Stylesheets that turn a @mode="change" into a @rend="change" in the compiled ODD, but a @mode="replace" is propagated to the processed ODD (compare e.g. the classSpec "att.global.rendition" starting on line 2187 in oddex1.xml and the classSpec "att.docStatus" on line 1949).
As @riedde pointed out on TEI-L, there seems to be an issue with
@mode="replace"
when chaining.Attached is a zip archive with four files to demonstrate the case:
oddex1.odd
oddex1.xml
oddex2.odd
chained customizationThe first
oddex1.odd
features some modifications with@mode="replace"
and – for reference – one with@mode="change"
. After chaining (i.e. create the compiled ODD fromoddex1.odd
, use this as the source foroddex2.odd
, and finally create the RelaxNG schema from thisoddex2.odd
) the specifications that were modified via@mode="replace"
are missing from the schema while the one modification that was done via@mode="change"
is available.I suspect there to be an issue with the Stylesheets that turn a
@mode="change"
into a@rend="change"
in the compiled ODD, but a@mode="replace"
is propagated to the processed ODD (compare e.g. the classSpec "att.global.rendition" starting on line 2187 inoddex1.xml
and the classSpec "att.docStatus" on line 1949).