Inhalt Index |
4.16.4 VorlagenEine Vorlage ist ein BSCW Dokument vom Typ Document Template (text/x-bscw-template). Solch ein Dokument sollte mit einem normalen Texteditor (z.B. MS Windows Notepad) oder einem HTML-Editor erzeugt werden. Nicht zu empfehlen sind Dokumentverarbeitungssysteme wie MS Word. Beim Laden in ein DokSet zum BSCW muss der Mime-Typ Document Template (text/x-bscw-template) gewählt werden. Andernfalls wird das Dokument nicht vom Evaluierungsprozess erkannt. Es wird empfohlen, eine Endung wie '.dtm' für Dokumente vom Typ Vorlage zu benutzen, so dass sie in einer Ordnerübersichtsseite anhand ihres Namens leicht erkannt werden können. Eine Vorlage wird durch das Icon dargestellt. Es gibt zwei Klassen von Vorlagen: Aus Vorlagen der ersten Klasse werden während des Evaluierungsprozesses direkt Dokumente erzeugt. Eine Vorlage gehört zu dieser Klasse, wenn der Evaluierungsparameter document gesetzt ist. Vorlagen der zweiten Klasse sind indirekt an der Erzeugung von Dokumenten beteiligt, da sie in andere Vorlagen eingebettet werden. Eine Vorlage gehört zu dieser Klasse, wenn der Evaluierungsparameter document fehlt. Neben dem Evaluierungsparameter document gibt es noch den Evaluierungsparameter template. Beide Evaluierungsparameter spezifizieren Dateinamen innerhalb eines DokSets. Für den Evaluierungsprozess gelten die folgende Regeln: 4.16.4.1 Der Evaluierungsparameter document ist für eine Vorlage X definiertDer Evaluierungsprozess wertet die Vorlage X aus und erzeugt das Dokument, das in dem Parameter document angegeben wurde. In diesem Fall besteht die Vorlage X im wesentlichen aus Text, der Referenzen auf Instanzen enthält, die durch den Evaluierungsprozess ausgewertet werden. 4.16.4.2 Die Evaluierungsparameter document und template sind für eine Vorlage X definiertDer Evaluierungsprozess wertet die Vorlage, die in dem Parameter template angeben wurde, aus und erzeugt das Dokument, das in dem Parameter document angegeben wurde. Vor der Auswertung werden die Instanzen, die in der Vorlage X definert wurden, gelesen, so dass sie in der Vorlage, die in dem Parameter template angeben wurde, referenziert werden können. In diesem Fall besteht die Vorlage X aus Definitionen von Instanzen, die in die Vorlage eingesetzt werden, die in dem Parameter template angeben wurde. 4.16.4.3 Es sind keine Evaluierungsparameter für die Vorlage X definiertDer Evaluierungsprozess wertet die Vorlage X nur aus, wenn sie in einer anderen Vorlage in dem Evaluierungsparameter template angegeben wurde (siehe 4.16.4.2) oder in eine andere Vorlage eingebettet wird (siehe 4.16.4.5). Dabei besteht wie in 4.16.4.1 die Vorlage X im wesentlichen aus Text, der Referenzen auf Instanzen enthält, die durch den Evaluierungsprozess ausgewertet werden. 4.16.4.4 Der Evaluierungsparameter template ist für eine Vorlage X definiertDer Evaluierungsprozess wertet die Vorlage X nur aus, wenn sie in einer anderen Vorlage in dem Evaluierungsparameter template angegeben wurde (siehe 4.16.4.2) oder in eine andere Vorlage eingebettet wird (siehe 4.16.4.5). Dabei besteht wie in 4.16.4.2 die Vorlage X aus Definitionen von Instanzen, die in die Vorlage eingesetzt werden, die in dem Parameter template angeben wurde. 4.16.4.5 Eingebettet Vorlagen
In eine Vorlage können andere Vorlagen eingebettet werden. Dadurch kann
eine Vorlage von mehreren anderen Vorlagen verwendet werden. Ein Vorlage
wird mit der folgenden Notation eingebettet:
#( and )#: #(Name der Vorlage)#Während des Evaluierungsprozess wird die so angegebene Vorlage ausgewertet und der daraus resultierende Text eingesetzt. Solch eine Referenz auf eine Vorlage kann auch Pfadinformationen haben, die die Vorlage innerhalb eines DokSets lokalisiert. Vorlagen, die Definitionen von Instanzen enthalten, können ebenso eingebettet werden. Diese werden wie in 4.16.4.4 beschrieben ausgewertet. Mit #(Name der Vorlage, Name einer verbundenen Vorlage)#kann man zum Zeitpunkt der Einbettung eine Vorlage, die Definitionen von Instanzen enthält, mit einer anderen Vorlage verbinden, wie im Evaluierungsparameter template angegeben wurde. D.h. Vorlagen, die Definitionen von Instanzen enthalten, können abhängig vom jeweiligen Kontext mit verschiedenen Vorlagen verbunden werden. Die Namensangabe der Vorlage kann die Jokerzeichen '*' und '?' enthalten. In diesem Fall werden nacheinander alle Vorlagen eingebettet, die dem Muster entsprechen. Zum Beispiel: #(&(content_dir);/faq/questions*.dtm, &(template_dir);/faq.dtm)#Alle Vorlagen im Ordner &(content_dir);/faq, deren Name dem Muster question*.dtm entspricht, werden mit der Vorlage &(template_dir);/faq.dtm verbunden, ausgewertet und eingesetzt. |
Inhalt Index |