SWML possible new features

SWML possible new features

[1] This is a list of possible new features that might be incorporated into a future version of SWML (and implemented in Whatpm/SuikaWiki4).

Citation/referencing

Referencing another part of the document by name.

foo bar [SOURCE].

[SOURCE] some document <http://www.example.com/>.

New block-level element for citation entries.

 [REFS[
 - [SW09] SuikaWiki/0.9 specification <http://...>
 - [SW10] SuikaWiki/0.10 <http://...>
 - [SWML] SWML specification <http://...>
 ]REFS]

Scope element for source

  [SRCSCOPE[This feature is not supported in that implementation [SRC[SOMEDOCUMENT]].]]

WikiFormV2

Trackback-like semi-automated cross-referencing between wiki pages

Need to survey SuikaWiki3's WikiForm usage

Tables

Table headers (HTML th element)

Rowspans (HTML rowspan attribute)

Multiline tables

 ,,
 ,header1
 ,data1
 ,data1
 ,,
 ,header2
 ,data2
 ,data2,
 ,,

Paragraphs

Breaks (HTML hr element)

Example blocks

  [EXAMPLE(html code)[
  <h1>ABC
  <p>abc
  ]EXMAPLE]

with caption/credit/description?

Dialogs (HTML dialog element)

Sections

Articles (HTML article element)

Asides (HTML asides element)

Addresses (HTML address element)

  [ARTICLE[
  [1] It's great!
  
  [ADDRESS[
  [FN[Foo-san]] [TIME[2008-12-12 23:44:11Z]]
  ]ADDRESS]
  ]ARTICLE]

(would be generated by #comment form)

Blockcodes

Same as "[" "PRE(code)[", but no white-space: pre.

Inlines

Marking (HTML mark element)

Footnotes

Escapes (for syntax characters such as [); in SuikaWiki2 __&&quot&&__ was converted to " but it is stupid.

RFC 2119 keywords

  [MUST[MUST]]

and as such.

Explicit closing of a block

[2]

Not part of the list
- list item
- list item
<!>
not part of the list but belongs to the same block as the first line

Multilingual texts

e.g. English text & Japanese text

Advanced diff markup

e.g. RFC 1945/RFC 2068/RFC 2616 diffs with annotations

See also paragraph

e.g.

[SEEALSO[
- [[page1]]
- [[page2]]
]]

or NAV?

Rejected ideas

Roundtrip for arbitrary XML markup / DOM tree (difficult and dangerous)

Use other character than [ for tags (difficult because of backward compatibility issue)