|9Chapter Links| |1Links| |^ Links to other parts of the document and to external resources are introduced with the usual Vbar symbol. |^ A URL beginning with a scheme (e.g. |=https://||, |=ftp://||) or a |=mailto:|| only requires closure with a delimiting Vbar. If a |*Vbar-delimitted description| does not follow then the URL is used as the descriptor. If the tag ends in, or URL begins with, a |=.%| (percent) the link opens in a new browser page. |table| |~_ |: Syntax |: Example |~ |~ |. |=\|https://wasd.vsm.com.au/\|| |. |https://wasd.vsm.com.au/| |~ |. |=\|https://wasd.vsm.com.au/\|A link to WASD\|| |. |https://wasd.vsm.com.au/|A link to WASD| |~ |. |=\|%https://wasd.vsm.com.au/wasd/\|| |. |%https://wasd.vsm.com.au/wasd/| |~ |.; |=\|%https://wasd.vsm.com.au/wasd/\|WASD \\ |^-download in a new page\|| |. |%https://wasd.vsm.com.au/wasd/|WASD \ download in a new page| |!table| |^ Where a URL does not begin with a scheme the |=\|link\|| and |=\|link%\|| tags must be used. Of course, URLs with schemes can be specfied using |=\|link\|| as well, the sans-|=\|link\|| is just a shorthand approach. |^ A URL beginning with just text (ie. without a URL) is considered a document section and is linked to that. |table| |~_ |: Syntax |: Example |~ |~ |. |=\|link\|Chapter Insertion\|| |. |link|Chapter Insertion| |~ |.; |=\|link%\|Chapter Insertion\|jump to Insertion\|| |. |link%|Chapter Insertion|jump to Insertion| |~ |.; |=\|link*&background-color:azure;\|Chapter \\ |^-Insertion\|bold, coloured link to Insertion\|| |. |link*&background-color:azure;|Chapter \ Insertion|bold, coloured link to Insertion| |!table| |^ A URL beginning with a |/fragment hash| (|=.#||) moves the browser context to the specified fragment. |table| |~_ |: Syntax |: Example |~ |~ |. |=\|link\|#tableofcontent\|| |. |link|#tableofcontent| |~ |. |=\|link%\|#tableofcontent\|Jump to \\ |^-Table of Content\|| |. |link%|#tableofcontent|Jump to \ Table of Content| |!table| |^ The Vbar-delimitted description can be an image. |table| |~_ |: Syntax |: Example |~ |~ |. |=\|link%\|/wasd_root/src/wasdoc/*.*\|image&\\|^- width:3em;\|../doc/wasdoc.png\|| |. |link%|/wasd_root/src/wasdoc/*.*|image&width:3em;|../doc/wasdoc.png| |!table| |2The Essential Fragment| |^ A |'wasdoc.wasDOC| fragment, being based on the HTML fragment (the string following any |=\#| in a URL), is an identified location within a document. |'wasdoc.wasDOC| describes these as |/identifiers| and links to them, either implicitly (internal links) or explicitly (externally into a document), as |/references||. |^ |*Each section| heading has |*three identifiers||. |number#| |& a dot-point numeric corresponding to the section number shown in major headings |& one derived from the text of the heading (alphanumeric all lower-case string) |& combination with a period-separated concatentation of the numeric and text |!number| |^ All internal document links use the concatenated identifier. |^ The dot-point numeric can change with the addition or deletion of intervening headings but the text-derived fragment identifier only changes when the heading is modified. It is a good choice when making a reference from another part of the document, or from an external document. The internal link (combination) can generally be used as an external reference by just removing the leading numeric element and using the alphanumeric string. The dot-point may also be used as the fragment identifier. |^ Different headings having the same text will result in duplicate fragment identifiers and generally the first in the document will be targeted by the browser. So as much as practicable, avoid using the same description for multiple headings. If this is unavoidable the location can also be explicitly located with a unique identifier using an explicit cross-reference as mentioned above. Alternatively, prefix the alphanumeric with the dot-point number of the most recent numbered heading. |^ The above section may be directly accessed using |simple#| |& \|=.#4.1||\ |& \|=.#4.1.theessentialfragment||\ |& \|=.#theessentialfragment||\ |!simple| |2Links to Other Documents| |^ Links to |'wasdoc.wasDOC| documents are are indicated by a path with a final element (the fragment) beginning with two hashes (|=./##||). The two differentiate it as a |'wasdoc.wasDOC| link and the path and hash are made compliant with |'wasdoc.wasDOC| requirements. One of the hashes is absorbed when generating the link. The fragment can be empty. The links can be relative, or site-absolute, or full URL references. The final element of the path is the fragment reference. This is an example of a link to a document in an adjacent location (directory). The variants are all equivalent. |mono| \|link\|../Doc Two/##Somewhere Inside It\|\This is another document\| \|link\|../doc_two/##Somewhere Inside It\|\This is another document\| \|link\|../Doc Two/##somewhereinsideit\|\This is another document\| \|link\|../doc_two/##somewhereinsideit\|\This is another document\| \|link\|/wasd_root/src/wasdoc/Doc Two/##Somewhere Inside It\|\This is another document\| \|link\|/wasd_root/src/wasdoc/doc_two/##somewhereinsideit\|\This is another document\| || In thse examples, the translated name of the directory containing the document would be the equivalent of |=.[-.doc_two]| and the fragment reference |=#somewhereinsideit||. The browser would use the URI and it looks and behaves something like this |mono| |link%|../Doc Two/##Somewhere Inside It|This is another document| || |0Start of Document| |^ To link to the beginning of a document just include an empty hash |mono| \|link\|../Doc Two/##\| || For this to work without additional mapping by the server there needs to be a one-to-one correspondence between the referenced document and the translated path to that document. So a rule such as |mono| pass /documents/* /doc_root/* || would provide access to document locations |mono| /documents/document_one/ /documents/document_two/ /documents/yet_another_document/ || |^ Of course additional mappings may be in place to locate the documents just about anywhere. |0Specific Section of Whole Document| |^ Using the syntax described below a link to a section of another document may be coupled with a separate link to the whole document. Two lots of two consecutive plus symbols delineate the section link, the conjunction, and the title of the document. |mono| \|link%\|../Doc Two/##Somewhere Inside It++in++Document Two\| || |^ and it looks and behaves something like this |mono| |link%|../Doc Two/##Somewhere Inside It++in++Document Two| || //-----------------------------------------------------------------------------