mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Mark Craig
17.51.2011 cfc982e109347d64337fb6782e9154339af89720
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
 -----
 The APT format
 -----
 The Maven Team
 -----
 -----
 
The APT format
~~~~~~~~~~~~~~
 
  In the following section, boxes containing text in typewriter-like font are
  examples of APT source.
 
* Document structure
~~~~~~~~~~~~~~~~~~~~
 
  A short APT document is contained in a single text file. A longer document
  may be contained in a ordered list of text files. For instance, first text
  file contains section 1, second text file contains section 2, and so on.
 
      [Note:] Splitting the APT document in several text files on a section
              boundary is not mandatory. The split may occur anywhere.
              However doing so is recommended because a text file containing a
              section is by itself a valid APT document.
 
  A file contains a sequence of paragraphs and ``displays'' (non paragraphs
  such as tables) separated by open lines.
 
  A paragraph is simply a sequence of consecutive text lines.
 
+------------------------------------------------------------------------+
  First line of first paragraph.
  Second line of first paragraph.
  Third line of first paragraph.
 
  Line 1 of paragraph 2 (separated from first paragraph by an open line).
  Line 2 of paragraph 2.
+------------------------------------------------------------------------+
 
  The indentation of the first line of a paragraph is the main method used by
  an APT processor to recognize the type of the paragraph. For example, a
  section title must not be indented at all.
 
  A ``plain'' paragraph must be indented by a certain amount of space. For
  example, a plain paragraph which is not contained in a list may be indented
  by two spaces.
 
+-------------------------------------------------+
My section title (not indented).
 
  My paragraph first line (indented by 2 spaces).
+-------------------------------------------------+
 
  Indentation is not rigid. Any amount of space will do. You don't even need
  to use a consistent indentation all over your document. What really matters
  for an APT processor is whether the paragraph is not indented at all or,
  when inside a list, whether a paragraph is more or less indented than the
  first item of the list (more about this later).
 
+-------------------------------------------------------+
    First paragraph has its first line indented by four
spaces. Then the author did even bother to indent the
other lines of the paragraph.
 
  Second paragraph contains several lines which are all
  indented by two spaces. This style is much nicer than
  the one used for the previous paragraph.
+-------------------------------------------------------+
 
  Note that tabs are expanded with a tab width set to 8.
 
* Document elements
~~~~~~~~~~~~~~~~~~~
 
** Block level elements
~~~~~~~~~~~~~~~~~~~~~~~
 
*** Title
~~~~~~~~~~
 
  A title is optional. If used, it must appear as the first block of the
  document.
 
+----------------------------------------------------------------------------+
                    ------
                    Title
                    ------
                    Author
                    ------
                     Date
+----------------------------------------------------------------------------+
 
  A title block is indented (centering it is nicer). It begins with a line
  containing at least 3 dashes (<<<--->>>).
 
  After the first <<<--->>> line, one or several consecutive lines of text
  (implicit line break after each line) specify the title of the document.
 
  This text may immediately be followed by another <<<--->>> line and one or
  several consecutive lines of text which specifies the author of the
  document.
 
  The author sub-block may optionaly be followed by a date sub-block using the
  same syntax.
 
  The following example is used for a document with an title and a date but
  with no declared author.
 
+----------------------------------------------------------------------------+
                    ------
                    Title
                    ------
                    ------
                     Date
                    ------
+----------------------------------------------------------------------------+
 
  The last line is ignored. It is just there to make the block nicer.
 
*** Paragraph
~~~~~~~~~~~~~
 
  Paragraphs other than the title block may appear before the first section.
 
+----------------------+
  Paragraph 1, line 1.
  Paragraph 1, line 2.
 
  Paragraph 2, line 1.
  Paragraph 2, line 2.
+----------------------+
 
  Paragraphs are indented. They have already been described in the {{document
  structure}} section.
 
*** Section
~~~~~~~~~~~
 
  Sections are created by inserting section titles into the document. Simple
  documents need not contain sections.
 
+-----------------------------------+
Section title
 
* Sub-section title
 
** Sub-sub-section title
 
*** Sub-sub-sub-section title
 
**** Sub-sub-sub-sub-section title
+-----------------------------------+
 
  Section titles are not indented. A sub-section title begins with one
  asterisk (<<<*>>>), a sub-sub-section title begins with two asterisks
  (<<<**>>>), and so forth up to four sub-section levels.
 
*** List
~~~~~~~~
 
+---------------------------------------+
      * List item 1.
 
      * List item 2.
 
    Paragraph contained in list item 2.
 
        * Sub-list item 1.
 
        * Sub-list item 2.
 
      * List item 3.
+---------------------------------------+
 
  List items are indented and begin with a asterisk (<<<*>>>).
 
  Plain paragraphs more indented than the first list item are nested in that
  list. Displays such as tables (not indented) are always nested in the
  current list.
 
  To nest a list inside a list, indent its first item more than its parent
  list. To end a list, add a paragraph or list item less indented than the
  current list.
 
  Section titles always end a list. Displays cannot end a list but the
  <<<[]>>> pseudo-element may be used to force the end of a list.
 
+------------------------------------+
      * List item 3.
        Force end of list:
 
      []
 
--------------------------------------------
Verbatim text not contained in list item 3
--------------------------------------------
+------------------------------------+
 
  In the previous example, without the <<<[]>>>, the verbatim text (not
  indented as all displays) would have been contained in list item 3.
 
  A single <<<[]>>> may be used to end several nested lists at the same
  time. The indentation of <<<[]>>> may be used to specify exactly which
  lists should be ended. Example:
 
+------------------------------------+
      * List item 1.
 
      * List item 2.
 
        * Sub-list item 1.
 
        * Sub-list item 2.
 
        []
 
-------------------------------------------------------------------
Verbatim text contained in list item 2, but not in sub-list item 2
-------------------------------------------------------------------
+------------------------------------+
 
  There are three kind of lists, the bulleted lists we have already described,
  the numbered lists and the definition lists.
 
+-----------------------------------------+
      [[1]] Numbered item 1.
 
                [[A]] Numbered item A.
 
                [[B]] Numbered item B.
 
      [[2]] Numbered item 2.
+-----------------------------------------+
 
  A numbered list item begins with a label beetween two square brackets. The
  label of the first item establishes the numbering scheme for the whole list:
 
      [<<<[[1\]\]>>>] Decimal numbering: 1, 2, 3, 4, etc.
 
      [<<<[[a\]\]>>>] Lower-alpha numbering: a, b, c, d, etc.
 
      [<<<[[A\]\]>>>] Upper-alpha numbering: A, B, C, D, etc.
 
      [<<<[[i\]\]>>>] Lower-roman numbering: i, ii, iii, iv, etc.
 
      [<<<[[I\]\]>>>] Upper-roman numbering: I, II, III, IV, etc.
 
  The labels of the items other than the first one are ignored. It is
  recommended to take the time to type the correct label for each item in
  order to keep the APT source document readable.
 
+-------------------------------------------+
      [Defined term 1] of definition list 2.
 
      [Defined term 2] of definition list 2.
+-------------------------------------------+
 
  A definition list item begins with a defined term: text between square
  brackets.
 
*** Verbatim text
~~~~~~~~~~~~~~~~~
 
+----------------------------------------+
----------------------------------------
Verbatim
     text,
        preformatted,
                escaped.
----------------------------------------
+----------------------------------------+
 
  A verbatim block is not indented. It begins with a non indented line
  containing at least 3 dashes (<<<--->>>). It ends with a similar line.
 
  <<<+-->>> instead of <<<--->>> draws a box around verbatim text.
 
  Like in HTML, verbatim text is preformatted. Unlike HTML, verbatim text is
  escaped: inside a verbatim display, markup is not interpreted by the APT
  processor.
 
*** Figure
~~~~~~~~~~
 
+---------------------------+
[Figure name] Figure caption
+---------------------------+
 
  A figure block is not indented. It begins with the figure name between
  square brackets. The figure name is optionally followed by some text: the
  figure caption.
 
  The figure name is the pathname of the file containing the figure but
  without an extension. Example: if your figure is contained in
  <<</home/joe/docs/mylogo.jpeg>>>, the figure name is
  <<</home/joe/docs/mylogo>>>.
 
  If the figure name comes from a relative pathname (recommended practice)
  rather than from an absolute pathname, this relative pathname is taken to be
  relative to the directory of the current APT document (a la HTML)
  rather than relative to the current working directory.
 
  Why not leave the file extension in the figure name? This is better
  explained by an example. You need to convert an APT document to PostScript
  and your figure name is <<</home/joe/docs/mylogo>>>. A APT processor will
  first try to load <<</home/joe/docs/mylogo.eps>>>. When the desired format
  is not found, a APT processor tries to convert one of the existing
  formats. In our example, the APT processor tries to convert
  <<</home/joe/docs/mylogo.jpeg>>> to encapsulated PostScript.
 
*** Table
~~~~~~~~~
 
  A table block is not indented. It begins with a non indented line containing
  an asterisk and at least 2 dashes (<<<*-->>>). It ends with a
  similar line.
 
  The first line is not only used to recognize a table but also to specify
  column justification. In the following example,
 
      * the second asterisk (<<<*>>>) is used to specify that column 1 is
        centered,
 
      * the plus sign (<<<+>>>) specifies that column 2 is left aligned,
 
      * the colon (<<<:>>>) specifies that column 3 is right aligned.
 
      []
 
+---------------------------------------------+
*----------*--------------+----------------:
| Centered | Left-aligned | Right-aligned  |
| cell 1,1 | cell 1,2     | cell 1,3       |
*----------*--------------+----------------:
| cell 2,1 | cell 2,2     | cell 2,3       |
*----------*--------------+----------------:
Table caption
+---------------------------------------------+
 
  Rows are separated by a non indented line beginning with <<<*-->>>.
 
  An optional table caption (non indented text) may immediately follow the
  table.
 
  Rows may contain single line or multiple line cells. Each line of cell text
  is separated from the adjacent cell by the pipe character (<<<|>>>).
  (<<<|>>> may be used in the cell text if quoted: <<<\\|>>>.)
 
  The last <<<|>>> is only used to make the table nicer.  The first <<<|>>> is
  not only used to make the table nicer, but also to specify that a grid is to
  be drawn around table cells.
 
  The following example shows a simple table with no grid and no caption.
 
+---------------+
*-----*------*
 cell | cell
*-----*------*
 cell | cell
*-----*------*
+---------------+
 
*** Horizontal rule
~~~~~~~~~~~~~~~~~~~
 
+---------------------+
=====================
+---------------------+
 
  A non indented line containing at least 3 equal signs (<<<===>>>).
 
*** Page break
~~~~~~~~~~~~~~
 
+---+
^L
+---+
 
  A non indented line containing a single form feed character (Control-L).
 
** Text level elements
~~~~~~~~~~~~~~~~~~~~~~
 
*** Font
~~~~~~~~
 
+-----------------------------------------------------+
  <Italic> font. <<Bold>> font. <<<Monospaced>>> font.
+-----------------------------------------------------+
 
  Text between \< and > must be rendered in italic. Text between \<\< and >>
  must be rendered in bold. Text between \<\<\< and >>> must be rendered using
  a monospaced, typewriter-like font.
 
  Font elements may appear anywhere except inside other font elements.
 
  It is not recommended to use font elements inside titles, section titles,
  links and defined terms because a APT processor automatically applies
  appropriate font styles to these elements.
 
*** Anchor and link
~~~~~~~~~~~~~~~~~~~
 
+-----------------------------------------------------------------+
  {Anchor}. Link to {{anchor}}. Link to {{http://www.pixware.fr}}.
  Link to {{{anchor}showing alternate text}}.
  Link to {{{http://www.pixware.fr}Pixware home page}}.
+-----------------------------------------------------------------+
 
  Text between curly braces (<<<\{}>>>) specifies an anchor. Text between
  double curly braces (<<<\{\{}}>>>) specifies a link.
 
  It is an error to create a link element that does not refer to an anchor of
  the same name. The name of an anchor/link is its text with all non
  alphanumeric characters stripped.
 
  This rule does not apply to links to <external> anchors. Text beginning
  with <<<http:/>>>, <<<https:/>>>, <<<ftp:/>>>, <<<file:/>>>, <<<mailto:>>>,
  <<<../>>>, <<<./>>> (<<<..\\>>> and <<<.\\>>> on Windows) is recognized as
  an external anchor name.
 
  When the construct <<\{\{\{>><name><<}>><text><<}}>> is used, the link text
  <text> may differ from the link name <name>.
 
  Anchor/link elements may appear anywhere except inside other anchor/link
  elements.
 
  Section titles are implicitly defined anchors.
 
*** Line break
~~~~~~~~~~~~~~
 
+-------------+
  Force line\
  break.
+-------------+
 
  A backslash character (<<<\\>>>) followed by a newline character.
 
  Line breaks must not be used inside titles and tables (which are line
  oriented blocks with implicit line breaks).
 
*** Non breaking space
~~~~~~~~~~~~~~~~~~~~~~
 
+----------------------+
  Non\ breaking\ space.
+----------------------+
 
  A backslash character (<<<\\>>>) followed by a space character.
 
*** Special character
~~~~~~~~~~~~~~~~~~~~~
 
+---------------------------------------------------------------------------+
  Escaped special characters: \~, \=, \-, \+, \*, \[, \], \<, \>, \{, \}, \\.
+---------------------------------------------------------------------------+
 
  In certain contexts, these characters have a special meaning and therefore
  must be escaped if needed as is. They are escaped by adding a backslash in
  front of them. The backslash may itself be escaped by adding another
  backslash in front of it.
 
  Note that an asterisk, for example, needs to be escaped only if its begins a
  paragraph. (<<<*>>> has no special meaning in the middle of a paragraph.)
 
+--------------------------------------+
  Copyright symbol: \251, \xA9, \u00a9.
+--------------------------------------+
 
  Latin-1 characters (whatever is the encoding of the APT document) may be
  specified by their codes using a backslash followed by one to three octal
  digits or by using the <<<\x>>><NN> notation, where <NN> are two hexadecimal
  digits.
 
  Unicode characters may be specified by their codes using the <<<\u>>><NNNN>
  notation, where <NNNN> are four hexadecimal digits.
 
*** Comment
~~~~~~~~~~~
 
+---------------+
~~Commented out.
+---------------+
 
  Text found after two tildes (<<<\~~>>>) is ignored up to the end of line.
 
  A line of <<<~>>> is often used to ``underline'' section titles in order to
  make them stand out of other paragraphs.
 
 
* The APT format at a glance
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
------------------------------------------------------------------------------
                    ------
                    Title
                    ------
                    Author
                    ------
                     Date
 
  Paragraph 1, line 1.
  Paragraph 1, line 2.
 
  Paragraph 2, line 1.
  Paragraph 2, line 2.
 
Section title
 
* Sub-section title
 
** Sub-sub-section title
 
*** Sub-sub-sub-section title
 
**** Sub-sub-sub-sub-section title
 
      * List item 1.
 
      * List item 2.
 
    Paragraph contained in list item 2.
 
        * Sub-list item 1.
 
        * Sub-list item 2.
 
      * List item 3.
        Force end of list:
 
      []
 
+------------------------------------------+
Verbatim text not contained in list item 3
+------------------------------------------+
 
      [[1]] Numbered item 1.
 
                [[A]] Numbered item A.
 
                [[B]] Numbered item B.
 
      [[2]] Numbered item 2.
 
  List numbering schemes: [[1]], [[a]], [[A]], [[i]], [[I]].
 
      [Defined term 1] of definition list.
 
      [Defined term 2] of definition list.
 
+-------------------------------+
Verbatim text
            in a box
+-------------------------------+
 
  --- instead of +-- suppresses the box around verbatim text.
 
[Figure name] Figure caption
 
*----------*--------------+----------------:
| Centered | Left-aligned | Right-aligned  |
| cell 1,1 | cell 1,2     | cell 1,3       |
*----------*--------------+----------------:
| cell 2,1 | cell 2,2     | cell 2,3       |
*----------*--------------+----------------:
Table caption
 
  No grid, no caption:
 
*-----*------*
 cell | cell
*-----*------*
 cell | cell
*-----*------*
 
  Horizontal line:
 
=======================================================================
 
^L
  New page.
 
  <Italic> font. <<Bold>> font. <<<Monospaced>>> font.
 
  {Anchor}. Link to {{anchor}}. Link to {{http://www.pixware.fr}}.
  Link to {{{anchor}showing alternate text}}.
  Link to {{{http://www.pixware.fr}Pixware home page}}.
 
  Force line\
  break.
 
  Non\ breaking\ space.
 
  Escaped special characters: \~, \=, \-, \+, \*, \[, \], \<, \>, \{, \}, \\.
 
  Copyright symbol: \251, \xA9, \u00a9.
 
~~Commented out.
 
------------------------------------------------------------------------------