1Swim::Design(3)       User Contributed Perl Documentation      Swim::Design(3)
2
3
4

Swim::Design

6       This document describes the Swim markup format, its goals and its
7       specific design decisions.
8

Swim Goals

10       •   Beautiful input syntax and beautiful output renderings
11
12       •   (re)Use the best existing markup syntaxes
13
14       •   Render to many formats
15
16           •   HTML
17
18           •   Plain text
19
20           •   Other common text markups (Markdown, Pod, etc)
21
22       •   Core info model supports most common, useful constructs
23
24       •   Support everything else via pluggable extension syntax
25

The Swim Informational Model

27       Swim defines an information model for text documents. The 2 main
28       generic components are blocks and phrases. This pretty directly
29       corresponds to the HTML concepts of divs and spans.
30
31       The model is roughly expressed by this grammar:
32
33           # A document is a set of blocks
34           document: block*
35           # A block is /either/ a set of more blocks /or/ a set of phrases
36           block: block* | phrase*
37           # A phrase is moer or less a sentence fragement
38           phrase: bold | italic | link | … | plain-text
39
40       Swim is literally defined by this grammar:
41
42
43
44perl v5.38.0                      2023-07-21                   Swim::Design(3)
Impressum