CZ:Article structure

From Citizendium
Revision as of 12:53, 17 April 2008 by imported>Chris Day
Jump to navigation Jump to search

An article (or cluster, to give it its technical name on Citizendium) consists of a set of MediaWiki pages. Almost all of these pages are in the main 'article' namespace.

There is one main page, where the main text of article is to be found, and a number of subpages which are associated with the article, and logically are parts of it. These subpages contain ancillary material which we don't wish to clutter up the main article page with, such as lengthy bibliographies, advanced material which will only be of use to specialists, etc. A header on ever page which is part of a cluster allows easy navigation among all the (sub)pages which are part of the cluster.


A subpage is basically just a ordinary MediaWiki page with a "/" in its title. Subpages, which have names of the form "Foo/Bar", are all associated with a particular top-level page, which is the one with the name consisting of the part of the subpage's name before the "/" (in this example, "Foo"). (And of course the process is recursive, so that "Foo/Bar/Zap" is a subpage of "Foo/Bar".)

Other than being related to a particular top-level page, there is almost no real difference in how they are actually handled by MediaWiki. (See this page for more details. In fact, depending on how MediaWiki is configured, and which namespace they are in, the MediaWiki software may not even recognize subpages at all in that namespace.)

On Wikipedia, sub-pages are turned off in their main 'article' namespace. As we developed the subpage structure of Citizendium, it became clear that for technical reasons which need not concern us here, it would not work without subpages being enabled in the main namespace.

One advantage Wikipedia gains by having subpages turned off in the main article namespace is that it makes it easier to use a backslash in an article name, where that would be natural (such as Apollo Command/Service Module). In Citizendium, to make our current subpage mechanisms work, we have to make such page names into redirects; for example, GNU/Linux.

For more about subpages, including a list of the currently defined standard subpages, see CZ:Subpages.


There is one subpage which is not like the others; it's called the metadata, and it contains material which is not displayed to users, but rather used internally to Citizendium, to contain information about the article (hence its name).

Metadata contents

Here is a list of the fields in the metadata:

Here's a copy of the blank Article Checklist template and it's instructions that you can copy and paste onto the talk page of articles. Once you have filled out the checklist, delete the instructions!

{{#switch: {{{info}}}

<!--general article properties-->
|       pagename = 
|        variant = 

<!--Required for checklist-->

|            abc =  
|      cat_check = 
|         status = currently no status
|    underlinked = 
|        cleanup = 
|             by = 
|           cat1 = 
|           cat2 = 
|           cat3 = 
|           sub1 = 
|           sub2 = 
|           sub3 = 
|           tab1 = 
|           tab2 = 
|           tab3 = 

<!--required for ToApprove template-->
|    article url = 
|    subpage url = 
|        cluster = 
|            now = 
|     ToA editor = 
|    ToA editor2 = 
|    ToA editor3 = 
|           date = 

<!--required for Approved template-->
|       A editor = 
|      A editor2 = 
|      A editor3 = 


In brief:

  • pagename: must contain the correct name of the article.
  • variant: records the dialect of English which the article is written in.

  • abc: means the form of the title for alphabetization, e.g. "Doherty, John" or "Orient, The". Please think this one through.
  • cat_check: put "yes" if you want someone to check over the categories.
  • status: 0 for approved articles; 1 developed, 2 developing, 3 stub, 4 external
  • underlinked: put "yes" if not enough other articles link to it (click "What links here" at left)
  • cleanup: put "yes" if basic cleanup has been done.
  • by: obsolete; leave blank.
  • cat1, cat2 and cat3: workgroups; fill in numerical order.
  • sub1, sub2 and sub3: sub-workgroups; fill in numerical order.
  • tab1, tab2 and tab3: per-article subpages; fill in numerical order.

  • article url: a URL link to the version to approve.
  • subpage url: a URL link to the version of a subpage to approve.
  • cluster: blank unless the whole cluster needs to be approved.
  • now: the date and time when the nomination was made.
  • ToA editor, ToA editor2, ToA editor3: name of the editor(s) who nominated the article for approval; fill in numerical order.
  • date: deadline for comments (format yyyymmdd).

  • A editor, A editor2, A editor3: copied from ToA editor etc when Approval is completed.

A detailed explanation for each of the field is available here.

Metadata implementation

The current instantiation (briefly) is that the metdata is a template (i.e. a piece of MediaWiki markup which is transcluded ( i.e. copied over) into every page which uses the template). Any page that needs access to any information which is kept in the metadata simply transcludes the template which holds the metadata. The metadata is kept (because it's a template) in the Template: namespace (which is where all templates normally live); specifically, for article "Foo", the metadata is at "Template:Foo/Metadata".

Subpages implementation

Every (sub)page which is part of an article contains at the top a call to the {{subpages}} template. That template generates the navigation header at the top of the page, etc. See CZ:Using the Subpages template for more information.

See also