Uno/Meta/Organization

From Apache OpenOffice Wiki
< Uno
Jump to: navigation, search

To ease usage of the OOo wiki, some rules should be helpful, to achieve

  • that URLs of interest can be guessed,
  • that an author knows where to locate his/her page and how to categorize it,
  • that ideally no redundant information (e.g. lists of something need to maintained).

For filling organizational pages, the DPL (Dynamic Page List) extension comes at hand. Uno organizational pages are populated with the help of DPL.

Categorizing Pages

Every page is

  • either an overview page, providing the logical (and partly locational) coherence (e.g. project pages) while also providing links to subtopics, or
  • a container page, basically listing articles of a particular type touching a set of particular topics, or
  • a content page, describing something in details.

The Uno content pages are organized in a way, assuming that every article

  • has exactly one type (e.g. an article may be an tutorial, or a specification),
  • touches one or more topics (e.g. Java or C++ or Development), and
  • belongs to exactly one project respectively module (e.g. Binary Uno or Java Uno).

Types

Currently used types are:

  • Spec - Specification.
  • Impl - Description of an Implementation.
  • Test - Description of a Test for an Implemenation.
  • Effort - Something which is in the works.
  • Article - An informative article about a particular topic.
  • Tutorial - A Tutorial explaining something.
  • Analysis - An Analysis.
  • Module - Description of a source code module.
  • Project - Entry page of an accepted OOo project.
  • Proposal - A page proposing a change.
  • Meta - A page describing a type or a topic.
  • Term - A particular term.

Topics

Currently used topics are:

  • Cpp - Pages related to C++.
  • Java - Pages related to Java.
  • Development
  • CLI
  • Uno
  • Uno:<impl> - e.g. Uno:Java for Java Uno or Uno:Cpp for C++ Uno.

Organizing Pages

Pages need to be distributed to where they belong. AFAIK Wikipedia uses a flat structure, basically putting all pages side by side. As OOo is already partitioned by its accepted projects, IMHO pages should be distributed to their projects.

Also, pages have exactly one type. Natural approach again IMHO is, to differentiate pages by their type and to distribute them into appropriate folders. E.g. into "Specifications" or "Modules". Natural choice for organizing pages is the wiki subpage feature. That means that the organization of the OOo wiki in general (at least wrt the accepted projects) should follow the following approach:

  • <Project>
  • <Project>/Modules
  • <Project>/Modules/<module a>
  • <Project>/Modules/<module b>
  • <Project>/Specifications
  • <Project>/Specifications/<spec. a>
  • ...

Composing Tutorials

Tutorials often provide code snippets to teach a particular thing of interest. The Uno tutorials separate these snippets into dedicated pages which than get included by the tutorial. This allows to show the snippet not only in multiple tutorials, but to also make it available as example usages e.g. of a particular API.

Container Pages

Container pages are created with help of DPL. E.g.

 <DPL>category=Uno:Cpp
 category=Module</DPL>

Examples

  • Uno - Project page for the UDK accepted project.
  • Uno/Modules - Overview page listing all modules belonging to Uno.
  • Uno/Specifications - Overview page listing all specifications belonging to Uno.

Binary Uno

Cpp Uno

Java Uno

Python Uno

  • Uno/PyUno - Sub project for the Uno Python language binding.
Personal tools