Hi Vlastik,

unfortunately, I don't know the correct way. I'd like to know that, too, so hopefully someone here can point it out.

Meanwhile, I wanted to share with you the workaround I use - while processing DIM, save the value, element or tree fragment you need to a variable. Then access the variable it while processing another document.

E.g. (untested example):
<xsl:variable name="my-uri" select="/dri:document/dri:meta/dri:pageMeta/dri:metadata[3]"/>

<xsl:template match="mets:METS[mets:dmdSec/mets:mdWrap[@OTHERMDTYPE='DIM']]" mode="list">
    <xsl:value-of select="$my-uri" />
</xsl:template>

just to illustrate the tree fragment case, same as above (I'm not sure about the namespaces off the top of my head):

<xsl:variable name="my-uri" select="/dri:document/dri:meta/dri:pageMeta"/>

<xsl:template match="mets:METS[mets:dmdSec/mets:mdWrap[@OTHERMDTYPE='DIM']]" mode="list">
    <xsl:value-of select="$my-uri/dri:metadata[3]" />
</xsl:template>


Regards,
~~helix84

Compulsory reading: DSpace Mailing List Etiquette
https://wiki.duraspace.org/display/DSPACE/Mailing+List+Etiquette