DocWiki Topic Mapping
In documentation, structure and organization are imperative. The most basic element of any organizational scheme is the parent-child relationship, which enables writers to create topic maps and readers to find answers to their questions quickly.
Most Wikis are spineless, non-hierachical collections of Web pages whose only forms of organization are quickly jotted notes, links to other pages, and the ability to create TopicIndexes dynamically. In full-featured Wikis, like FlexWiki, a TopicIndex can sometimes be filtered by one or more TopicProperties.
Workarounds that do not diminish the freeform editorial capabilities of the classic wiki include, but are probably not limited to:
- Enhanced TopicProperty Filtering -- Organizational information is metadata. The statement, “TopicC is a child of TopicB and a grandchild of TopicA“, can (theoretically) be described in WikiText as:
- WikiText in TopicC -- Parent: TopicB
- In TopicB -- Parent: TopicA and Child: TopicC
- In TopicA -- Child: TopicB
- Hardcoded Topic/Site Maps -- A site map is a Table of Contents-like map that cannot be edited and which usually occupies the left frame in a Wiki Homepage. Excellent examples include:
PInvoke is a FlexWiki implementation. Nice work, Adam! Thanks to DuncanMa for the link to the PInvoke Wiki.
PINVOKE.NET attempts to address the difficulty of calling Win32 or other unmanaged APIs in managed code (languages such as C# and VB .NET). Manually defining and using PInvoke signatures (also known as Declare statements in VB .NET) is an error-prone process that can introduce extremely subtle bugs.