Modèles

Un modèle est un document BSCW de type MIME « Modèle de Générateur de documents » (text/x-bscw-template). Les modèles doivent être créés en utilisant un éditeur de texte ASCII normal (par exemple, le bloc-notes de Windows) et non pas par un système de traite­ment de texte tel que Microsoft Word. Lors du téléchargement d’un modèle de document vers un ensemble de documents, le type MIME « Modèle de Générateur de documents » doit être spéci­fié. Autrement le processus d’évaluation ne reconnaît pas le document comme un modèle.

Nous recommandons que vous utilisiez une extension telle que .dtm pour les modèles de documents, donc ils peuvent facilement être identifiés dans le listage d’un dossier. Un modèle est représenté par l’icônetemplate (DocSet).

Il existe deux catégories de modèles : les modèles de la première classe créent un document directement pendant le processus d’évaluation. Un modèle appartient à cette classe si le paramètre d’évaluation document est spécifié pour le modèle.

Les modèles de la deuxième classe contribuent indirectement à la création d’un document parce qu’ils sont référencés par d’autres modèles. Un modèle appartient à cette classe si le paramètre d’évaluation document est manquant.

Outre le paramètre d’évaluation document, il y a un autre paramètre d’évaluation template qui indique un modèle dans lequel les définitions d’entité du modèle actuel seront insérées lors de l’évaluation. Les deux paramètres d’évaluation spécifient les noms de document dans l’ensemble du document.

Les paramètres d’évaluation peuvent être considérés comme une sorte d’entités appartenant aux modèles. Ils peuvent être définis (et redéfinis) utilisant action  Paramètres d’éval.  dans le menu actions d’un modèle de document.

Les règles suivantes s’appliquent au cours du processus d’évaluation :

(a) Le paramètre d’évaluation document est spécifié par le modèle X

Le processus d’évaluation évaluera le modèle X et créera un document avec le nom spécifié par le paramètre document. Dans ce cas, le modèle est composé, en général, de texte contenant des références à des entités qui sont résolus par le processus d’évaluation avant que le document soit inséré dans l’ensemble de documents.

(b) Les paramètres d’évaluation document et template sont spécifiés pour le modèle X

Le processus d’évaluation évaluera le modèle spécifié par le paramètre template et créera un docu­ment avec le nom spécifié par le paramètre document. Au cours du processus d’éva­lua­tion, les définitions d’entité du modèle X sont utilisées. Dans ce cas, le modèle est composé, en général, de définitions d’entités, qui sont insérées dans le modèle spécifié par le paramètre template par le processus d’évaluation avant que le document soit inséré dans l’ensemble des documents.

(c) Aucun paramètre d’évaluation n’est spécifié par le modèle X

Le processus d’évaluation évaluera le modèle X si et seulement s’il est référencé par un autre modèle via le paramètre template (voir cas (b) ci-dessus) ou s’il est imbriqué dans un autre modèle (voir ci-dessous). Dans ce cas, le modèle X, est composé essentiellement de texte contenant des références à des entités qui seront évaluées par le processus d’évaluation.

(d) Le paramètre d’évaluation template est spécifié par le modèle X

Le processus d’évaluation évaluera le modèle X si et seulement s’il est référencé par un autre modèle via le paramètre template (voir cas (b) ci-dessus) ou s’il est imbriqué dans un autre modèle (voir ci-dessous). Dans ce cas, le modèle X, est composé de définitions d’entités qui sont insérées dans le modèle spécifié par le paramètre template par le processus d’évaluation.

Les modèles imbriqués

Les modèles peuvent être imbriqués dans d’autres modèles, c’est-à-dire qu’un modèle peut être utilisé par plusieurs autres. Un modèle est imbriqué en utilisant la notation suivante :

#(nom-de-modèle)#

Au cours du processus d’évaluation, le modèle imbriqué est évalué et le texte résultant remp­lace la référence. La référence à un modèle imbriqué peut également contenir des infor­ma­tions par rapport au chemin d’accès afin de pouvoir localiser le modèle dans la hiérarchie de dossiers de l’ensemble du document. Les noms des chemins d’accès sont considérés être rela­tifs à l’emplacement du modèle de référence. Les modèles avec définitions d’entités peuvent également être imbriqués dans un autre modèle. Dans ce cas, le résultat du processus d’éva­luation sera aussi inséré.

Utilisant la notation suivante

#(nom-de-modèle, nom-de-modèle-combinée)#

on peut combiner un modèle imbriqué avec un autre modèle qui contient des informations d’entité. Au moment de l’évaluation du modèle imbriqué, les définitions d’entité du modèle consolidé seront d’abord évaluées et insérées dans le modèle imbriqué ; alors seulement le modèle imbriqué sera évalué et inséré. De cette façon, quelqu’un peut combiner des modèles en définissant des entités avec différents modèles dans des contextes variés.

Les noms des modèles imbriqués peuvent contenir les caractères jokers « * » (chaîne arbi­traire) et « ? » ( caractère arbitraire). Dans ce cas, tous les modèles qui correspondent au pat­ron seront imbriqués l’un après l’autre. L’expression suivante :

#(&(content_dir);/faq/question*.dtm, &(template_dir);/faq.dtm)#

entraînera tous les modèles dans le répertoire &(content_dir);/faq dont le nom correspond au modèle en question*.dtm à être combiné avec le modèle &(template_dir);/faq.dtm et ensuite à être évalué et inséré.