J'ai une question à propos de xsl. J'ai 1 énorme fichier xsl (+4000 lignes: p) et je voudrais diviser le fichier en différentes parties. J'utilise le fichier xsl pour mapper certains schémas dans BizTalk et ce serait plus performant si je le divisais en parties, donc je peux réutiliser les parties. Quoi qu'il en soit, ne me dérange pas les trucs BizTalk, comment puis-je faire référence à partir de mon fichier xsl principal pour les différentes parties?xsl référence au fichier xsl externe
ex .:
<?xml version="1.0" encoding="UTF-16"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" method="xml" version="1.0" />
<xsl:template match="/">
<xsl:apply-templates select="/ns1:ADT_A01_231_GLO_DEF" />
</xsl:template>
<xsl:template match="/ns1:ADT_A01_231_GLO_DEF">
<ns1:ADT_A01_25_GLO_DEF>
<EVN_EventType>
<xsl:if test="EVN_EventTypeSegment/EVN_1_EventTypeCode">
<EVN_1_EventTypeCode>
<xsl:value-of select="EVN_EventTypeSegment/EVN_1_EventTypeCode/text()" />
</EVN_1_EventTypeCode>
</xsl:if>
<EVN_2_RecordedDateTime>
<xsl:if test="EVN_EventTypeSegment/EVN_2_RecordedDateTime/TS_0_TimeOfAnEvent">
<TS_0_Time>
<xsl:value-of select="EVN_EventTypeSegment/EVN_2_RecordedDateTime/TS_0_TimeOfAnEvent/text()" />
</TS_0_Time>
</xsl:if>
<xsl:if test="EVN_EventTypeSegment/EVN_2_RecordedDateTime/TS_1_DegreeOfPrecision">
<TS_1_DegreeOfPrecision>
<xsl:value-of select="EVN_EventTypeSegment/EVN_2_RecordedDateTime/TS_1_DegreeOfPrecision/text()" />
</TS_1_DegreeOfPrecision>
</xsl:if>
</EVN_2_RecordedDateTime>
</EVN_EventType>
<PID_PatientIdentification>
<xsl:if test="PID_PatientIdentificationSegment/PID_1_SetIdPid">
<PID_1_SetIdPid>
<xsl:value-of select="PID_PatientIdentificationSegment/PID_1_SetIdPid/text()" />
</PID_1_SetIdPid>
</xsl:if>
</PID_PatientIdentification>
</ns1:ADT_A01_25_GLO_DEF>
</xsl:template>
</xsl:stylesheet>
Alors je voudrais mettre le "EVN_EventType" et le "PID_PatientIdentification" dans un autre fichier. Pourrait être que ce xsl n'est pas valide à 100%, j'ai rapidement copier/coller quelque chose, mais vous obtenez mon point?
Appréciez grandement toute aide. Thx
Bonne question (+1). Voir ma réponse pour les instructions xslt qui sont spécialement conçues dans le but d'utiliser des transformations XSLT multi-fichiers, –
Outre les bonnes réponses de @LarsH et @Dimitre, vous devriez noter que cette transformation a un mauvais design. C'est juste une transformation d'identité avec probablement des éléments dépouillés ou contournés. Cela pourrait être beaucoup plus court! –