J'ai un fichier XSLT afin de transformer une grande quantité de données. Je voudrais ajouter une fonctionnalité "split", soit en tant que XSLT chaîné ou dans le XSLT courant qui peut créer plusieurs fichiers de sortie afin de limiter la taille des fichiers sous un certain seuil. Supposons que le fichier XML d'entrée est comme ci-dessous:Fichiers de sortie fractionnés XSLT - groupement muenchian
<People>
<Person>
<name>John</name>
<date>June12</date>
<workTime taskID="1">34</workTime>
<workTime taskID="2">12</workTime>
</Person>
<Person>
<name>John</name>
<date>June13</date>
<workTime taskID="1">21</workTime>
<workTime taskID="2">11</workTime>
</Person>
<Person>
<name>Jack</name>
<date>June19</date>
<workTime taskID="1">20</workTime>
<workTime taskID="2">30</workTime>
</Person>
</People>
Le fichier XSLT est comme ci-dessous en utilisant le regroupement muenchian. Cependant, je voudrais, en sortie, plusieurs fichiers comme ci-dessous au lieu d'un grand. Pour cet exemple, je n'ai défini qu'un seul nom par fichier ... mais cela devrait être un paramètre.
fichier de sortie pour la première personne:
<People>
<Person>
<name>John</name>
<taskID>1</taskID>
<workTime>
<date>June12</date>
<time>34</time>
</workTime>
<workTime>
<date>June13</date>
<time>21</time>
</workTime>
</Person>
<Person>
<name>John</name>
<taskID>2</taskID>
<workTime>
<date>June12</date>
<time>12</time>
</workTime>
<workTime>
<date>June13</date>
<time>11</time>
</workTime>
</Person>
</People>
fichier de sortie pour la deuxième personne:
<People>
<Person>
<name>Jack</name>
<taskID>1</taskID>
<workTime>
<date>June19</date>
<time>20</time>
</workTime>
</Person>
<Person>
<name>Jack</name>
<taskID>2</taskID>
<workTime>
<date>June19</date>
<time>30</time>
</workTime>
</Person>
</People>
Quelle serait la meilleure approche et la plus élégante en utilisant XSLT 1.0? Y at-il un moyen d'appeler un XSLT enchaîné dans le XSLT afin de diviser les fichiers de sortie?
Cheers.
Bonne question, +1. Voir ma réponse pour un certain nombre de façons de le faire. –