Die Definition DATA_CRITERIA definiert die Kriterien für die Zuordnung eines Objekttyps zu einer Datei oder einem Verzeichnis
Sie können die Kriterien in Tabelle 13-3 für die Objektzuordnung verwenden.
Tabelle 13-3 DATA_CRITERIA - Kriterien und Beschreibungen
Für einen Datentyp kann mehr als ein Kriterium verwendet werden. Aber die Kriterien NAME_PATTERN und PATH_PATTERN sollten nicht in demselben Datentyp verwendet werden.
Das Feld NAME_PATTERN verwenden, um die erforderlichen Merkmale des Dateinamens anzugeben. Das Feld kann die folgenden Platzhalterzeichen enthalten:
? - Entspricht einem beliebigen einzelnen Zeichen
* - Entspricht einer beliebigen Folge von Zeichen (einschließlich einer leeren Zeichenfolge )
[cc... ] - Entspricht einem beliebigen der in Klammern gesetzten Zeichen ( c)
[c- c] - Entspricht einem beliebigen Zeichen aus dem Bereich von c bis c
Die folgende Datentypdefinition erstellt einen Datentyp auf der Grundlage des Dateinamens. Der Dateiname muß mit QS anfangen und mit .doc enden.
DATA_ATTRIBUTES QS_Doc { DESCRIPTION Diese Datei enhält ein Dokument zum QS \ projekt. ICON Word_Doc ACTIONS Open } DATA_CRITERIA QS_Doc_Criteria { NAME_PATTERN QS*.doc DATA_ATTRIBUTES_NAME QS_Doc }
Die folgende Definition erstellt einen Datentyp für Verzeichnisse mit dem Namen Demo_n, wobei n den Zahlen 0 bis 9 entspricht.
DATA_ATTRIBUTES Demo_directory { DESCRIPTION Dies ist ein Verzeichnis. Zum Öffnen doppelklisken. ICON Demo ACTIONS OpenInPlace,OpenNewView } DATA_CRITERIA Demo_directory_criteria { NAME_PATTERN Demo_[0-9] MODE d DATA_ATTRIBUTES_NAME Demo_directory }
Das Feld PATH_PATTERN verwenden, um den Pfad anzugeben. Es können dieselben Platzhalterzeichen verwendet werden, wie bei NAME_PATTERN.
Beispielsweise verwendet der folgende Datentyp ein Kriterium auf der Grundlage des Pfads.
DATA_ATTRIBUTES Project_Graphics { DESCRIPTION Grafikdatei zum QS-Projekt. Symbol doppelklicken, um die Grafik anzuzeigen. ICON QSgraphics } DATA_CRITERIA Project_Graphics_Criteria { DATA_ATTRIBUTES_NAME Project_Graphics PATH_PATTERN */projects/QS/graphics/* }
Soll ein Datentyp auf der Grundlage des Dateinamens als auch der Position erstellt werden, muß der Name in dem Wert für das Feld PATH_PATTERN enthalten sein. NAME_PATTERN und PATH_PATTERN können nicht in derselben Kriteriendefinition verwendet werden.
Der im folgenden definierte Datentyp QS_Source_Files gilt für alle Dateien mit dem Namen appn .c, wobei n= 1 bis 9, die sich in den Unterverzeichnissen von */projects/QS befinden.
DATA_ATTRIBUTES QS_Source_Files { ... } DATA_CRITERIA QS_Source_Files_Criteria { PATH_PATTERN */projects/QS/*/app[1-9].c DATA_ATTRIBUTES_NAME QS_Source_Files }
Der folgende Datentyp gilt für alle Dateien im Verzeichnis /doc/project1 mit dem Namen chnn .xxx, wobei n 0 bis 9 ist, und xxx eine beliebige aus drei Zeichen bestehende Dateinamenerweiterung ist.
DATA_ATTRIBUTES ChapterFiles { DESCRIPTION Kapiteldatei für das Projektdokument. ICON chapter ACTIONS Edit,Print } DATA_CRITERIA Chapter_Criteria { PATH_PATTERN /doc/project1/ch[0-9][0-9].??? DATA_ATTRIBUTES_NAME ChapterFiles }
Im Feld MODE die erforderlichen Berechtigungen angeben.
Moduskriterien werden normalerweise in Kombination mit der Datentypzuordnung auf der Grundlage von Namen, Position oder Inhalt verwendet. Sie ermöglichen dem Benutzer, einen Datentyp auf eine Datei oder ein Verzeichnis einzuschränken oder die erforderlichen Lese-, Schreib- und Ausführungsberechtigungen anzugeben.
Das FeldMODEkann die folgenden logischen Operatoren (Tabelle 13-4) und Zeichen (Tabelle 13-5) enthalten:
Tabelle 13-4 Logische Operatoren und Beschreibungen für das Feld MODE
Operator |
Beschriebung |
---|---|
! | |
& | |
| |
Tabelle 13-5 Zeichen und Beschreibungen für das Feld MODE
Zeichen |
Beschreibung |
---|---|
Der Datentyp gilt nur für Dateien |
|
Der Datentyp gilt nur für Verzeichnisse |
|
r |
Die Datei kann von jedem Benutzer gelesen werden |
In die Datei kann von jedem Benutzer geschrieben werden |
|
Die Datei kann von jedem Benutzer ausgeführt werden |
|
Die Datei stellt eine Verbindung dar |
Standardmäßig hat der Modus keinen Einfluß.
Die folgenden Modusfelder schränken den Datentyp wie folgt ein:
f&!w - Schreibgeschützte Dateien
!w - Schreibgeschützte Dateien und Verzeichnisse
f&x - Ausführbare Dateien
f&r&x - Dateien, in die geschrieben werden kann, und die ausführbar sind
x|!w - Dateien, die ausführbar oder schreibgeschützt sind
Die folgende Datentypdefinition erstellt einen Datentyp für schreibgeschützte, nicht ausführbare Dateien, deren Namen der Namenskonvention *.doc entsprechen. Es wird angenommen, daß eine Aktion View für den Datentyp definiert wurde.
DATA_ATTRIBUTES ReadOnlyDocument { ICON read_only DESCRIPTION Dieses Dokument kann nicht beschrieben werden. Ein Doppelklick führt den Editor mit einer schreibgeschützten Kopie der Datei aus.. ACTIONS View } DATA_CRITERIA ReadOnlyDocument_Criteria { NAME_PATTERN *.doc MODE !d&!x&!w DATA_ATTRIBUTES_NAME ReadOnlyDocument }
Im Feld CONTENT wird angegeben, daß die Datentypzuordnung auf der Grundlage des Inhalts der Datei erfolgen soll. Die Datentypzuordnung auf der Grundlage des Inhalts einer Datei kann in Kombination mit der Datentypzuordnung auf der Grundlage von Namen oder Position verwendet werden.
Die Zuordnung kann auf der Grundlage einer Zeichenfolge oder des numerischen Inhalts einer Datei erfolgen. Das erste Byte in der Datei erhält die Zahl 0.
Für die Zuordnung auf der Grundlage einer Zeichenfolge folgende Syntax verwenden:
CONTENT start_byte string zeichenfolge
Für die Zuordnung auf der Grundlage des numerischen Inhalts folgende Syntax verwenden:
CONTENT start_byte byte nummer
CONTENT start_byte short nummer
CONTENT start_byte long nummer
Für die Zuordnung auf der Grundlage des Inhalts eines Verzeichnisses folgende Syntax verwenden:
CONTENT 0 filename "datei_name"
Standard-C-Notation für Oktal- (beginnend mit o) und Hexadezimalzahlen (beginnend mit oX) verwenden.
Die Datentypzuordnung auf der Grundlage des Inhalts beeinträchtigt die Systemleistung. Der Benutzer sollte, wenn möglich, die Datentypzuordnung auf der Grundlage von Namen und Position verwenden.
Beispielsweise gilt der folgende Datentyp Writable_Wingz für alle Dateien mit Schreibberechtigung, die am Anfang der Datei die Zeichenfolge WNGZ enthalten.
DATA_ATTRIBUTES Writable_Wingz { ... } DATA_CRITERIA Writable_Wingz_Criteria { CONTENT 0 string WNGZ MODE w&!d DATA_ATTRIBUTES_NAME Writable_Wingz }
Es kann ein Datentyp mit mehreren unabhängigen Kriterien erstellt werden, d.h. ein Datentyp, dem die Datei zugeordnet wird, wenn sie einem (oder beiden) Kriterien entspricht.
Die Definition DATA_ATTRIBUTES für den Datentyp erstellen.
Eine Definition DATA_CRITERIA für jedes Kriterium erstellen.
Das Feld DATA_ATTRIBUTES_NAME verwenden, um jedes Kriterium mit derselben Definition DATA_ATTRIBUTES zu verbinden.
Beispielsweise erstellen die folgenden Definitionen den Datentyp Mif . Die Datentypzuordnung erfolgt auf der Grundlage von Namen oder Inhalt.
DATA_ATTRIBUTES Mif { ICON Frame ACTION_LIST Open,Print } DATA_CRITERIA Mif_Name_Criteria { DATA_ATTRIBUTES_NAME Mif NAME_PATTERN *.mif } DATA_CRITERIA Mif_Content_Criteria { DATA_ATTRIBUTES_NAME Mif CONTENT 1 zeichenfolge MIFFile }