Extension:PlantUML

From MediaWiki.org
Jump to: navigation, search
MediaWiki extensions manualManual:Extensions
Crystal Clear action run.png
PlantUML

Release status:Extension status experimental

ImplementationTemplate:Extension#type Parser function
DescriptionTemplate:Extension#description Allows to add UML diagrams
Author(s)Template:Extension#username Roques A., Kersten Pieter J., Seppl2013
Latest versionTemplate:Extension#version 0.6.0 (2016-02-14)
MediaWikiTemplate:Extension#mediawiki 1.12+
Database changesTemplate:Extension#needs-updatephp No
LicenseTemplate:Extension#license GNU General Public License 2.0 or later
Download
README
ParametersTemplate:Extension#parameters
  • $usecloud
  • $plantumlJar
  • $plantumlImagetype
TagsTemplate:Extension#tags
<uml>
Hooks usedTemplate:Extension#hook
ParserFirstCallInitManual:Hooks/ParserFirstCallInit
ArticleSaveManual:Hooks/ArticleSave

Translate the PlantUML extension if it is available at translatewiki.net

Check usage and version matrix.

The PlantUML extension allows to easily add UML diagrams into Wiki using a simple text description.

Reporting issues[edit source]

Diagrams supported[edit source]

The following diagrams are available:

  • sequence diagram,
  • use case diagram,
  • class diagram,
  • activity diagram,
  • component diagram,
  • state diagram

The language is explained in this document: Language Reference Guide.pdf

Usage[edit source]

Just put a PlantUML model description between the <uml></uml> tag.

Attributes[edit source]

redraw
force diagram to be redrawn by deleting cached image.

Examples[edit source]

Example1[edit source]

<uml>
Alice -> Bob: Authentication Request
Bob --> Alice: Authentication Response
Alice -> Bob: Come on over
</uml>

Example2[edit source]

<uml>
skinparam usecaseBackgroundColor DarkSeaGreen
skinparam usecaseArrowColor Olive
skinparam actorBorderColor black
skinparam usecaseBorderColor DarkSlateGray
skinparam usecaseActorFontName Courier

User << Human >>
:Main Database: as MySql << Application >>
(Start) << One Shot >>
(Use the application) as (Use) << Main >>

User -> (Start)
User --> (Use)
MySql --> (Use)
</uml>

Example3[edit source]

<uml>
package "Classic Collections" #DDDDDD
Object <|-- ArrayList

package net.sourceforge.plantuml
Object <|-- Demo1
Demo1 *- Demo2
</uml>

Example 4 - new features of 0.6[edit source]

Using Umlaute and International Characters and modifying the format per uml tag is now possible

<uml format='png'>
hide circle
class ÄÖÜäöüßéÈô東京都 {
}
</uml>

Installation[edit source]

This extension depends on the Graphviz extension. You should install it first.

Then the code of the PlantUML extension is available here.

  • On Windows, you must set the read & execute permissions on C:\Windows\system32\cmd.exe for the account the PHP web service extension is running under. PHP needs those permissions to "fork" other process.
  • If using WAMP (and possibly other stacks) on Windows, you must set the "wampapache" service to "Allow service to interact with desktop".

In order to install this plugin, please follow the steps below.

  1. Go to the extensions folder of your MediaWiki installation.
    #cd extensions
    
  2. Git clone the PlantUML sources
    git clone https://github.com/pjkersten/PlantUML.git
    
  3. Choose your usage style. You can either process images locally (on the server where MediaWiki was installed) or in the cloud. The local version supports SVG-images and embedded urls, at the cost of local processing. The cloud version is lightweight for your server, but does not support embedded urls (yet) and is (still) stuck with PNG-images. Default local processing is expected. If you want to use the cloud, please edit the PlantUML.php file and change $usecloud to true.
  4. When using local processing: get the plantuml.jar from SourceForge
    wget https://downloads.sourceforge.net/project/plantuml/plantuml.jar
    
  5. (Optional) Change the Format from svg to png.
    Edit your LocalSettings.php and add the variable $wgPlantUmlFormat to your preference e.g.
    $wgPlantUmlFormat="png";
    

    You can also change the format of the uml rendering using the "format" attribute of the uml tag e.g. with
    <uml format='png'>
    
    Mind that SVG produces the superior graphics, but that only PNG-images and image maps are "rock solid". If you use the cloud, it will always generate PNG images. Local processing defaults to SVG.
  6. (Optional) Adapt the getUploadPath and getUploadDirectory to your preference if you want these different from MediaWiki's standard settings. Mind that these directories must be writeable by the system user who runs MediaWiki.
  7. Put the following line near the end of your LocalSettings.php in MediaWiki's root folder to include the extension:
    require_once('extensions/PlantUML/PlantUML.php');
    
  8. When using SVG, check your mediawiki SVG settings
  9. When using the cloud, make sure that httpd can submit HTTP-requests.
  10. Reload http server

See also[edit source]

Language:Project:Language policy English  • русский