# XWiki Syntax Guide

Last modified by Jean Franco on 2022/06/19 21:15
Export
Office Formats
Export as PDF Export as ODT Export as RTF
Other Formats
Export as HTML

XWiki Syntax 2.1 » Editing

## XWiki Syntax 2.1: Editing

## Paragraphs

### 2.0 Paragraphs

Paragraphs are text elements separated by 2 or more new lines.

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Simple paragraph | This is a paragraph | This is a paragraph
Paragraph on multiple lines | Paragraph on multiple lines | Paragraph on multiple lines
Two paragraphs | Paragraph one Paragraph two | Paragraph one Paragraph two
Parametrized paragraph | (% style="text-align:center;color:blue" %) Centered and blue paragraph | Centered and blue paragraph
Different style on some portion of the paragraph content | paragraph with (% style="color:red" %)red(%%) different style inside | paragraph with red texte inside

## Headings

### 2.0 Headings

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Standard headings |
    = level 1 =
    == level 2 ==
    === level 3 ===
    ==== level 4 ====
    ===== level 5 =====
    ====== level 6 ======
| # level 1 ## level 2 ### level 3 #### level 4 ##### level 5 ###### level 6
Parameterized headings | (% style="color:blue" %) = heading = | # heading
Headings with XWiki Syntax | === Heading with **bold** === | ### Heading with bold

## Text Formatting

### 2.0 Text Formatting

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Bold | **bold** | bold
Underline | __underline__ | underline
Italics | //italic// | italic
Striked out | --strike-- | strike
Monospace | ##monospace## | monospace
Superscript | some ^^superscript^^ | some superscript
Subscript | some ,,subscript,, | some subscript

## Horizontal Line

### 2.0 Horizontal Line

There must be 4 or more dashes.

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Simple horizontal line | ---- |
Parametrized horizontal line |
    (% style="border-color:blue" %)
    ----

## Lists

### 2.0 Lists

Some of the mentioned styles do not work on all browsers. For a comprehensive list follow this link.

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Bulleted list |
    * item 1
    ** item 2
    *** item 3
    * item 4
| item 1 item 2 item 3 item 4
Numbered list |
    1. item 1
    11. item 2
    111. item 3
    1. item 4
| item 1 item 2 item 3 item 4
Mixed list |
    1. item 1
    1*. item 2
    1*. item 3
    1. item 4
| item 1 item 2 item 3 item 4
Square list |
    (% style="list-style-type: square" %)
    * item 1
    * item 2
| item 1 item 2
Disc list |
    (% style="list-style-type: disc" %)
    * item 1
    * item 2
| item 1 item 2
Lowercase Alphabetical list |
    (% style="list-style-type: lower-alpha" %)
    * item 1
    * item 2
| item 1 item 2
Uppercase Alphabetical list |
    (% style="list-style-type: upper-alpha" %)
    * item 1
    * item 2
| item 1 item 2
Lowercase Roman list |
    (% style="list-style-type: lower-roman" %)
    * item 1
    * item 2
| item 1 item 2
Uppercase Roman list |
    (% style="list-style-type: upper-roman" %)
    * item 1
    * item 2
| item 1 item 2
Lowercase Greek list |
    (% style="list-style-type: lower-greek" %)
    * item 1
    * item 2
| item 1 item 2
Uppercase Greek list |
    (% style="list-style-type: upper-greek" %)
    * item 1
    * item 2
| item 1 item 2
Hiragana list |
    (% style="list-style-type: hiragana" %)
    * item 1
    * item 2
| item 1 item 2
Hiragana Iroah list |
    (% style="list-style-type: hiragana-iroha" %)
    * item 1
    * item 2
| item 1 item 2
Katakana list |
    (% style="list-style-type: katakana" %)
    * item 1
    * item 2
| item 1 item 2
Katakana Iroha list |
    (% style="list-style-type: katakana-iroha" %)
    * item 1
    * item 2
| item 1 item 2
Armenian list |
    (% style="list-style-type: armenian" %)
    * item 1
    * item 2
| item 1 item 2
Hebrew list |
    (% style="list-style-type: hebrew" %)
    * item 1
    * item 2
| item 1 item 2
Georgian list |
    (% style="list-style-type: georgian" %)
    * item 1
    * item 2
| item 1 item 2
CJK ideographic list |
    (% style="list-style-type: cjk-ideographic" %)
    * item 1
    * item 2
| item 1 item 2

## Definition Lists

### 2.0 Definition Lists

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Standard definition |
    ; term
    : definition
| term definition
Nested definitions |
    ; term 1
    : definition 1
    :; term 2
    :: definition 2
| term 1 definition 1 term 2 definition 2
Parametrized definition |
    (% style="color:blue" %)
    ; term
    : definition
| term definition

## New Line/Line Breaks

### 2.0 New Line Line Breaks

A new line is a carriage return. A line break is a forced new line that can appear anywhere in the text.

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Line break | Line\\New line | Line New line
New line | Line New line | Line New line

## Links

### 2.1 Links

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Absolute link to page PageB located in PageA | [[PageA.PageB]] | PageB
Relative link to page PageA from the current page | [[PageA]] or [[.PageA]] | PageA
Relative link to page PageB in PageA from the current page | [[.PageA.PageB]] | PageB
Link with a label |
    [[label>>PageA]]
XWiki Syntax is supported inside link labels. | label
Link with wiki syntax in the label | [[**bold label**>>PageA]] | bold label
Link on an image | [[image:PageA@img.png>>PageA]] |
Absolute link to page PageB located in PageA in wiki WikiA | [[WikiA:PageA.PageB]] | PageB
Link that opens in a new window | [[PageA||target="_blank"]] | PageA
Implicit link to a URL | This is a URL: https://xwiki.org | This is a URL: https://xwiki.org
Explicit link to a URL | [[https://xwiki.org]] | https://xwiki.org
Explicit link to a URL with a label | [[XWiki>>https://xwiki.org]] | XWiki
Link to an email address | [[john@smith.net>>mailto:john@smith.net]] | john@smith.net
Link to an attachment on the current page | [[attach:img.png]] | img.png
Link to an attachment in a different page | [[attach:PageA.PageB@img.png]] | img.png
Link to an Anchor in a page | [[PageA.PageB||anchor="anchor"]] | PageB
Link to a Heading in a page |
    [[PageA.PageB||anchor="HMyheading"]]
When you add a Heading, an anchor named "H" followed by the heading title with only alpha characters is created. For example, for a Heading named "My heading", the generated anchor will be "HMyheading". | PageB
Link to an anchor in the current page | [[label>>||anchor="anchor"]] | label
Link to a page with a query string | [[PageA.PageB||queryString="param1=value1&param2=value2"]] | PageB
Link to the current page with a query string | [[label>>||queryString="param1=value1&param2=value2"]] | label

### XWiki Syntax 2.1 Link Specification

Legend: The parts in () are required, while the parts in [] are optional.

The full format of a link is [label>>] (resource) [||parameters]

- label: An optional string which will be displayed to the user as the link name when rendered. The label may contain XWiki Syntax. If no label is specified a default label will be generated. The generation pattern can be changed, see the Admin Guide. Example: My Page
- resource: A required string with the link reference in one of the following forms
  - URL: Any URL in the form of [url:](protocol://path). Examples: http://xwiki.org, url:https://svn.xwiki.org/
    - url: An optional string identifying the resource as an URL.
    - protocol://path: The URL itself
  - Wiki page: A reference in the form page:[(wikiName):](pageNameList). Examples: page:Page, page:myxwiki:Page, page:ParentPage.ChildPage.SubChildPage, page:../SiblingPage, page:./ChildPage
    - page: A required string identifying the resource as an XWiki page. The same reference can be used for either a terminal or non-terminal page, if both exist it will lead to the non-terminal page.
    - wikiName: An optional string containing the name of a wiki. The link will point to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki
    - pageNameList: A required list of slash-separated wiki Pages names pointing to the final linked wiki Page syntax. It's also possible to use . and .. to indicate current or parent page/wiki. Examples: Main, A/B, A/B/C, ../Sibling, ./Child
  - Wiki document: A reference in the form [doc:][[(wikiName):](spaceNameList).](documentName). Examples: doc:Welcome, doc:Main.Welcome, doc:mywiki:Main.Welcome, Welcome
    - doc: An optional string identifying the resource as an XWiki terminal page. A non-terminal page can also be referenced this way, but it must append its .WebHome part (e.g. doc:Sandbox.WebHome).
    - wikiName: An optional string containing the name of a wiki. The link will point to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki.
    - spaceNameList: An optional dot-separated list of wiki Space names. If no space is specified the current space is used. Examples: Main, A.B, A.B.C
    - documentName: A required string containing the name of the linked wiki page. Example: Welcome
  - Wiki space: A reference in the form space:[(wikiName):](spaceNameList). Examples: space:Main, space:mywiki:Main, space:A.B.C
    - space: A required string identifying the resource as an XWiki non-terminal page (i.e. a space).
    - wikiName: An optional string containing the name of a wiki. The link will point to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki
    - spaceNameList: A required list of dot-separated wiki Space names pointing to the final linked wiki Space (or non-terminal page). Examples: Main, A.B, A.B.C
  - InterWiki page: A reference in the form interwiki:[(interWikiAlias):](pageName). Example: interwiki:wikipedia:XWiki
    - interwiki: A required string identifying the resource as an InterWiki link.
    - interWikiAlias: An optional Inter Wiki alias as defined in the InterWiki Map (see the Admin Guide). Example: wikipedia
    - pageName: A required string containing the name of the linked page. Example: XWiki
  - Attachment: A reference in the form attach:{{{(wikiName):}(spaceNameList).}(pageName)@}(imageName)
    - attach: A required string identifying the reference as an XWiki Document attachment.
    - wikiName: An optional string containing the name of a wiki. The image reference will point to an image attached to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki.
    - spaceNameList: An optional dot-separated list of wiki Space names. If no space is specified the current space is used. Examples: Main, A.B, A.B.C
    - pageName: An optional string containing the name of the wiki page to which the referenced image is attached. Example: Welcome
    - attachmentName: Name of the attachment as it is stored in the wiki. Example: photo.png
  - Page Attachment: A reference in the form pageAttach:{{{(wikiName):}(pageNameList)/}(imageName)
    - pageAttach: An required string identifying the reference as an XWiki Page attachment.
    - wikiName: An optional string containing the name of a wiki. The image reference will point to an image attached to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki.
    - pageNameList: An optional dot-separated list of wiki page names. If no page is specified the current page is used. Examples: Main, A/B, A/B/C
    - attachmentName: Name of the attachment as it is stored in the wiki. Example: photo.png
  - Email address: A reference in the form mailto:(emailAddress) (#anchor is not valid). Example: mailto:john@smith.com
    - mailto: A required string identifying the resource as email.
    - emailAddress: Targeted email address. Example: john@smith.com
  - Relative path: A reference on the server in the form path:(relPath). Example: path:$doc.getURL('reset') produces target address http://server.domain.com/xwiki/bin/reset/Space/Page where /xwiki/bin/reset/Space/Page is produced by $doc.getURL('reset').
    - path: A required string identifying the resource as a relative path.
    - relPath: A required string containing the relative path of the resource on the server that shall be linked.
  - UNC (Windows Explorer): A reference in the form unc:(path). The link is rendered as a file:// link. Examples: unc:C:\Windows\, unc:\\myserver\path\img.png, unc:home/user/somefile
    - unc: A required string identifying the resource as a UNC (Windows Explorer) path.
    - path: A required string containing the local path of resource accessible by the user. Examples: C:\Windows\, \\myserver\path\img.png, home/user/somefile
  - Untyped: If none of the above-mentioned resource types are specified (i.e. no type: resource prefix was specified in the link), then the link will be treated as a link to an XWiki terminal or non-terminal page using the following algorithm:
    - Terminal page in the current space, only if it exists. Example: [[A]] is resolved to the equivalent of [[doc:currentSpace.A]]
    - Non-terminal page in the current space. Example: [[A]] is resolved to the equivalent of [[space:currentSpace.A]], which is the equivalent of [[doc:currentSpace.A.WebHome]]
    - If the current page is non-terminal and the previous 2 checks above did not find an existing page, 2 additional checks are made:
      - Terminal page as sibling in the parent space, only if it exists. Example: The [[B]] link inside the non-terminal page A.C is resolved to the equivalent of [[doc:A.B]]
      - Non-terminal page as sibling in the parent space, regardless if it exists or not. Example: The [[B]] link inside the non-terminal page A.C is resolved to the equivalent of [[space:A.B]], which is the equivalent of [[doc:A.B.WebHome]]
    - Note1 - Absolute links: If the untyped link has 2 or more dot-separated components specified (i.e. that look like a space name and a page name), the above algorithm will resolve the page relative to the current wiki, and not the current space. Example: [[A.B]] can be resolved to either [[doc:currentWiki:A.B]] (if it exists) or to [[space:currentWiki:A.B]] (equivalent of [[doc:currentWiki:A.B.WebHome]]) and not to [[doc:currentWiki:currentSpace.A.B]] or [[doc:currentWiki:currentSpace.A.B.WebHome]].
    - Note2 - Special handling of .WebHome: If the untyped link ends in .WebHome, it will always be handled as a terminal page. Example: [[A.WebHome]] will always be resolved to the equivalent of [[doc:A.WebHome]] and not to [[doc:A.WebHome.WebHome]].
- parameters: An optional list of space-separated parameters passed to the link. Example: queryString="mydata1=5&mydata2=Hello" anchor="HTableOfContents" target="_blank"
  - queryString: An optional query string for specifying parameters that will be appended to the link target address and used in the rendered URL. Example: url:http://domain.com/path||queryString="mydata1=5&mydata2=Hello" produces target address http://domain.com/path?mydata1=5&mydata2=Hello
  - anchor: An optional anchor name pointing to an anchor defined in the referenced link. Note that in XWiki anchors are automatically created for headings and images. Example: url:http://domain.com/path||anchor="HTableOfContents" produces target address http://domain.com/path#HTableOfContents
  - target: An optional parameter that allows to open link target in new window. Example: target="_blank"

## Tables

### 2.0 Tables

Allows to easily create content in table format. Parameters for table, row or cell are also supported in XWiki Syntax 2.1.

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Standard table |
    |=Title 1|=Title 2
    |Word 1|Word 2
or
    !=Title 1!=Title 2
    !!Word 1!!Word 2
Title 1 | Title 2
--- | ---
Word 1 | Word 2
Parametrized table |
    (% style="background-color:red;text-align:center" %)
    |=Title 1|=(% style="background-color:yellow" %)Title 2
    |Word 1|Word 2
Title 1 | Title 2
--- | ---
Word 1 | Word 2
Filterable Sortable table |
    {{velocity}}
    $xwiki.ssfx.use("js/xwiki/table/table.css")
    $xwiki.jsfx.use("js/xwiki/table/tablefilterNsort.js", true)
    {{/velocity}}

    (% class="grid sortable filterable doOddEven" id="tableid" %)
    (% class="sortHeader" %)|=Title 1|=Title 2
    |Cell 11|Cell 12
    |Cell 21|Cell 22
For improved features see the Livetable Macro. |
Title 1 | Title 2
--- | ---
Cell 11 | Cell 12
Cell 21 | Cell 22

## Images

### 2.1 Images

Feature | XWiki Syntax 2.1 | Result
--- | --- | ---
Image from attachment on current page | image:img.png |
Image from attachment on another page | image:PageA.PageB@img.png |
Image with parameters | [[image:img.png||width="25" height="25"]] |
Image with caption | [[~[~[XWiki~>~>https://www.xwiki.org~]~] supports captions.>>image:img.png]] | XWiki supports captions.
Images located at URL | image:https://some/url/img.png |
Prepackaged Icons | image:icon:accept |

### XWiki Syntax 2.1 Image Specification

Legend: The parts are () are required, while the parts in {} are optional.

The full format of an image is either image: (reference) or [[{caption>>}image: (reference) {||parameters}]]

- caption: An optional caption. May contain arbitrary XWiki 2.1 syntax but nested link syntax must be escaped using ~. The caption is only supported when the image syntax is the only content of a paragraph.
- image: A required string identifying the resource as image.
- reference: The reference to the image that shall be displayed in one of the following forms:
  - URL: Any URL to an image in the form of [url:](protocol://path/imageName). Example: http://domain.org/path/img.png
    - url: An optional string identifying the image as an URL.
    - protocol://path/imageName: The URL to the image
  - Attachment: A reference in the form [attach:]{{{(wikiName):}(spaceNameList).}(pageName)@}(imageName)
    - attach: An optional string identifying the reference as an XWiki Document attachment.
    - wikiName: An optional string containing the name of a wiki. The image reference will point to an image attached to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki.
    - spaceNameList: An optional dot-separated list of wiki Space names. If no space is specified the current space is used. Examples: Main, A.B, A.B.C
    - pageName: An optional string containing the name of the wiki page to which the referenced image is attached. Example: Welcome
    - imageName: A required string containing the name of the image attached to a page as it is stored in the wiki. Example: myImage.png
  - Page Attachment: A reference in the form pageAttach:{{{(wikiName):}(pageNameList)/}(imageName)
    - pageAttach: An required string identifying the reference as an XWiki Page attachment.
    - wikiName: An optional string containing the name of a wiki. The image reference will point to an image attached to a page inside that wiki. If no wiki is specified, the current wiki is used. Example: mywiki.
    - pageNameList: An optional dot-separated list of wiki page names. If no page is specified the current page is used. Examples: Main, A/B, A/B/C
    - imageName: A required string containing the name of the image attached to a page as it is stored in the wiki. Example: myImage.png
  - Icon: A reference in the form icon:(iconName). Example: icon:accept
    - icon: A required string identifying the image reference as an icon from the XWiki Icon Set.
    - iconName: A required string identifying the icon referenced. Example: accept
  - Icon: A reference in the form icon:(iconName). Example: icon:accept
    - icon: A required string identifying the image reference as an icon from the XWiki Icon Set.
    - iconName: A required string identifying the icon referenced. Example: accept
  - Data URI: A reference in the form (data:)(content). Example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
    - data: A required string identifying the image as being specified inline using the Data URI scheme.
    - content: The encoded image. Example: image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
- parameters: An optional list of space-separated parameters passed to the image. Example: width="800" height="600" alt="img.png" title="My nice image"
  - HTML attributes: All attributes defined by the HTML standard will be added to the rendered HTML <img> tag.
    - style: CSS style information that should be applied to the image. Examples: style="float:right;height:50" (image on right side, height 50 px), style="display:block;margin-left:auto;margin-right:auto;width:80%" (image centered, width 80% of block width), style="vertical-align:bottom" (text starts at bottom of picture)
    - height: A parameter that defines the height of the displayed image. The value should be presented either in pixel (example: height="80") or in pixel related to the height of the block containing the image (example: height="40%").
    - width: A parameter that defines the width of the displayed image. The value should be presented either in pixel (example: width="80") or in pixel related to the width of the block containing the image (example: width="40%").
    - title: A parameter that defines the title the displayed image which will be visible when hovering the mouse trigger over the image, for instance. Example: title="My nice image"
    - alt: A parameter that defines which text should be displayed if the browser is not able to display the image. Since this is a required HTML attribute XWiki will use the file name instead if the alt parameter is not defined. Example: alt="img.png"
    - More: A more in depth explanation on the HTML <img> tag including more attributes can be reviewed in the HTML standard.
  - queryString: Allows queries to be passed to the server when creating the download link for the referenced image. Example: queryString="width=100&height=800&keepAspectRatio=true" (keepAspectRatio=true will fail if the width and height parameters are specified in addition to queryString!)

0
Tags:
Created by Jean Franco on 2022/06/19 21:15

- Comments (0)
- Attachments (0)
- History
- Information

# Applications

# Tips

When editing in WYSIWYG, type @ and then start typing letters to get suggestions to mention a user.

Maila Networks
XWiki Debian 14.4.1