Спасибо всем, в конце концов я понял следующее, основываясь на посте на sguk
<xsl:variable name="Doc">
<xsl:call-template name="OuterTemplate.GetTitle">
<xsl:with-param name="Title" select="@DocumentLink1"/>
</xsl:call-template>
</xsl:variable>
со следующим кодом тега:
<a href="{substring-before($Doc,',')}">
<xsl:value-of select="substring-after($Doc,',')" />
</a>
или для изображения:
<xsl:variable name="Image">
<xsl:call-template name="OuterTemplate.GetTitle">
<xsl:with-param name="Title" select="@img" />
</xsl:call-template>
</xsl:variable>
со следующим тегом img:
<img src="{substring-before($Image,',')}" alt="{substring-after($Image,',')}" />
Я публикую решение здесь, так как это оказалось нелепо сложно выяснить (возможно, это моя вина, поскольку я действительно не «получаю» XSL), но на случай, если кто-то его ищет, этот код выводит изображения или ссылки из столбца «Гиперссылка или изображение» в Sharepoint.