<HTML>
<HEAD>
<TITLE>eXtended SSI Test Page</TITLE>
</HEAD>
<BODY>
<H1>eXtended SSI Test Page</H1>

<H2>Control Flow</H2>
<P> 
<!--#if expr="true" -->
    1st if is true
    <BR><!--#if expr="''" -->
        2nd if is true
    <!--#else -->
        2nd if is false
    <!--#endif --><BR>
    After 2nd if
<!--#else -->
    1st if is false
<!--#endif --><BR>
After 1st if

<P> 
<!--#if expr="$DOCUMENT_URI" -->
    Document URI is <!--#echo var="DOCUMENT_URI" -->
<!--#endif --><BR>

<!--#if expr="$NO_VARIABLE" -->
    NO_VARIABLE is <!--#echo var="NO_VARIABLE" -->
<!--#endif --><BR>

<P>
<!--#set var="TRY1" value="try1" -->
<!--#set var="TRY2" value="try2" -->
<!--#set var="TRY3" value="try3" -->

<!--#if expr="$TRY1 = 'try1'" -->
    TRY1 =  try1
<!--#else -->
    not TRY1 = try1
<!--#endif --><BR>

<!--#if expr="$TRY1 != 'try1'" -->
    TRY1 !=  try1
<!--#else -->
    not TRY1 != try1
<!--#endif --><BR>

<!--#if expr="$TRY1 = 'try1' && $TRY2 = 'try2'" -->
    TRY1 =  try1 && TRY2 =  try2
<!--#else -->
    not TRY1 =  try1 && TRY2 =  try2
<!--#endif --><BR>

<!--#if expr="$TRY1 = 'try1' && $TRY2 != 'try2'" -->
    TRY1 =  try1 && TRY2 !=  try2
<!--#else -->
    not TRY1 =  try1 && TRY2 !=  try2
<!--#endif --><BR>

<!--#if expr="$TRY1 = 'try1' || $TRY2 = 'try2'" -->
    TRY1 =  try1 || TRY2 =  try2
<!--#else -->
    not TRY1 =  try1 || TRY2 =  try2
<!--#endif --><BR>

<!--#if expr="$TRY1 = 'try1' || $TRY2 != 'try2'" -->
    TRY1 =  try1 || TRY2 !=  try2
<!--#else -->
    not TRY1 =  try1 || TRY2 !=  try2
<!--#endif --><BR>

<!--#if expr="$TRY1 != 'try1' || $TRY2 != 'try2'" -->
    TRY1 !=  try1 || TRY2 !=  try2
<!--#else -->
    not TRY1 !=  try1 || TRY2 !=  try2
<!--#endif --><BR>

<!--#if expr="$TRY1 = 'try1' && $TRY2 = 'try2' || $TRY3 != 'try3'" -->
    TRY1 =  try1 && TRY2 =  try2 || TRY3 != try3
<!--#else -->
    not TRY1 =  try1 && TRY2 =  try2 || TRY3 != try3
<!--#endif --><BR>

<!--#if expr="$TRY1 = 'try1' && $TRY2 != 'try2' || $TRY3 = 'try3'" -->
    TRY1 =  try1 && TRY2 !=  try2 || TRY3 = try3
<!--#else -->
    not TRY1 =  try1 && TRY2 !=  try2 || TRY3 = try3
<!--#endif --><BR>

<!--#if expr="($TRY1)" -->
    (TRY1)
<!--#else -->
    not (TRY1)
<!--#endif --><BR>

<!--#if expr="($TRY1 = 'try1')" -->
    (TRY1 = try1)
<!--#else -->
    not (TRY1 = try1)
<!--#endif --><BR>

<!--#if expr="($TRY1 = 'try1') && ($TRY2 != 'try2')" -->
    (TRY1 = try1) && ($TRY2 != 'try2')
<!--#else -->
    not (TRY1 = try1) && ($TRY2 != 'try2')
<!--#endif --><BR>

<!--#if expr="($TRY1 = 'try1') && ($TRY2 != 'try2' || $TRY3 = 'try3')" -->
    (TRY1 = try1) && ($TRY2 != 'try2' || $TRY3 = 'try3')
<!--#else -->
    not (TRY1 = try1) && ($TRY2 != 'try2' || $TRY3 = 'try3')
<!--#endif --><BR>

<!--#if expr="($TRY1 = 'try1') && (($TRY2 != 'try2') || $TRY3 = 'try3')" -->
    (TRY1 = try1) && (($TRY2 != 'try2') || $TRY3 = 'try3')
<!--#else -->
    not (TRY1 = try1) && (($TRY2 != 'try2') || $TRY3 = 'try3')
<!--#endif --><BR>

<!--#if expr="($TRY1 = 'try1') && $TRY2 != 'try2' || $TRY3 = 'try3')" -->
    Unmatched parens
<!--#endif --><BR>

<!--#if expr="($TRY1 = 'try1') && ($TRY2 != 'try2' || $TRY3 = 'try3'" -->
    Unmatched parens
<!--#endif --><BR>

<!--#if expr="!$TRY1" -->
    !TRY1
<!--#else -->
    not !TRY1
<!--#endif --><BR>

<!--#if expr="!($TRY1 = 'try1')" -->
    !(TRY1 = 'try1')
<!--#else -->
    not !(TRY1 = 'try1')
<!--#endif --><BR>

<!--#if expr="!($TRY1 != 'try1')" -->
    !(TRY1 != 'try1')
<!--#else -->
    not !(TRY1 != 'try1')
<!--#endif --><BR>

<!--#if expr="$TRY1 = '/try.*/'" -->
    TRY1 = '/try.*/'
<!--#else -->
    not TRY1 = '/try.*/'
<!--#endif --><BR>

<!--#if expr="$TRY1 = '/^t.*[0-9]$/'" -->
    TRY1 = '/^t.*[0-9]$/'
<!--#else -->
    not TRY1 = '/^t.*[0-9]$/'
<!--#endif --><BR>

<!--#if expr="$TRY1 = '/notry.*/'" -->
    TRY1 = '/notry.*/'
<!--#else -->
    not TRY1 = '/notry.*/'
<!--#endif --><BR>

<!--#if expr="$TRY1 = '/ry.*/'" -->
    TRY1 = '/ry.*/'
<!--#else -->
    not TRY1 = '/ry.*/'
<!--#endif --><BR>

<!--#if expr="$TRY1 = '/^ry.*/'" -->
    TRY1 = '/^ry.*/'
<!--#else -->
    not TRY1 = '/^ry.*/'
<!--#endif --><BR>
</PRE>
<H2>Setting and Using Variables</H2>
<!--#set var="TEST_VARIABLE" value="try this out" -->
<!--#set var="TEST_VARIABLE1" value="$TEST_VARIABLE" -->
<!--#set var="TEST_VARIABLE2" value="\$TEST_VARIABLE" -->
<!--#set var="TEST_VARIABLE3" value="${TEST_VARIABLE}" -->
<!--#set var="TEST_VARIABLE4" value="$TEST_VARIABLE added text" -->
<!--#set var="TEST_VARIABLE5" value="$TEST_VARIABLErunontext" -->
<!--#set var="TEST_VARIABLE6" value="${TEST_VARIABLE}runontext" -->
<!--#set var="TEST_VARIABLE7" value="pre$TEST_VARIABLE" -->
<!--#set var="TEST_VARIABLE8" value="pre${TEST_VARIABLE}runontext" -->
<!--#set var="TEST_VARIABLE9" value="trailing blackslash\" -->
<!--#set var="TEST_VARIABLE10" value="trailing dollar$" -->
<!--#set var="lower_case" value="lower case name" -->
<!--#set var="url" value="http://$HTTP_HOST$DOCUMENT_URI" -->
<P> TEST_VARIABLE=<!--#echo var="TEST_VARIABLE" -->
<BR>TEST_VARIABLE1=<!--#echo var="TEST_VARIABLE1" -->
<BR>TEST_VARIABLE2=<!--#echo var="TEST_VARIABLE2" -->
<BR>TEST_VARIABLE3=<!--#echo var="TEST_VARIABLE3" -->
<BR>TEST_VARIABLE4=<!--#echo var="TEST_VARIABLE4" -->
<BR>TEST_VARIABLE5=<!--#echo var="TEST_VARIABLE5" -->
<BR>TEST_VARIABLE6=<!--#echo var="TEST_VARIABLE6" -->
<BR>TEST_VARIABLE7=<!--#echo var="TEST_VARIABLE7" -->
<BR>TEST_VARIABLE8=<!--#echo var="TEST_VARIABLE8" -->
<BR>TEST_VARIABLE9=<!--#echo var="TEST_VARIABLE9" -->
<BR>TEST_VARIABLE10=<!--#echo var="TEST_VARIABLE10" -->
<BR>lower_case=<!--#echo var="lower_case" -->
<DL>
<DT>Full url from variables<DD><!--#echo var="url" -->
<DT>Last modification time of <!--#echo var="DOCUMENT_URI" -->
<DD><!--#flastmod virtual="$DOCUMENT_URI" -->
<DT>File size of <!--#echo var="DOCUMENT_URI" -->
<DD><!--#config sizefmt="bytes" -->
    <!--#fsize virtual="$DOCUMENT_URI" -->
</DL>
<P> <!--#set var="bad" value="http://${HTTP_HOST }$DOCUMENT_URI" -->
<BR><!--#set var="bad" value="http://${HTTP_HOST" -->

<H2>printenv Directive Tests</H2>
<PRE>
<!--#printenv -->
</PRE>

</BODY>
</HTML>

