XSLT: Comment obtenir des noms de fichiers à partir d'un certain répertoire?

Est-il une fonction dans XSLT qui peut prend un chemin d'accès au répertoire et rend tous les fichiers qu'il contient??

J'ai un fichier xml se lit maintenant comme ceci

<filelist>
    <file>fileA.xml</file>
    <file>fileB.xml</file>
</filelist>

Maintenant, il y a le répertoire appelé dir, a fichiers fileX.xml, fileY.xml et un tas d'autres fichiers xml. Je veux ajouter ces fichiers à l'origine du fichier xml, afin que je puisse obtenir:

<filelist>
    <file>fileA.xml</file>
    <file>fileB.xml</file>
    <file>fileX.xml</file>
    <file>fileY.xml</file>
    .... <!-- other files -->
</filelist>

Est-il d'une transformation XSLT façon de le faire?? quelque chose qui prend en dir de la racine, et est en mesure de itérateur à travers tous les fichiers qu'il contient?? Et puis je pouvais l'appeler quelque chose comme:

<xsl:element name = file >
     <xsl:copy> <!--whatever file name--> <xsl:copy>
</xsl:element>0

[Edit]

toutes les réponses ont été très utiles. J'ai fini par trouver une solution externe (en utilisant saxon). J'ai pensé qu'il pourrait être utile pour d'autres personnes à poster ma solution ici, mais il est très spécifique à ma propre situation.

Je utiliser Ant pour construire un java web app et de la nécessité de traduire des fichiers xml avant le déploiement. Donc, j'ai été en utilisant le xslt tâche de faire le travail par l'ajout de l' "saxon9.jar" dans le classpath. Et dans mon fichier xsl, j'ai juste fait quelque chose comme ceci:

<xsl:for-each select="collection('../dir/?select=*.xml')" >
     <xsl:element name='file'>
        <xsl:value-of select="tokenize(document-uri(.), '/')[last()]"/>
     </xsl:element>
</xsl:for-each>
Voulez-vous que le moteur XSLT pour aller vers le système de fichiers et d'obtenir la liste des fichiers dans le répertoire??? Ce n'est pas vraiment ce que XSLT a été conçu pour. Encore mieux d'avoir le "host" demande de le faire, générer du XML et ensuite utiliser XLST de la transformer dans le format de sortie.
Merci pour l'affichage de la solution. Vous devriez poster une réponse afin que nous puissions upvote. 🙂
Notez également que la collecte() n'est pas spécifique à Saxon. C'est une partie de XSLT 2.0 en général. Notez également qu'il ne fonctionne que pour les documents XML,... vous ne pouvez pas par exemple obtenir un répertoire de .les fichiers mp3 à l'aide de la collecte().
Bon Q. Heureux de vous coincé à l'original de votre désir de le faire dans XSL quand d'autres ont suggéré que c'est le mauvais outil. Une fois que vous avez compris, il s'est avéré être assez simple.

OriginalL'auteur tomato | 2009-03-09