渲染

在2019/02/06 16:26上被superadmin修改

作用: 把给定语法的一些文本输入内容转换成另一种语法的输出内容

通用架构

rendering-architecture-simple.png

  • Parser: 解析一个给定的语法的一些文本输入,并生成一个XDOM对象(一个抽象语法树)
  • Renderer: 取XDOM作为输入并产生一些输出
  • Transformation: 取一些XDOM并修改它生成一个修改后的XDOM

特性

  • 解析器多种语法
  • 同时提供一个流API(用于渲染比较大的内容)和基于XDOM的API(产生一个中间抽象语法树用于转换)
  • XWiki Syntax 2.0和XHTML之间往返。该特性允许,比如有一个强大的WYSIWYG编辑器,当编辑wiki页面时不会丢失的信息。另一个用例是以html导入Office文档,并将其转化XWiki Syntax 2.0不会丢失信息
  • 获得解析后结果作为抽象语法树(称为XDOM),可以用于访问解析后得到的所有结构化元素
  • 能通过Transformation改变XDOM
  • 宏支持(可用宏列表)。请注意,宏支持作为一个Transformation来实现
  • 支持链接标签wiki语法即使输入语法不支持
  • 能自动把任何支持的输入语法转换为XWiki Syntax 2.0或XHTML
  • 强大的解析器:
    • 基于语法(JavaCC)
    • 修正用户错误(标签没闭合,重叠的标记元素...)
    • 每个块元素(段落,表格单元格,列表项,表头...)可以分布在多行
    • 支持组,即能在其他内容里包含内容(相对于HTML里的DIV)
    • 所有的元素可以有相关的参数
  • 用于XWiki Enteprise有好几年了,稳定并且高性能
  • 可独立使用,因为它是独立于其他XWiki项目,如XWiki Platform, XWiki Enterprise等等

支持语法

输入语法
这意味着有一个解析器,可以用来解析此语法为XDOM对象
输出语法
这意味着有一个渲染器,可渲染xdom为这个语法
名字Id输入语法?输出语法?描述
XWiki 2.0xwiki/2.0acceptaccept
XWiki 2.1xwiki/2.1acceptaccept
XHTML 1.0xhtml/1.0acceptaccept
HTML 5.0html/5.0cancelacceptXWiki Rendering 6.4+ 可用
HTML 4.01html/4.01acceptaccept
Plain Textplain/1.0acceptaccept
DocBook 4.4docbook/4.4acceptacceptXWiki Rendering 3.2+ 可用
XDOM XML Currentxdom+xml/curentacceptacceptXWiki Rendering 3.3+ 可用
XDOM XML 1.0xdom+xml/1.0acceptacceptXWiki Rendering 3.3+ 可用 
XWiki 1.0xwiki/1.0acceptcancel
Confluenceconfluence/1.0acceptcancel
Confluence XHTMLconfluence+xhtml/1.0acceptcancel
JSPWikijspwiki/1.0acceptcancel
TWikitwiki/1.0acceptcancel
MediaWikimediawiki/1.0acceptcancel
Creole 1.0creole/1.0acceptcancel
Markdown 1.0markdown/1.0acceptcancelXWiki Rendering 3.4+ 可用
Markdown 1.1markdown/1.1acceptcancelXWiki Rendering 5.2+ 可用
APTapt/1.0acceptacceptXWiki Rendering 4.3+ 可用

使用XWiki Rendering的项目

标签:
在2015/07/22 15:56上被superadmin创建
本网站中文版文档全部由XWiki中文网成员翻译整理,并全部遵循CC BY 2.0协议发布
闽ICP备15012477号
由 XWiki 7.1.4 构建