Die Funktion preference[]


Die Funktion preference[] erlaubt die Auswahl von  Gruppen entsprechend dem Inhalt ihrer jeweiligen  Property -Eigenschaften. Im Unterschied zu den Funktionen :view[] oder :version[] bewirkt preference[]  aber nicht die Ausgabe des Inhalts der Property-Eigenschaft selbst.

Die Funktion verwendet mehrere Argumente, die jeweils durch Kommata getrennt angegeben werden müssen, und gehorcht der folgenden Syntax:

preference[Gruppe | Property | (without) | Schlüsselwort | Vergleichsmuster]

Das erste Argument entspricht dem Namen der Gruppe, deren Property abgefragt wird.

Das zweite Argument gibt den Namen der Property-Eigenschaft wieder, auf deren Inhalt preference[] Bezug nehmen soll.

Das Schlüsselwort "without" ist optional und kann folglich weggelassen werden. Die Angabe von without bewirkt, daß Gruppen auch dann ausgewählt werden, wenn  ihnen keine bei Argument 2 genannte Property-Eigenschaft zugeordnet ist. Das sind also auch diejenigen Gruppen, die entweder überhaupt keine Property-Eigenschaft oder keine Property-Eigenschaft des genannten Namens aufweisen. Wenn without dagegen fehlt, werden folglich nur diejenigen Gruppen ausgegeben, die explizit die Bedingung des Vergleichsmusters erfüllen. Argumente mit fehlender Property-Eigenschaft bleiben unberücksichtigt.


Es kann jeweils eines der folgenden Schlüsselwörter angegeben werden:  all, first, ordered , collected .



Als Vergleichsmuster muß wenigstens eine Zeichenkette angegeben werden, die in Hochkommata eingeschlossen sein muß.

Ein Beispiel für den korrekten Einsatz von :preference[] stellen die folgenden Befehle dar:

write part=preference[bibl,authority, ordered,"Hollas" "Zensus"] :biblitem


write part=preference[bibl,authority, without, ordered,"Hollas" "Zensus"]:biblitem



Der erste Befehl gibt aus allen Gruppe bibl, in denen Property-Eigenschaft "authority" den Inhalt "Hollas" oder "Zensus" aufweist, das Elemente :biblitem wieder. Dabei werden Elemente aus Gruppen mit der Property-Eigenschaft des Inhalts "Hollas" zuerst ausgegeben.

Das zweite Beispiel gibt zusätzlich auch die Gruppen bibl ohne Property-Eigenschaft des Namens "authority" wieder.