Til at angive et udvalg af sider, såsom låste sider, sider hvis ændringer du vil email-abonnere på, eller sider at samle til en blog, anvender wikien et PageSpec. Dette er et udtryk som modsvarer et bestemt udvalg af sider.
Det simpleste PageSpec er blot en opremsning af sider med "or" imellem ("or" betyder "eller" på engelsk). Eksempelvis modsvarer dette enhver af de tre nævnte sider:
foo or bar or baz
Mere hyppigt har du dog brug for at at at modsvare sider med noget tilfælles
i deres navne. Dette kan du udtrykke med et "glob"-mønster. "*
" erstatter
enhver del af sidenavnet, og "?
" ethvert enkeltbogstav i sidenavnet. Så dette
modsvarer alle sider om musik, og alle ?UnderSider til sandkassen,
men modsvarer ikke selve sandkasse-siden:
*musik* or SandBox/*
Du kan også angive "!
" foran et emne for at undgå sider som modsvarer
det. Så for at modsvare alle sider undtagen diskussionssider og sandkassen:
* and !SandBox and !*/Discussion
Mere nuancerede begrænsninger kan udtrykkes med disse funktioner:
- "
glob(nogetglob)
" - modsvarer sider og andre filer som modsvarer det givne glob. Blot at skrive glob'et alene er faktisk en genvej til denne funktion. - "
page(glob)
" - lissomglob()
, men modsvarer kun sider, ikke andre filer - "
link(side)
" - modsvarer kun sider som henviser til en given side (eller glob) - "
tagged(mærkat)
" - modsvarer sider som er opmærket eller henviser til den angivne mærkat (eller mærkater modsvaret af et glob) - "
backlink(side)
" - modsvarer kun sider som en given side henviser til - "
creation_month(måned)
" - modsvarer kun filer oprettet det givne månedsnummer - "
creation_day(månedsdag)
" - eller dag på måneden - "
creation_year(år)
" - eller år - "
created_after(side)
" - modsvarer kun filer oprettet efter den givne side blev oprettet - "
created_before(side)
" - modsvarer kun filer oprettet før den givne side blev oprettet - "
internal(glob)
" - lissomglob()
, men modsvarer også internt anvendte sider som glob normalt ikke modsvarer. - "
title(glob)
", "author(glob)
", "authorurl(glob)
", "license(glob)
", "copyright(glob)
", "guid(glob)
"- modsvarer sider med de givne metadata, som modsvarer det angivne glob.
- "
user(brugernavn)
" - tester hvorvidt en ændring foretages af en bruger med det angivne brugernavn. Hvis openid er aktiveret, kan en openid også indsættes her. Glob-mønstre kan anvendes i brugernavnet. Som eksempel kan alle openid brugere modsvares ved at anvendeuser(*://*)
- "
admin()
" - tester hvorvidt en ændring bliver foretaget af en af wiki-administratorerne. - "
ip(adresse)
" - tester hvorvidt en ændring sker fra den angivne IP-adresse. Glob-mønstre kan anvendes i adressen. Som eksempelip(127.0.0.*)
- "
comment(glob)
" - modsvarer kommentarer til en side der modsvarer glob'et. - "
comment_pending(glob)
" - modsvarer ikke-tilbageholdte, afventende kommentarer. - "
postcomment(glob)
" - modsvarer kun når kommentarer sendes til en side som modsvarer det angivne glob
For eksempelvis at modsvare alle sider i en blog som henviser til en side om musik og som blev skrevet i 2005:
blog/* and link(musik) and creation_year(2005)
Bemærk brugen af "and" i eksemplet ovenfor ("and" betyder "og" på engelsk), som betyder at kun sider der modsvarer hvert af de tre udtryk modsvarer det hele. Brug "and" når du vil kombinere udtryk på den måde; "or" når det er nok at én side modsvarer et udtryk. Bemærk at det ikke giver mening at sige "index and SandBox", da ingen sider kan modsvare begge udtryk.
Hvis du vil medtage blot eet niveau undersider, kan du bruge
blog/* and !blog/*/*
Mere komplekse udtryk kan dannes ved at gruppere med paranteser. Eksempelvis modsvarer dette sider i en blog som er mærket af med en af to mærkater:
blog/* and (tagged(foo) or tagged(bar))
Bemærk at PageSpecs for sidenavne modsvares af de absolutte filnavne for siderne i wikien, så et pagespec "foo" brugt på siden "a/b" vil ikke modsvare siderne navngivet "a/foo" eller "a/b/foo". For at modsvare relativt til samme mappe som siden der indeholder pagespec'et kan du bruge "./". Eksempelvis modsvarer "./foo" på siden "a/b" siden "a/foo".