2.9 KiB
pWiki Path
XXX a Wiki is a set of pages, mostly top level pages, mosty titled in WikiWord style, pWiki follows this culture but does not restrict either page nesting or title formatting. But following this style is recommended.
XXX write a set of recommendations...
Basic terminology
Path
One or more names separated by "/" that identifies a view.
We call the last name in the path sequence a title.
We call the sub-path without the title a basedir or simply dir.
In pWiki, there is no distinction between a page and a directory, thus we do not use the term, instead, we may use the term sub-page
View
A path that resolves to a page that may or may not be at that specific
path.
(see: Page acquisiton below)
Page
A set of data associated with a path.
A page is identified by it's path, but this does not require that every sub-path of that path must exist.
XXX a word about bootstrap pages that can't be deleted...
WikiWord
XXX
Page acquisition
XXX motivation...
Acquisition process:
- if path matches a specific page, target page is found
- if path does not match a page:
- if title matches a page in the parent path, page is found
- repeat until we either have a match or reach root (empty basedir)
- if no match is found, check if title exists in [Templates] in basedir
- if no match is found, check if title exists in [/System]
- if no match is found, repeat process for
EmptyPageinstead of title
Example:
For path Path/To/Page the following paths are checked in order
and the first matching page is returned:
Path/To/PagePath/PagePagePath/To/Templates/Page(Check in Templates)Path/Templates/PageTemplates/PageSystem/Page(Check in/System, mote that only root/Systemis checked)Path/To/EmptyPage(CheckEmptyPage)Path/EmptyPageEmptyPagePath/To/Templates/EmptyPagePath/Templates/EmptyPageTemplates/EmptyPage(This is guaranteed to exist)
Exceptions:
System/settingsis global and can not be overloaded. This is done for security reasons.
Default pages
XXX
Templates/EmptyPageTemplates/EmptyToDoTemplates/EmptyOutline
Relative and absolute paths (".", ".." and "/")
XXX
Path patterns ("*" and "**")
XXX
Path actions
XXX path elements that perform actions on pages but do not actually correspond to actual pages.
Path variables
$NOW
XXX
Also see the \@now() macro: [Doc/Macros].
WikiWord
XXX not actualy part of the path spec but a way (culture) to define paths in pages + automatic link creation.