Contribute to GxPlex: Difference between revisions
From GxPlex
Gxplex admin (talk | contribs) Update contribution instructions to reflect PageForms-based workflow |
gxplex>GxPlexBot How to Contribute page |
||
| Line 1: | Line 1: | ||
== Contribute | == How to Contribute == | ||
This page explains how GxPlex is structured and how to add or edit content. | |||
=== | === Wiki structure === | ||
GxPlex uses four types of pages: | |||
; [[Help:Document pages|Document: pages]] | |||
: Represent source documents — regulatory texts, guidelines, legal acts. Each Document page contains a structured infobox (Document Information) with metadata, and a table of all linked Reference pages. Identified by their reference code, e.g. <code>Document:ICH ICH E6 Guideline R3 (2025)</code>. | |||
; [[Help:Reference pages|Reference: pages]] | |||
: Represent individual text passages or excerpts from a Document. Each Reference page is linked to exactly one Document page. The Document infobox is shown automatically via transclusion. The Reference Details infobox shows scope, language, module/unit and tags. The original text appears under <code>== Content ==</code>. | |||
=== | ; [[Glossary|Glossary: pages]] | ||
: One page per keyword (TAG-ID, e.g. <code>Glossary:TAG-00001-Med-rzn</code>). Each glossary page shows translations in EN/FR/DE and a live list of all Reference pages using this keyword. | |||
; Regular wiki pages | |||
: Free-form pages for navigation, documentation or project information. Examples: [[Glossary]], [[Table of Content]], [[GxPlex:New page]]. | |||
=== Namespaces === | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! Namespace !! Prefix !! Purpose | ||
|- | |- | ||
| | | Document: || <code>Document:</code> || Source document catalog | ||
|- | |- | ||
| | | Reference: || <code>Reference:</code> || Text passages and excerpts | ||
|- | |- | ||
| | | Glossary: || <code>Glossary:</code> || Keyword definitions (TAG-IDs) | ||
|- | |- | ||
| | | (Main) || (none) || Navigation, help, project pages | ||
|- | |- | ||
| | | Template: || <code>Template:</code> || Reusable components (DocumentBox, ReferenceData etc.) | ||
|} | |} | ||
=== | === Creating new pages === | ||
Use [[GxPlex:New page]] to create a new Document or Reference page using the built-in form. Fields have dropdowns where applicable (Scope, Language, Status, Document type). | |||
==== New Reference page ==== | |||
# Go to [[GxPlex:New page]] → ''Neue Referenz-Seite erstellen'' | |||
# Enter the page name — format: <code>Reference:<document-reference> <document-part></code> | |||
## Example: <code>Reference:ICH ICH E6 Guideline R3 (2025) Appendix B.4</code> | |||
# Fill in the fields: | |||
#* '''Has Document''' — link to the Document: page (autocomplete) | |||
#* '''Module / Unit''' — from the [[Table of Content]] (e.g. Module 1, Unit 1.1.1) | |||
#* '''Scope''' — dropdown: G, HM, MD, IVD, NIS, INS, Other | |||
#* '''Document part''' — section, article or paragraph reference | |||
#* '''Language''' — language of the original text | |||
#* '''Tags''' — TAG-IDs from the [[Glossary]], separated by <code>++</code><br/>Example: <code>TAG-00001-Med-rzn ++ TAG-00003-Adv-cht</code> | |||
#* '''Content''' — the original text passage | |||
# Save | |||
==== New Document page ==== | |||
# Go to [[GxPlex:New page]] → ''Neue Dokument-Seite erstellen'' | |||
# Enter the page name — format: <code>Document:<reference-code></code> | |||
# Fill in metadata: reference, validity area, scope, document name, version, status, document type, language, description, official link, restricted access | |||
# Save | |||
=== Editing existing pages === | |||
=== | Click '''Edit''' on any Document or Reference page — the form opens with all current values pre-filled. After saving, an administrator must approve the revision before it becomes publicly visible (see [[Special:ApprovedRevs]]). | ||
=== Tags and the Glossary === | |||
Tags connect Reference pages to keywords in the [[Glossary]]. | |||
# Look up the correct TAG-ID in [[Glossary]] | |||
# Copy the TAG-ID into the Tags field (e.g. <code>TAG-00001-Med-rzn</code>) | |||
# Separate multiple tags with <code> ++ </code> | |||
# '''New tag not in the Glossary?''' A notice appears when editing a Reference page reminding you to check. Add the new entry to the <code>Glossary-Keywords</code> sheet in the Excel source file and notify an administrator — or create the <code>Glossary:TAG-XXXXX-...</code> page manually following the existing format. | |||
=== Wikitext markup quick reference === | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! Element !! Markup !! Example | ||
|- | |||
| Section heading || <code>== Heading ==</code> || == My Section == | |||
|- | |||
| Internal link || <code><nowiki>[[Page name]]</nowiki></code> || <nowiki>[[Glossary]]</nowiki> | |||
|- | |||
| Link with label || <code><nowiki>[[Page name|Label]]</nowiki></code> || <nowiki>[[Glossary|Keywords]]</nowiki> | |||
|- | |||
| Bold || <code><nowiki>'''text'''</nowiki></code> || '''bold''' | |||
|- | |||
| Italic || <code><nowiki>''text''</nowiki></code> || ''italic'' | |||
|- | |||
| Wikitable || <code>{| class="wikitable"</code> ... <code>|}</code> || see this table | |||
|- | |||
| SMW store || <code><nowiki>{{#set:|Property=Value}}</nowiki></code> || stores semantic data silently | |||
|- | |- | ||
| | | SMW query || <code><nowiki>{{#ask:[[Property::Value]]|format=table}}</nowiki></code> || dynamic result list | ||
|- | |- | ||
| | | Transclusion || <code><nowiki>{{:Page name}}</nowiki></code> || embeds full content of another page | ||
|- | |- | ||
| | | Code || <code><code>text</code></code> || <code>inline code</code> | ||
|} | |} | ||
=== | === Bulk import (administrators only) === | ||
All Document, Reference and Glossary pages are generated from the Excel source file <code>Databank_GxPlex_v*.xlsx</code>. To update after changes to the Excel file: | |||
# Edit the Excel file (sheets: Document List, References, Glossary-Keywords) | |||
# Run: <code>python generate_wiki_xml.py <excel-file> <output.xml></code> | |||
# This produces 6 XML part files (~400–650 KB each) | |||
# Import each file via [[Special:Import]] → ''Upload file'' | |||
# Existing pages are overwritten; new pages are added automatically | |||
=== Extensions === | |||
{| class="wikitable" | |||
! Extension !! Purpose | |||
|- | |||
| [[mw:Extension:SemanticMediaWiki|SemanticMediaWiki]] || Structured data storage and queries (<code>{{#set:}}</code>, <code>{{#ask:}}</code>) | |||
|- | |||
| [[mw:Extension:PageForms|PageForms]] || Form-based page creation and editing with dropdowns | |||
|- | |||
| [[mw:Extension:ApprovedRevs|ApprovedRevs]] || Revision approval before public visibility | |||
|- | |||
| [[mw:Extension:VoteNY|VoteNY]] || Star rating on pages | |||
|- | |||
| [[mw:Extension:InputBox|InputBox]] || Search input on wiki pages | |||
|- | |||
| [[mw:Extension:ParserFunctions|ParserFunctions]] || Logic in templates (<code>{{#if:}}</code>, <code>{{#switch:}}</code>) | |||
|- | |||
| [[mw:Extension:CategoryTree|CategoryTree]] || Collapsible category trees | |||
|} | |||
Revision as of 16:44, 17 July 2026
How to Contribute
This page explains how GxPlex is structured and how to add or edit content.
Wiki structure
GxPlex uses four types of pages:
- Document: pages
- Represent source documents — regulatory texts, guidelines, legal acts. Each Document page contains a structured infobox (Document Information) with metadata, and a table of all linked Reference pages. Identified by their reference code, e.g.
Document:ICH ICH E6 Guideline R3 (2025).
- Reference: pages
- Represent individual text passages or excerpts from a Document. Each Reference page is linked to exactly one Document page. The Document infobox is shown automatically via transclusion. The Reference Details infobox shows scope, language, module/unit and tags. The original text appears under
== Content ==.
- Glossary: pages
- One page per keyword (TAG-ID, e.g.
Glossary:TAG-00001-Med-rzn). Each glossary page shows translations in EN/FR/DE and a live list of all Reference pages using this keyword.
- Regular wiki pages
- Free-form pages for navigation, documentation or project information. Examples: Glossary, Table of Content, GxPlex:New page.
Namespaces
| Namespace | Prefix | Purpose |
|---|---|---|
| Document: | Document: |
Source document catalog |
| Reference: | Reference: |
Text passages and excerpts |
| Glossary: | Glossary: |
Keyword definitions (TAG-IDs) |
| (Main) | (none) | Navigation, help, project pages |
| Template: | Template: |
Reusable components (DocumentBox, ReferenceData etc.) |
Creating new pages
Use GxPlex:New page to create a new Document or Reference page using the built-in form. Fields have dropdowns where applicable (Scope, Language, Status, Document type).
New Reference page
- Go to GxPlex:New page → Neue Referenz-Seite erstellen
- Enter the page name — format:
Reference:<document-reference> <document-part>- Example:
Reference:ICH ICH E6 Guideline R3 (2025) Appendix B.4
- Example:
- Fill in the fields:
- Has Document — link to the Document: page (autocomplete)
- Module / Unit — from the Table of Content (e.g. Module 1, Unit 1.1.1)
- Scope — dropdown: G, HM, MD, IVD, NIS, INS, Other
- Document part — section, article or paragraph reference
- Language — language of the original text
- Tags — TAG-IDs from the Glossary, separated by
++
Example:TAG-00001-Med-rzn ++ TAG-00003-Adv-cht - Content — the original text passage
- Save
New Document page
- Go to GxPlex:New page → Neue Dokument-Seite erstellen
- Enter the page name — format:
Document:<reference-code> - Fill in metadata: reference, validity area, scope, document name, version, status, document type, language, description, official link, restricted access
- Save
Editing existing pages
Click Edit on any Document or Reference page — the form opens with all current values pre-filled. After saving, an administrator must approve the revision before it becomes publicly visible (see Special:ApprovedRevs).
Tags and the Glossary
Tags connect Reference pages to keywords in the Glossary.
- Look up the correct TAG-ID in Glossary
- Copy the TAG-ID into the Tags field (e.g.
TAG-00001-Med-rzn) - Separate multiple tags with
++ - New tag not in the Glossary? A notice appears when editing a Reference page reminding you to check. Add the new entry to the
Glossary-Keywordssheet in the Excel source file and notify an administrator — or create theGlossary:TAG-XXXXX-...page manually following the existing format.
Wikitext markup quick reference
| Element | Markup | Example |
|---|---|---|
| Section heading | == Heading == |
== My Section == |
| Internal link | [[Page name]] |
[[Glossary]] |
| Link with label | [[Page name|Label]] |
[[Glossary|Keywords]] |
| Bold | '''text''' |
bold |
| Italic | ''text'' |
italic |
| Wikitable | class="wikitable" ... |} |
see this table |
| SMW store | {{#set:|Property=Value}} |
stores semantic data silently |
| SMW query | {{#ask:[[Property::Value]]|format=table}} |
dynamic result list |
| Transclusion | {{:Page name}} |
embeds full content of another page |
| Code | <code>text</code> |
inline code
|
Bulk import (administrators only)
All Document, Reference and Glossary pages are generated from the Excel source file Databank_GxPlex_v*.xlsx. To update after changes to the Excel file:
- Edit the Excel file (sheets: Document List, References, Glossary-Keywords)
- Run:
python generate_wiki_xml.py <excel-file> <output.xml> - This produces 6 XML part files (~400–650 KB each)
- Import each file via Special:Import → Upload file
- Existing pages are overwritten; new pages are added automatically
Extensions
| Extension | Purpose |
|---|---|
| SemanticMediaWiki | Structured data storage and queries (, The query description has an empty condition.)
|
| PageForms | Form-based page creation and editing with dropdowns |
| ApprovedRevs | Revision approval before public visibility |
| VoteNY | Star rating on pages |
| InputBox | Search input on wiki pages |
| ParserFunctions | Logic in templates (, )
|
| CategoryTree | Collapsible category trees |
