[[!meta robots="noindex, follow"]]
Le wiki utilise un concept de spécification de page « PageSpec » afin de
choisir un ensemble de pages. Par exemple il est possible de choisir les
pages verrouillées, les pages dont vous recevez par courriel les
modifications ou des pages à regrouper pour faire blog. Une spécification
correspond à un ensemble de pages.

La spécification la plus simple est la liste de pages. Par exemple,
l'expression suivante correspond à l'une ou l'autre des trois pages
listées :

	foo or bar or baz

La plupart du temps, vous voulez trouver les pages qui contiennent une
expression particulière dans leur nom. Cela s'obtient en utilisant un motif
(« glob pattern »). Le métacaractère « `*` » correspond à n'importe quelle
partie du nom de la page et le métacaractère « `?` » à n'importe quelle
lettre. Ainsi, l'expression suivante correspond à toutes les pages traitant
de musique et à n'importe quelle sous-page [[SubPage]] de la *SandBox*, mais
pas à la *SandBox* elle-même :

	*musique* or SandBox/*

Vous pouvez également préfixer un élément avec « `!` » pour ignorer les
pages correspondantes. Ainsi pour trouver toutes les pages sauf les pages
Discussion et la page *SandBox* :

	* and !SandBox and !*/Discussion

Des contraintes plus élaborées peuvent être ajoutées avec les fonctions
suivantes :

* "`glob(someglob)`" - matches pages and other files that match the given
  glob.  Just writing the glob by itself is actually a shorthand for this
  function.
* "`page(glob)`" - like `glob()`, but only matches pages, not other files
* "`link(page)`" - matches only pages that link to a given page (or glob)
* "`tagged(tag)`" - matches pages that are tagged or link to the given tag
  (or tags matched by a glob)
* "`backlink(page)`" - matches only pages that a given page links to
* "`creation_month(month)`" - matches only files created on the given month
  number
* "`creation_day(mday)`" - or day of the month
* "`creation_year(year)`" - or year
* "`created_after(page)`" - matches only files created after the given page
  was created
* "`created_before(page)`" - matches only files created before the given
  page was created
* "`internal(glob)`" - like `glob()`, but matches even internal-use pages
  that globs do not usually match.
* "`title(glob)`", "`author(glob)`", "`authorurl(glob)`", "`license(glob)`",
  "`copyright(glob)`", "`guid(glob)`"
  - match pages that have the given metadata, matching the specified glob.
* "`user(username)`" - tests whether a modification is being made by a user
  with the specified username. If openid is enabled, an openid can also be
  put here. Glob patterns can be used in the username. For example, to match
  all openid users, use `user(*://*)`
* "`admin()`" - tests whether a modification is being made by one of the
  wiki admins.
* "`ip(address)`" - tests whether a modification is being made from the
  specified IP address. Glob patterns can be used in the address. For
  example, `ip(127.0.0.*)`
* "`comment(glob)`" - matches comments to a page matching the glob.
* "`comment_pending(glob)`" - matches unmoderated, pending comments.
* "`postcomment(glob)`" - matches only when comments are being posted to a
  page matching the specified glob

Par exemple, pour trouver toutes les pages d'un blog qui ont un lien vers la
page traitant de musique et qui ont été créées en 2005 :

	blog/* and link(musique) and creation_year(2005)

Veuillez noter l'utilisation du « and » dans l'exemple ci-dessus. Seules les
pages dont les trois conditions sont vraies seront trouvées. Utilisez
« and » pour ce genre d'expression combinée. « or » est utilisé quand une
seule des trois conditions est suffisante. Veuillez noter que « index and
SandBox » n'a pas de sens puisqu'aucune page ne peut correspondre aux deux
expressions.

If you want to include only one level of subpages, you can use

    blog/* and !blog/*/*

On peut créer des expressions plus complexes à l'aide de parenthèses. Par
exemple, pour trouver les pages d'un blog possédantl'une ou l'autre
étiquette, on utiliserait :

	blog/* and (tagged(foo) or tagged(bar))

Veuillez noter que le nom d'une page dans une spécification de page
correspond au nom absolu du fichier dans le wiki. Ainsi une expression
« foo » utilisée sur une page « a/b » ne correspondra pas à une page nommée
« a/foo » ni à une page « a/b/foo ». Pour une correspondance relative au
répertoire de la page contenant la spécification, vous pouvez utiliser
« ./ ». Par exemple, « ./foo » sur la page « a/b » correspondra à la page
« a/foo ».

To indicate the name of the page the PageSpec is used in, you can use a
single dot. For example, `link(.)` matches all the pages linking to the page
containing the PageSpec.
