It's traditional Ward's syntax (except for the 4 -) plus StructuredData in form of WcpEssExpressions. CamelCase is internal link, any word with at least one '_' character will be an internal link, so that one word page names are possible. External links are recognized by prefixes such as http: . New lines will begin a new paragraph. WcpEssExpressions are introduced by the backquote escape character ` . Now most of the EssExpressions are designed to closely resemble html. So because there's the
html for a line separator, the WcpSyntax for it will be `hr Preformatted text is typically written like this `(pre "string") `( pre #<< EOF This is a line spanning string contast delimited by a keyword EOF ) Other WcpEssExpression patterns (by the way, as a side-effect WikiChangeProposal there's now PatternMatchingInJava available for functionally minded people who have to suffer Java :) ) : (h ?level . ?rest) -- for example (h 2 "This is a

header") (p . ?rest) -- this is a html

paragraph (a (href ?hrefValue)) -- this will generate an hrefvalue (a (href ?hrefValue) ?label ) -- label (a (?internalLink ?team) ?label) -- an wiki link with a label to an edited version (a ?internalLink ?label) -- the same but pointing to the general namespace not to a particular team's version (chess . ?position) -- a chess diagram And in principle plugin writer can define a new keyword like "chess" in the example above that will be used as the first symbol in the pattern matching to introduce structured data for a particular application, and a pattern to match the kind of data the plugin expects to receive, and at runtime, it will be given the corresponding S-Expression supplied by the user and a wiki context containing at least an HTML output stream (escapes characters by default) and a raw outputstream. ---- CategoryWikiChangeProposal