[0001]
[0002]
[0003]
[0004]
[0005]
[0006]
[0007]
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
[0035]
[0036]
[0037]
[0038]
[0039]
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
[0046]
[0047]
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
[0055]
[0056]
[0057]
[0058]
[0059]
[0060]
[0061]
[0062]
[0063]
[0064]
[0065]
[0066]
[0067]
[0068]
[0069]
[0070]
[0071]
[0072]
[0073]
[0074]
[0075]
[0076]
[0077]
[0078]
[0079]
[0080]
[0081]
[0082]
[0083]
[0084]
[0085]
[0086]
[0087]
[0088]
[0089]
[0090]
[0091]
[0092]
[0093]
[0094]
[0095]
[0096]
[0097]
[0098]
[0099]
[0100]
[0101]
[0102]
[0103]
[0104]
[0105]
[0106]
[0107]
[0108]
[0109]
[0110]
[0111]
[0112]
[0113]
[0114]
[0115]
[0116]
[0117]
[0118]
[0119]
[0120]
[0121]
[0122]
[0123]
[0124]
[0125]
[0126]
[0127]
[0128]
[0129]
[0130]
[0131]
[0132]
[0133]
[0134]
[0135]
[0136]
[0137]
[0138]
[0139]
[0140]
[0141]
[0142]
[0143]
[0144]
[0145]
[0146]
[0147]
[0148]
[0149]
[0150]
[0151]
[0152]
[0153]
[0154]
[0155]
[0156]
[0157]
[0158]
[0159]
[0160]
[0161]
[0162]
[0163]
[0164]
[0165]
[0166]
[0167]
[0168]
[0169]
[0170]
[0171]
[0172]
[0173]
[0174]
[0175]
[0176]
[0177]
[0178]
[0179]
[0180]
[0181]
[0182]
[0183]
[0184]
[0185]
[0186]
[0187]
[0188]
[0189]
[0190]
[0191]
[0192]
[0193]
[0194]
[0195]
[0196]
[0197]
[0198]
[0199]
[0200]
[0201]
[0202]
[0203]
[0204]
[0205]
[0206]
[0207]
[0208]
[0209]
[0210]
[0211]
[0212]
[0213]
[0214]
[0215]
[0216]
[0217]
[0218]
[0219]
[0220]
[0221]
[0222]
[0223]
[0224]
[0225]
[0226]
[0227]
[0228]
[0229]
[0230]
[0231]
[0232]
[0233]
[0234]
[0235]
[0236]
[0237]
[0238]
[0239]
[0240]
[0241]
[0242]
[0243]
[0244]
[0245]
[0246]
[0247]
[0248]
[0249]
[0250]
[0251]
[0252]
[0253]
[0254]
[0255]
[0256]
[0257]
[0258]
[0259]
[0260]
[0261]
[0262]
[0263]
[0264]
[0265]
[0266]
[0267]
[0268]
[0269]
[0270]
[0271]
[0272]
[0273]
[0274]
[0275]
[0276]
[0277]
[0278]
[0279]
[0280]
[0281]
[0282]
[0283]
[0284]
[0285]
[0286]
[0287]
[0288]
[0289]
[0290]
[0291]
[0292]
[0293]
[0294]
[0295]
[0296]
[0297]
[0298]
[0299]
[0300]
[0301]
[0302]
[0303]
[0304]
[0305]
[0306]
[0307]
[0308]
[0309]
[0310]
[0311]
[0312]
[0313]
[0314]
[0315]
[0316]
[0317]
[0318]
[0319]
[0320]
[0321]
[0322]
[0323]
[0324]
[0325]
[0326]
[0327]
[0328]
[0329]
[0330]
[0331]
[0332]
[0333]
[0334]
[0335]
[0336]
[0337]
[0338]
[0339]
[0340]
[0341]
[0342]
[0343]
[0344]
[0345]
[0346]
[0347]
[0348]
[0349]
[0350]
[0351]
[0352]
[0353]
[0354]
[0355]
[0356]
[0357]
[0358]
[0359]
[0360]
[0361]
[0362]
[0363]
[0364]
[0365]
[0366]
[0367]
[0368]
[0369]
[0370]
[0371]
[0372]
[0373]
[0374]
[0375]
[0376]
[0377]
[0378]
[0379]
[0380]
[0381]
[0382]
[0383]
[0384]
[0385]
[0386]
[0387]
[0388]
[0389]
[0390]
[0391]
[0392]
[0393]
[0394]
[0395]
[0396]
[0397]
[0398]
[0399]
[0400]
[0401]
[0402]
[0403]
[0404]
[0405]
[0406]
[0407]
[0408]
[0409]
[0410]
[0411]
[0412]
[0413]
[0414]
[0415]
[0416]
[0417]
[0418]
[0419]
[0420]
[0421]
[0422]
[0423]
[0424]
[0425]
[0426]
[0427]
[0428]
[0429]
<!DOCTYPE html>
<!-- WASDOC AXP-2.0.0 (CGILIB AXP-1.9.9) -->
<!-- wasDOC Copyright (C) 2019,2020 Mark G.Daniel - Apache-2.0 licenced -->
<!--  3-NOV-2021 02:57 -->
<noscript>NOTE: SOME FUNCTIONALITY EMPLOYS JAVASCRIPT</noscript>
<div id="erreport1" style="display:none;"></div>
<script>
function errorReport(string) {
   for (var cnt = 1; cnt <= 2; cnt++) {
      var err = document.getElementById('erreport'+cnt);
      err.style.display = 'block';
      err.innerHTML += string;
   }
}
</script>
<style type="text/css">
html { font-family: arial, verdana, sans-serif; font-size:12pt; margin:1em; }
h1 { font-size:124%; font-style:bold;
     margin-top:1em; margin-bottom:0.5em; }
h2 { font-size:120%; font-style:bold;
     margin-top:1.1em; margin-bottom:0.4em; }
h3 { font-size:116%; font-style:bold;
     margin-top:1.0em; margin-bottom:0.3em; }
h4 { font-size:112%; font-style:bold;
     margin-top:1.1em; margin-bottom:0.3em; }
h5 { font-size:112%; font-style:bold; 
     margin-top:1.1em; margin-bottom:0.3em; }
h6 { font-size:112%; font-style:bold; padding:0; margin:0; }

h1 .text { text-decoration:underline; }
h1 .numb { padding-right:0.8em; }
h1 .numb:empty { display:none; padding-right:0; }
h2 .numb { padding-right:0.8em; }
h2 .numb:empty { display:none; padding-right:0; }
h3 .numb { padding-right:0.8em; }
h3 .numb:empty { display:none; padding-right:0; }
h4 .numb { padding-right:0.8em; }
h4 .numb:empty { display:none; padding-right:0; }
h5 .numb { display:none; padding-right:0; }
h6 .numb { display:none; padding-right:0; }

kbd { font-family:monospace; }

noscript { font-size:1.2em; }

p { line-height:1.1em; margin-top:1em; margin-bottom:1em; }

.chunk { font-size:130%; text-decoration:underline; }
.head {}
.high {}
.bold { font-weight:bold; }
.center { text-align:center; }
.italic { font-style:italic; }
.left { text-align:left; }
.nowrap { white-space:nowrap; }
.prewrap { white-space:pre; }
.right { text-align:right; }
.strike { text-decoration:line-through; }
.under { text-decoration:underline; }

.backlight { background-color:#f2f2f2; }
.display0 { display:none; }

img { max-width:100%; }
.imglink { }

.link { }
.blank { }

.list { margin-bottom:1em; }
.list li { margin-top:0.5em; }
.list0 li { margin-top:0; }
.item {}

.tabl { border-collapse:collapse; text-align:left; margin:0.4em 2em 0.5em 2em; }
.tabu { border-collapse:collapse; text-align:right; margin:0.4em 2em 0.5em 2em; }

.tabr { vertical-align:top; }
.tabh { padding:0.2em 0 0 2em; margin:0; }
.tabd { padding:0.1em 0 0 2em; margin:0; }
.tabh:first-of-type, td:first-of-type { padding-left:0; }

.tabu .tabh,
.tabu .tabd { border:1px solid gray; padding:0.2em 0.3em 0.2em 0.3em; }
.tab0 { border:none; visibility:hidden; max-width:1em; 
        white-space:nowrap; overflow:hidden; }

.tabauto { margin-left:auto; margin-right:auto; }

.tabr:empty { height:0.2em; }
.tabu .tabh:empty, .tabu .tabd:empty { border:none; visibility:hidden; }

.error { font-size:110%; color:black; background-color:yellow;
         font-family:sans-serif; font-weight:bold; font-style:normal;
         width:95%; border:solid 1px gray; padding:0.5em 1em 0.5em 1em; }
.error::before { content:'\026a0\00a0'; }
.image { }
.page { width:98%; border:1px dashed gray; margin:1.5em 0 1.8em 0; }
.epage { width:98%; border:1px dashed black; margin:1.5em 0 1.8em 0; }
.monosp { font-family:monospace; }
.ppage { display:none; }
.simple { list-style-type:none; }
.valtop { vertical-align:top; }
.valmid { vertical-align:middle; }
.valbot { vertical-align:bottom; }

.code { border-style:solid; border-width:0 0 0 1px; padding-left:1em;
        font-family:monospace; white-space:pre; }
.block { }
.blockof { margin:0.4em 2em 0.5em 2em; }
.example { border-style:dashed; border-width:0 0 0 1px; padding-left:1em;
           margin-top:0.5em; margin-bottom:0.5em; white-space:pre; }
.indent { margin-left:2em; margin-right:2em; }
.noindent { margin-left:0; margin-right:0; }
.inblock { display:inline-block; }
.mono { white-space:pre; font-family:monospace; }
.note { margin:0.4em 2em 0.5em 2em; page-break-inside:avoid; }
.note h5 { margin-top:0 }
.note_hr { width:80%; border:1px solid gray; }
.prop { padding-left:1em; margin-top:0.5em; margin-bottom:0.5em; }
.quote { border-style:dashed; border-width:0 0 0 1px; padding-left:1em;
         margin-top:0.5em; margin-bottom:0.5em; }
.this { display:none; }

a:link,a:visited { color:black; text-decoration:none; }
a:hover,a:active { text-decoration:underline; }
a:focus { outline:0; } 

:target:before { content:''; display:block; height:0.1em; margin:-0.1em; }
a.link:link, a.link:visited,a.link:active 
{ color:midnightBlue; text-decoration:underline; text-decoration-style:solid; }

.TOC1cols1 { width:80%; max-width:80%; }
.TOC1cols2 { column-count:2; width:80%; max-width:80%; }
.TOC1cols3 { column-count:3; max-width:90%; max-width:90%; }
.TOC1cols4 { column-count:4; max-width:100%; max-width:100%; }
.TOC1table { margin-left:2em; white-space:nowrap; break-inside:auto; }
.TOC1table tr { vertical-align:top; text-align:left; break-inside:avoid; break-after:auto; }
.TOC1table td+td { padding:0 0 0 0.5em; }
.TOC1table .numb { width:3em; max-width:3em; }
.TOC1table .sepr { width:5em; max-width:6em; overflow:hidden; }
.TOC1table .majr { font-weight:bold; }
.TOC1table .text { white-space:normal; }

/* These are due to Firefox (at least <= 76) recalcitrant multi-column handling.
   Web search "Split table into css columns, issue in Firefox" (stackoverflow).
   "Good grief, Charlie Brown!" */
 
.TOC1cols2 table,
.TOC1cols2 tbody,
.TOC1cols2 tr,
.TOC1cols3 table,
.TOC1cols3 tbody,
.TOC1cols3 tr,
.TOC1cols4 table,
.TOC1cols4 tbody,
.TOC1cols4 tr { display:block; padding:0; }

.TOC2cols1 { width:60%; max-width:60%; }
.TOC2cols2 { column-count:2; width:70%; max-width:70%; }
.TOC2cols3 { column-count:3; width:80%; max-width:80%; }
.TOC2cols4 { column-count:4; width:90%; max-width:90%; }
.TOC2table { margin-left:2em; white-space:nowrap; break-inside:auto; }
.TOC2table tr { vertical-align:top; text-align:left; break-inside:avoid; break-after:auto; }
.TOC2table .numb { font-weight:bold; padding-right:0.5em; }
.TOC2table .text { width:100%; white-space:normal; }

/* see "recalcitrant" above */
.TOC2cols2 table,
.TOC2cols2 tbody,
.TOC2cols2 tr,
.TOC2cols3 table,
.TOC2cols3 tbody,
.TOC2cols3 tr,
.TOC2cols4 table,
.TOC2cols4 tbody,
.TOC2cols4 tr { display:block; padding:0; }

.NAVtable { margin:0.1em 0 0 2em; }
.NAVtable td { font-size:110%; font-weight:bold; padding:0; margin:0; }
.NAVtable a { padding:0 0.5em 0 0.5em; text-decoration:none; }

.IDXcols1 { width:80%; max-width:80%; }
.IDXcols2 { column-count:2; width:90%; max-width:90%; }
.IDXcols3 { column-count:3; width:95%; max-width:95%;  }
.IDXcols4 { column-count:4; width:100%; max-width:100%;  }
.IDXtable { margin:1em 0 1em 2em; white-space:nowrap; break-inside:auto; }
.IDXtable tr { vertical-align:top; text-align:left; break-inside:avoid; break-after:auto; }
.IDXtable .alpha { font-weight:bold; min-width:2em; }
.IDXtable .text  { width:100%; white-space:normal; }
.IDXtable .para:before { content:'\00b6\00a0'; }

/* see "recalcitrant" above */
.IDXcols2 table,
.IDXcols2 tbody,
.IDXcols2 tr,
.IDXcols3 table,
.IDXcols3 tbody,
.IDXcols3 tr,
.IDXcols4 table,
.IDXcols4 tbody,
.IDXcols4 tr { display:block; padding:0; }

.insight { background-color:cyan; font-family:monospace;
           padding:0 0.2em 0 0.2em; margin:0 0.2em 0 0.2em;
           font-size:100%; font-style:normal; font-weight:normal;
           text-decoration:none; }

.wasdoc { font-family: "Lucida Console", Monaco, monospace; 
          letter-spacing:-0.07em; }

@media screen { .blank::after { content:"\2924"; } 
                .print { display:none; }
}

@media print {
   table { page-break-inside:avoid; }
   .noprint { display:none; }
   .page { border:none; page-break-after: always; }
   .epage { display:none; }
   .ppage { page-break-after:always; }
   .NAVtable { display:none; }
   .NAVprint { display:block!important; }
}

@page { margin:2cm 1cm 2cm 1cm;  }
</style>
<!-- source:0000_SCRIPTING.WASDOC -->

<style type="text/css">._smiley::after { font-size:150%; vertical-align:middle; content:'\263a' }</style>
<style type="text/css">._frowny::after { font-size:150%; vertical-align:middle; content:'\2639' }</style>

<a id="0." href="#"></a>
<title>WASD Scripting Environment</title>
<a id="0.0.0.0.1" href="#"></a>
<a id="0.wasdscriptingenvironment" href="#"></a>
<a id="wasdscriptingenvironment" href="#"></a>
<h1 class="head" style="font-size:140%;"><span class="text">WASD Scripting Environment</span></h1>

<p> For version 12.0 release of WASD VMS Web Services.

<p> Published November 2021

<p> Document generated using <span class="high wasdoc">wasDOC</span> version 2.0.0

<a id="0.0.0.0.2" href="#"></a>
<a id="0.abstract" href="#"></a>
<a id="abstract" href="#"></a>
<h5 class="head"><span class="text">Abstract</span></h5>

<p> This document introduces the WASD Web Services package and provides detailed
installation, update and configuration instructions.

<p> For installation and update details see
<a class="link blank" target="_blank" href="../install/">WASD Web Services - Installation</a>

<p> For detailed configuration information see
<a class="link blank" target="_blank" href="../config/">WASD Web Services - Configuration</a>

<p> For the more significant features and facilities available see
<a class="link blank" target="_blank" href="../features/">WASD Web Services - Features</a>

<p> And for a description of WASD Web document, SSI and directory listing
behaviours and options, <a class="link blank" target="_blank" href="../env/">WASD Web Services - Environment</a>

<a id="0.0.0.0.3" href="#"></a>
<a id="0.onlinesearch" href="#"></a>
<a id="onlinesearch" href="#"></a>
<h5 class="head"><span class="text">Online Search</span></h5>
<p>
<table class="tabl noindent" style="border:1px #808080 solid;background-color:#eeeeee;margin-bottom:1.5em;">
<tr class="tabr">
<td class="tabd" style="padding:0.5em;"><form action="/cgi-bin/query/wasd_root/wasdoc/config/*.html" target="_top">
<input type="submit" value="Search for:">&nbsp;
<input type="text" name="search" size="20">&nbsp;
<input type="reset" value="Reset">
</form>
</table>

<p> <span class="high bold">WASD VMS Web Services &ndash; Copyright &copy; 1996-2021 Mark G. Daniel</span>

<a id="0.0.0.0.3.1" href="#"></a>
<a id="0.apachelicenseversion20" href="#"></a>
<a id="apachelicenseversion20" href="#"></a>
<h6 class="head display0"><span class="text">Apache License, Version 2.0</span></h6>
<a id="0.0.0.0.3.2" href="#"></a>
<a id="0.license" href="#"></a>
<a id="license" href="#"></a>
<h6 class="head display0"><span class="text">License</span></h6>
<p> Licensed under the <span class="high bold">Apache License</span>, Version 2.0 (the &quot;License&quot;);
<div class="blockof quote" style="font-size:0.9em;width:49em;margin:-0.5em 0 0 1em;">you may not use this software except in compliance with the License.
You may obtain a copy of the License at
<p> <a class="link blank" target="_blank" style="margin-left:1em;" href="https://www.apache.org/licenses/LICENSE-2.0">https://www.apache.org/licenses/LICENSE-2.0</a>
<p> Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
</div>

<p> <a class="link" href="mailto:Mark.Daniel@wasd.vsm.com.au">Mark.Daniel@wasd.vsm.com.au</a>
<br> <span class="high bold italic">A pox on the houses of all spamers.  Make that two poxes.</span>

<p> All copyright and trademarks within this document belong to their rightful
owners.  See <a class="link" href="scripting013.html#13.attributionandacknowledgement">13. Attribution and Acknowledgement</a>.


<p> This is a static (file), multipart document.
<br> Alternative <a class="link" href="/wasd_root/wasdoc/scripting/">single</a> static and
<a class="link" href="/cgi-bin/wasdoc/wasd_root/wasdoc/scripting/">dynamic</a> documents.

<br> Links followed by &#10532; open in a new page.

<a id="0.0.0.0.4.2" href="#"></a>
<a id="0.tableofcontent" href="#"></a>
<a id="tableofcontent" href="#"></a>
<h1 class="head" style="font-size:120%;"><span class="text">Table of Content</span></h1>


<div class="TOC1cols2">
<table class="TOC1table">
<tr><td class="sepr"><a href="scripting001.html#1.introduction">1.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting001.html#1.introduction">Introduction</a>
<tr><td class="sepr"><a href="scripting001.html#1.1.scriptingaccounts">1.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.1.scriptingaccounts">Scripting Accounts</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.scriptingprocesses">1.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.scriptingprocesses">Scripting Processes</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.1.processmanagement">1.2.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.1.processmanagement">Process Management</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.2.processnomenclature">1.2.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.2.processnomenclature">Process Nomenclature</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.3.processscripting">1.2.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.3.processscripting">Process Scripting</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.3.1.personascripting">1.2.3.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.3.1.personascripting">Persona Scripting</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.3.2.restrictingpersonascripting">1.2.3.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.3.2.restrictingpersonascripting">Restricting Persona Scripting</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.3.3.processpriorities">1.2.3.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.3.3.processpriorities">Process Priorities</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.4.scriptprocessdefault">1.2.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.4.scriptprocessdefault">Script Process Default</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.5.scriptprocessparsetype">1.2.5</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.5.scriptprocessparsetype">Script Process Parse Type</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.6.scriptprocessrundown">1.2.6</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.6.scriptprocessrundown">Script Process Run-Down</a>
<tr><td class="sepr"><a href="scripting001.html#1.2.7.clientrecalcitrance">1.2.7</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.2.7.clientrecalcitrance">Client Recalcitrance</a>
<tr><td class="sepr"><a href="scripting001.html#1.3.scriptproctor">1.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.3.scriptproctor">Script Proctor</a>
<tr><td class="sepr"><a href="scripting001.html#1.4.cachingscriptoutput">1.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.4.cachingscriptoutput">Caching Script Output</a>
<tr><td class="sepr"><a href="scripting001.html#1.5.enablingascript">1.5</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.5.enablingascript">Enabling A Script</a>
<tr><td class="sepr"><a href="scripting001.html#1.6.scriptmapping">1.6</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.6.scriptmapping">Script Mapping</a>
<tr><td class="sepr"><a href="scripting001.html#1.7.scriptruntime">1.7</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.7.scriptruntime">Script Run-Time</a>
<tr><td class="sepr"><a href="scripting001.html#1.8.unixsyntax">1.8</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.8.unixsyntax">Unix Syntax</a>
<tr><td class="sepr"><a href="scripting001.html#1.9.scriptinglogicals">1.9</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.9.scriptinglogicals">Scripting Logicals</a>
<tr><td class="sepr"><a href="scripting001.html#1.10.scriptingscratchspace">1.10</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.10.scriptingscratchspace">Scripting Scratch Space</a>
<tr><td class="sepr"><a href="scripting001.html#1.11.dclprocessingofrequests">1.11</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.11.dclprocessingofrequests">DCL Processing of Requests</a>
<tr><td class="sepr"><a href="scripting001.html#1.12.scriptingfunctionlibrary">1.12</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.12.scriptingfunctionlibrary">Scripting Function Library</a>
<tr><td class="sepr"><a href="scripting001.html#1.13.scriptrequestedservergeneratederrorresponses">1.13</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting001.html#1.13.scriptrequestedservergeneratederrorresponses">Script-Requested, Server-Generated Error Responses</a>
<tr><td class="sepr"><a href="scripting002.html#2.cgi">2.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting002.html#2.cgi">CGI</a>
<tr><td class="sepr"><a href="scripting002.html#2.1.cgienvironmentvariables">2.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.1.cgienvironmentvariables">CGI Environment Variables</a>
<tr><td class="sepr"><a href="scripting002.html#2.2.scriptoutput">2.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.2.scriptoutput">Script Output</a>
<tr><td class="sepr"><a href="scripting002.html#2.2.1.cgicompliantoutput">2.2.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.2.1.cgicompliantoutput">CGI Compliant Output</a>
<tr><td class="sepr"><a href="scripting002.html#2.2.2.nonparsedheaderoutput">2.2.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.2.2.nonparsedheaderoutput">Non-Parsed-Header Output</a>
<tr><td class="sepr"><a href="scripting002.html#2.2.3.bulkcontentoutput">2.2.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.2.3.bulkcontentoutput">Bulk Content Output</a>
<tr><td class="sepr"><a href="scripting002.html#2.3.rawhttpinputpostprocessing">2.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.3.rawhttpinputpostprocessing">Raw HTTP Input (POST Processing)</a>
<tr><td class="sepr"><a href="scripting002.html#2.4.cgifunctionlibrary">2.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.4.cgifunctionlibrary">CGI Function Library</a>
<tr><td class="sepr"><a href="scripting002.html#2.5.cgiutlutility">2.5</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting002.html#2.5.cgiutlutility">CGIUTL Utility</a>
<tr><td class="sepr"><a href="scripting003.html#3.cgiplus">3.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting003.html#3.cgiplus">CGIplus</a>
<tr><td class="sepr"><a href="scripting003.html#3.1.cgiplusprogramming">3.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting003.html#3.1.cgiplusprogramming">CGIplus Programming</a>
<tr><td class="sepr"><a href="scripting003.html#3.2.codeexamples">3.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting003.html#3.2.codeexamples">Code Examples</a>
<tr><td class="sepr"><a href="scripting003.html#3.3.otherconsiderations">3.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting003.html#3.3.otherconsiderations">Other Considerations</a>
<tr><td class="sepr"><a href="scripting004.html#4.runtimeenvironments">4.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting004.html#4.runtimeenvironments">Run-Time Environments</a>
<tr><td class="sepr"><a href="scripting004.html#4.1.rteprogramming">4.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting004.html#4.1.rteprogramming">RTE Programming</a>
<tr><td class="sepr"><a href="scripting004.html#4.2.serverconfiguration">4.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting004.html#4.2.serverconfiguration">Server Configuration</a>
<tr><td class="sepr"><a href="scripting005.html#5.websocket">5.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting005.html#5.websocket">WebSocket</a>
<tr><td class="sepr"><a href="scripting005.html#5.1.multiclientwebsocketapplications">5.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.1.multiclientwebsocketapplications">Multi-Client WebSocket Applications</a>
<tr><td class="sepr"><a href="scripting005.html#5.2.websocketapplication">5.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.2.websocketapplication">WebSocket Application</a>
<tr><td class="sepr"><a href="scripting005.html#5.3.websocketlibrary">5.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.3.websocketlibrary">WebSocket Library</a>
<tr><td class="sepr"><a href="scripting005.html#5.4.websocketapplicationexamples">5.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.4.websocketapplicationexamples">WebSocket Application Examples</a>
<tr><td class="sepr"><a href="scripting005.html#5.4.1.chat">5.4.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.4.1.chat">Chat</a>
<tr><td class="sepr"><a href="scripting005.html#5.4.2.echo">5.4.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.4.2.echo">Echo</a>
<tr><td class="sepr"><a href="scripting005.html#5.4.3.mouse">5.4.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.4.3.mouse">Mouse</a>
<tr><td class="sepr"><a href="scripting005.html#5.5.websocketconfiguration">5.5</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.5.websocketconfiguration">WebSocket Configuration</a>
<tr><td class="sepr"><a href="scripting005.html#5.5.1.websocketthrottle">5.5.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.5.1.websocketthrottle">WebSocket Throttle</a>
<tr><td class="sepr"><a href="scripting005.html#5.5.2.websocketcommandline">5.5.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.5.2.websocketcommandline">WebSocket Command-Line</a>
<tr><td class="sepr"><a href="scripting005.html#5.5.3.websocketversion">5.5.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.5.3.websocketversion">WebSocket Version</a>
<tr><td class="sepr"><a href="scripting005.html#5.6.websocketthroughput">5.6</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.6.websocketthroughput">WebSocket Throughput</a>
<tr><td class="sepr"><a href="scripting005.html#5.7.websocketreferences">5.7</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.7.websocketreferences">WebSocket References</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.wasdquotrawquotsocket">5.8</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.wasdquotrawquotsocket">WASD &quot;Raw&quot;Socket</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.1.rawsocketapplication">5.8.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.1.rawsocketapplication">RawSocket Application</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.2.rawsocketlibrary">5.8.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.2.rawsocketlibrary">RawSocket Library</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.3.rawsocketapplicationexamples">5.8.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.3.rawsocketapplicationexamples">RawSocket Application Examples</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.3.1.chat">5.8.3.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.3.1.chat">Chat</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.3.2.echo">5.8.3.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.3.2.echo">Echo</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.3.3.terminalserver">5.8.3.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.3.3.terminalserver">Terminal Server</a>
<tr><td class="sepr"><a href="scripting005.html#5.8.4.rawsocketconfiguration">5.8.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting005.html#5.8.4.rawsocketconfiguration">RawSocket Configuration</a>
<tr><td class="sepr"><a href="scripting006.html#6.cgicallouts">6.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting006.html#6.cgicallouts">CGI Callouts</a>
<tr><td class="sepr"><a href="scripting006.html#6.1.requestsandresponses">6.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting006.html#6.1.requestsandresponses">Requests and Responses</a>
<tr><td class="sepr"><a href="scripting006.html#6.2.codeexamples">6.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting006.html#6.2.codeexamples">Code Examples</a>
<tr><td class="sepr"><a href="scripting007.html#7.isapi">7.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting007.html#7.isapi">ISAPI</a>
<tr><td class="sepr"><a href="scripting007.html#7.1.cgisapi">7.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting007.html#7.1.cgisapi">CGIsapi</a>
<tr><td class="sepr"><a href="scripting007.html#7.2.writingisapiscripts">7.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting007.html#7.2.writingisapiscripts">Writing ISAPI Scripts</a>
<tr><td class="sepr"><a href="scripting007.html#7.3.serverconfiguration">7.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting007.html#7.3.serverconfiguration">Server Configuration</a>
<tr><td class="sepr"><a href="scripting008.html#8.decnetamposu">8.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting008.html#8.decnetamposu">DECnet &amp; OSU</a>
<tr><td class="sepr"><a href="scripting008.html#8.1.scriptsystemenvironment">8.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.1.scriptsystemenvironment">Script System Environment</a>
<tr><td class="sepr"><a href="scripting008.html#8.1.1.proxyaccess">8.1.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.1.1.proxyaccess">Proxy Access</a>
<tr><td class="sepr"><a href="scripting008.html#8.1.2.decnetobjects">8.1.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.1.2.decnetobjects">DECnet Objects</a>
<tr><td class="sepr"><a href="scripting008.html#8.1.3.reducingscriptlatency">8.1.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.1.3.reducingscriptlatency">Reducing Script Latency</a>
<tr><td class="sepr"><a href="scripting008.html#8.1.4.decnetosustartup">8.1.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.1.4.decnetosustartup">DECnet/OSU Startup</a>
<tr><td class="sepr"><a href="scripting008.html#8.2.cgi">8.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.2.cgi">CGI</a>
<tr><td class="sepr"><a href="scripting008.html#8.3.osudecthreadsemulation">8.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.3.osudecthreadsemulation">OSU (DECthreads) Emulation</a>
<tr><td class="sepr"><a href="scripting008.html#8.4.userscripts">8.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting008.html#8.4.userscripts">User Scripts</a>
<tr><td class="sepr"><a href="scripting009.html#9.otherenvironments">9.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting009.html#9.otherenvironments">Other Environments</a>
<tr><td class="sepr"><a href="scripting009.html#9.1.java">9.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.1.java">Java</a>
<tr><td class="sepr"><a href="scripting009.html#9.1.1.cgiplusonly">9.1.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.1.1.cgiplusonly">CGIplus Only</a>
<tr><td class="sepr"><a href="scripting009.html#9.1.2.requirements">9.1.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.1.2.requirements">Requirements</a>
<tr><td class="sepr"><a href="scripting009.html#9.1.3.carriagecontrol">9.1.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.1.3.carriagecontrol">Carriage Control</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.perl">9.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.perl">Perl</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.1.activatingperl">9.2.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.1.activatingperl">Activating Perl</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.2.cgienvironment">9.2.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.2.cgienvironment">CGI Environment</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.3.postedrequests">9.2.3</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.3.postedrequests">POSTed Requests</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.4.reducinglatency">9.2.4</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.4.reducinglatency">Reducing Latency</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.4.1.cgiplus">9.2.4.1</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.4.1.cgiplus">CGIplus</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.4.2.runtimeenvironment">9.2.4.2</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.4.2.runtimeenvironment">Run-Time Environment</a>
<tr><td class="sepr"><a href="scripting009.html#9.2.5.requirements">9.2.5</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text"><a href="scripting009.html#9.2.5.requirements">Requirements</a>
<tr><td class="sepr"><a href="scripting010.html#10.requestredaction">10.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting010.html#10.requestredaction">Request Redaction</a>
<tr><td class="sepr"><a href="scripting011.html#11.rawtcpipsocket">11.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting011.html#11.rawtcpipsocket">Raw TCP/IP Socket</a>
<tr><td class="sepr"><a href="scripting012.html#12.index">12.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting012.html#12.index">Index</a>
<tr><td class="sepr"><a href="scripting013.html#13.attributionandacknowledgement">13.</a>&hellip;&hellip;&hellip;&hellip;&hellip;&hellip;&hellip<td class="text majr"><a href="scripting013.html#13.attributionandacknowledgement">Attribution and Acknowledgement</a>
</table>
</div>

<br>
<!-- source:0100_INTRO.WASDOC -->

<table class="NAVtable NAVprint"><tr>
<td><a href="javascript:window.history.back();">&#8617;&#xFE0E;</a>
<td><a>&#8598;&#xFE0E;</a>
<td><a>&#8593;&#xFE0E;</a>
<td><a href="scripting001.html#1.">&#8600;&#xFE0E;</a>
<td><a href="javascript:window.history.forward();">&#8618;&#xFE0E;</a>
</table>