Definitionen för DATA_CRITERIA
anger de villkor som används för att tilldela en fil eller katalog en datatyp.
Du kan använda villkoren som definieras i Tabell 13-3 för objekttypsbestämning.
Tabell 13-3 DATA_CRITERIA Villkor och beskrivningar
Du kan använda fler än ett villkor för en datatyp. Du bör däremot inte använda villkoren NAME_PATTERN eller PATH_PATTERN i samma datatyp.
Använd fältet NAME_PATTERN för att ange namngivningskrav. Fältvärdet kan innehålla följande jokertecken:
? - matchar endast ett tecken
* - matchar noll eller flera tecken i följd
[cc...] - matchar vilket som helst av tecknen (c) inom hakparenteser
[c-c] - matchar vilket som helst av tecknen i intervallet c till c
Följande datatypsdefinition skapar en datatyp baserat på filnamnet. Filnamnet måste börja med QS och sluta med .doc.
DATA_ATTRIBUTES QS_Doc { DESCRIPTION Den här filen innehåller ett dokument för QS-\ projektet. ICON Word_Doc ACTIONS Open } DATA_CRITERIA QS_Doc_Criteria { NAME_PATTERN QS*.doc DATA_ATTRIBUTES_NAME QS_Doc }
Följande definition skapar en datatyp för kataloger med namnet Demo_n, där n kan motsvaras av ett tal mellan 0 och 9.
DATA_ATTRIBUTES Demo_directory { DESCRIPTION Det här är en katalog. Dubbelklicka för att öppna den. ICON Demo ACTIONS OpenInPlace,OpenNewView } DATA_CRITERIA Demo_directory_criteria { NAME_PATTERN Demo_[0-9] MODE d DATA_ATTRIBUTES_NAME Demo_directory }
Använd fältet PATH_PATTERN för att ange sökväg. Du kan använda samma jokertecken som med NAME_PATTERN.
Följande datatyp använder ett villkor baserat på sökvägen.
DATA_ATTRIBUTES Project_Graphics { DESCRIPTION Grafikfil för QS-projektet. Dubbelklicka på \ ikonen för att visa bilden. ICON QSgraphics } DATA_CRITERIA Project_Graphics_Criteria { DATA_ATTRIBUTES_NAME Project_Graphics PATH_PATTERN */projects/QS/graphics/* }
Om du vill skapa en datatyp baserat på både filnamn och sökväg, tar du med namnet i värdet PATH_PATTERN. Du kan inte använda både NAME_PATTERN och PATH_PATTERN i samma villkorsdefinition.
Datatypen QS_Source_Files som definieras nedan gäller för alla filer med namnet appn.c (där n ligger inom intervallet 1 till 9) som finns i underkataloger till */projects/QS.
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 }
Följande datatyp gäller för alla filer i katalogen /doc/project1 med namnet chnn.xxx, där n är ett tal mellan 0 och 9 och xxx är ett valfritt filnamnssuffix som är tre tecken långt.
DATA_ATTRIBUTES ChapterFiles { DESCRIPTION Kapitelfil för projektdokumentet. ICON chapter ACTIONS Edit,Print } DATA_CRITERIA Chapter_Criteria { PATH_PATTERN /doc/project1/ch[0-9][0-9].??? DATA_ATTRIBUTES_NAME ChapterFiles }
Använd fältet MODE för att ange vilka behörigheter som krävs.
Lägesvillkor används normalt i kombination med namnbaserade, sökvägsbaserade eller innehållsbaserade datatyper. Med dessa kan du begränsa en datatyp till en fil eller katalog, eller ange om det krävs behörighet för att läsa, skriva eller använda.
Fältet MODE kan innehålla logiska operatorer (Tabell 13-4) och tecken (Tabell 13-5).
Tabell 13-4 MODE Logiska operatorer
Operator |
Beskrivning |
---|---|
! | |
& | |
| |
Tabell 13-5 MODE Fälttecken och beskrivningar
Tecken |
Beskrivning |
---|---|
Datatypen gäller bara filer |
|
Datatypen gäller bara kataloger |
|
r |
Filen kan läsas av alla användare |
Filen kan ändras av alla användare. |
|
Filen kan köras av alla användare. |
|
Filen är en länk |
Standardinställningen för ett behörighetsläge är att läget inte spelar någon roll.
Följande fält begränsar datatypen enligt följande:
f&!w - skrivskyddade filer
!w - skrivskyddade filer och kataloger
f&x - körbara filer
f&r&x - filer som både kan ändras och köras
x|!w - filer som är körbara eller skrivskyddade
Följande datatypsdefinition skapar en datatyp för skrivskyddade, icke körbara filer vilkas filnamn följer namnkonventionen *.doc. Den förutsätter att det redan har skapats en visningsåtgärd för datatypen.
DATA_ATTRIBUTES ReadOnlyDocument { ICON read_only DESCRIPTION Det här dokumentet är skrivskyddat. Dubbel-\ klicka för att köra redigeraren med en \ skrivskyddad kopia av filen. ACTIONS View } DATA_CRITERIA ReadOnlyDocument_Criteria { NAME_PATTERN *.doc MODE !d&!x&!w DATA_ATTRIBUTES_NAME ReadOnlyDocument }
Använd fältet CONTENT för att ange datatyp baserat på filens innehåll. Innehållsbaserad datatypsbestämning kan användas i kombination med namn- eller platsbaserad datatypsbestämning.
Typbestämningen kan baseras på texten i filen eller på dess numeriska innehåll. Numret på filens första byte är 0.
För numeriskt innehåll använder du syntaxen:
CONTENT startbyte byte tal CONTENT startbyte short tal CONTENT startbyte long tal
För mappinnehåll använder du syntaxen:
CONTENT 0 filename "filnamn"
Använd den vanliga C-beteckningen för oktala (inledande o) och hexadecimala (inledande oX) tal.
Om du använder en innehållsbaserad datatyp kan systemets prestanda sjunka. Använd därför namn- eller sökvägsbaserade datatyper när det är möjligt.
Datatypen Writable_Wingz gäller för alla filer med skrivbehörighet som innehåller strängen WNGZ i början av filen.
DATA_ATTRIBUTES Writable_Wingz { ... } DATA_CRITERIA Writable_Wingz_Criteria { CONTENT 0 string WNGZ MODE w&!d DATA_ATTRIBUTES_NAME Writable_Wingz }
Du kan skapa en datatyp med flera oberoende villkor, dvs filen tilldelas datatypen om den motsvarar minst ett av villkoren.
Skapa en DATA_ATTRIBUTES
-definition för datatypen.
Skapa en DATA_CRITERIA
-definition för varje villkor.
Använd fältet DATA_ATTRIBUTES_NAME för att ansluta alla villkor till samma DATA_ATTRIBUTES
-definition.
Följande definitioner skapar datatypen Mif. Typen baseras på namn eller innehåll.
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 string MIFFile }