Wikisoba project/Extended GIFT syntax

From Wikimedia UK
Jump to navigation Jump to search
This page is kept as an archival reference.
If you want to raise a point about it, please start a discussion thread on the community forum.

This is a proposal for extending the GIFT syntax dialect, in conjunction with Quizipedia and the Wikisoba tool. The assumption is, in line with the Quizipedia proposal to use a custom wiki as repository for quiz code, all text is taken to be wikitext, as the default,

Sections in GIFT[edit | edit source]

These are to be defined by the use of a template, say {{giftdec}}. It would render as a level-2 heading according to a first parameter, sectionname= . A second parameter would be a declaration. There are three cases:

  • (1) Declaration = null

Then the wikitext in the section is rendered as such by the tool, with the standard skin.

  • (2) Declaration = an interwiki code

Such as en:w or de:s, for example.

  • (3) Declaration = a wiki domain name

Such as

In cases (2) and (3), the page sections pulled in by the Wikisoba tool for the section would be for the indicated wikis.

Wikisoba pages, wiki page sections[edit | edit source]

With basic syntax [[pagename]], the indicated wiki page sections would be as [[pagename#3]] for example, the third section on the wiki page at for example, where all sections are treated as of the same level (i.e. the numbering is of a flattened-out table of contents).

Rendering of images: Render locally-hosted media files from wikis. The current Wikisoba implementation seems to expect files from Commons (via the API?)

NB: Quiz integrity From a practical point to view, to avoid issues of vandalism, updated information, and changes to section structure, “pagename” here should typically be taken as a permalink.

GIFT syntax[edit | edit source]

Use bullets * for separators in sections of type (2) and (3), i.e. make the syntax into a bulleted list of items. These are of “page” type and “question” type.

For questions, the basic syntax is like {=correct answer ~incorrect answer}. It is assumed that a well-formed question has at least one correct answer (=). There are three possibities:

  • (A) Radio button type with one correct and at least one incorrect answer
  • (B) Checkbox type with at least two correct answers and at least one incorrect answer
  • (C) Write-in type with no incorrect answers given.

These types need separate treatment. The type should probably be indicated in the preceding name, such as

::Question name (radio button)::

For type C, a field should be provided, and the answer accepted only if it is on the list (not case-sensitive, though).

Responses, if any, i.e. the red and green comments returned with an answer, should be treated in a case-by-case fashion. The syntax is as in {=correct answer#Response1 ~incorrect answer#Response2}.

Categories[edit | edit source]

It would be very useful to use standard wiki categories on Quizipedia. They should be rendered perhaps in two places:

  • (i) on a standard initial page for any quiz;
  • (ii) on a standard quiz exit page.