[Pmwiki-users] Re: can pmwiki handle hierarchical content?

Stefan Candea stefan
Mon Oct 18 14:21:17 CDT 2004


> True, but this restriction would mean that we have to know in advance
> if a particular page name is going to refer to a "directory/group"
> or "file/pagecontent".  I.e., if Linux.Hardware starts out as a simple
> page
> containing a list of popular hardware, and someone later decides that it
> needs to be refactored into Linux.Hardware.SoundCards,
> Linux.Hardware.Printers,
> etc., then there are a *lot* of links that have to be rewritten to make
> this happen.

I believe that similar page names and group names can coexist.  Thus no
need to know in advance.  As it is today in PmWiki.  However, even with
current version, a page called LinuxHardware can evolve into a
LinuxHardware/SoundCards and a LinuxHardware/Printers page.  In current
version this happens in root (if it was in a group it would already have
started to become pretty ugly), however, the level should be irrelevant.

>>> Let's suppose that I'm in the page Linux.Hardware.  Now I want to
>>> link to the page Linux.Hardware.SoundCards.  What markup do I use to
do >>> this?  [[SoundCards]] won't work, because that would be
>>> Linux.SoundCards (i.e.,
>>> "[[A]] should refer only to pages within the group").
>>
>> * To link to Linux.Hardware.SoundCards we would have to use
>> [[Hardware/SoundCards]] (i.e. in current context/group subgroup
>> Hardware,
>> page SoundCards) and this, even if our current page is called "Hardware"
>
> This is likely to annoy authors, that moving from Hardware to any of
> its subpages requires that 'Hardware' be repeated in each link.
> Especially
> if the page's name is on the longish side.  There needs to be a shortcut.
>

Is it any different today?  Let's recap: We have a page called
LinuxHardware and (using current version) we want to link to
LinuxHardware/SoundCards (by creating new group), so LinuxHardware repeats
in all links as well.

> How does someone link from Linux.Hardware to Hardware.PowerTools?
> We can't use [[Hardware/PowerTools]] because that would result in
> Linux.Hardware.PowerTools.

First we need some 'root' referencing.

Similar to file system notation this becomes: [[/Hardware/PowerTools]]

>
> How does someone link from Linux.Hardware.SoundCards back to
> Linux.Software?
> We can't use [[Linux/Software]] because that would result in
> Linux.Hardware.Linux.Software.

Indeed, we need to relate to the root for absolute path: [[/Linux/Software]]

To implement 'root' referencing (given technical constraints) we could use
the root WikiPage (e.g. PmWiki/..), '/' or something generic like root/..

> Again, there are obvious (to some) answers to these questions--I'm just
> walking through the whole process one or two steps at a time to make
> sure all of the bases get covered.  Have patience.  :-)
>
> Pm
>

--
Stefan





More information about the pmwiki-users mailing list