

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="pmathml.xsl"?>
<!--
Copyright David Carlisle 2001, 2002.

Use and distribution of this code are permitted under the terms of the <a
href="http://www.w3.org/Consortium/Legal/copyright-software-19980720"
>W3C Software Notice and License</a>.
-->

<!--
  pref:renderer="techexplorer-plugin"
  pref:renderer="techexplorer"
  pref:renderer="css"
  pref:renderer="mathplayer"
  pref:renderer="mathplayer-dl"
-->



<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html" />
  <title>Proceed depending on Plugins</title>

<script language="javascript" >
// <!--
var branching = navigator.userAgent.substring(navigator.userAgent.indexOf("MathPlayer"),69));


   // -->
 </script>

<STYLE type="text/css">
   span.highlight { background-color:yellow; }
   BODY {color:#005050; background:#00a0a0;  }
   h1 {behavior:url(behave.htc); color:#c0c000;}
   p { border: medium double rgb(250,0,250) }
</STYLE>
<!--  http://www.w3schools.com/Css/tryit.asp?filename=behave
      http://www.w3schools.com/Css/tryit.asp?filename=trycss_color
      http://www.w3schools.com/dhtml/tryit.asp?filename=trydhtml_blinkheader
      http://www.w3schools.com/Css/tryit.asp?filename=trycss_text_background -->

</head>


<body>

<!--
<link rel="stylesheet" type="text/css" href="warning.css"/>
<span class="DETAIL" color="red">FOR  VIEWING MATHEMATICAL EXPRESSIONS WITH AN INTERNET BROWSER </span>
\<fo:block color="red" > 
<fo:block>
    -->

<H3 > FOR  VIEWING MATHEMATICAL PLOTS and EXPRESSIONS WITH AN INTERNET BROWSER 
   PLUGINS ARE REQUIRED FOR DISPLAYING ASCIIsvg plots with SVG or MathML </H3>
<h4> However, viewing of wiki .svg
<a href="http://en.wikipedia.org/wiki/Maxwell_equations#Table_2:_Formulation_in_terms_of_total_charge_and_current"
> expressions </a>
and <a href="http://en.wikipedia.org/wiki/Image:Unit_circle.svg"> figures </a>
<!-- wiki/G%C3%B6del_metric -->
is possible without the plugins since
the .svg is translated into .png by the 
<a href="http://en.wikipedia.org/wiki/Wikipedia:Graphic_Lab/Resources/SVG">server.</a>
The use of
<a href="inWiki.html"> transparent .svg </a> is otherwise
<a href="withInkscape.html"> very awkward. </a>
</h4>

<table><h1>
<tr><td>Adobe SVG Viewer is needed for ASCIIsvg display of plots</td></tr>
<tr><td> Of the plugins  </td></tr>
<tr><td>SVG Viewer;Shockwave Director;Shockwave Flash;Real Player;</td></tr>
<tr><td>  QuickTime;Windows Media Player; and Acrobat Reader,  </td></tr> 
<tr><td> you have </td></tr> </h1>   <tr><td>
<script language="javascript" >
// <!--

var agt=navigator.userAgent.toLowerCase();
var ie = (agt.indexOf("msie") != -1);
var ns = (navigator.appName.indexOf("Netscape") != -1);
var win = ((agt.indexOf("win")!=-1) || (agt.indexOf("32bit")!=-1));
var mac = (agt.indexOf("mac")!=-1);

if (ie && win) { pluginlist = detectIE("Adobe.SVGCtl","SVG Viewer") + detectIE("SWCtl.SWCtl.1","Shockwave Director") + detectIE("ShockwaveFlash.ShockwaveFlash.1","Shockwave Flash") + detectIE("rmocx.RealPlayer G2 Control.1","RealPlayer") + detectIE("QuickTimeCheckObject.QuickTimeCheck.1","QuickTime") + detectIE("MediaPlayer.MediaPlayer.1","Windows Media Player") + detectIE("PDF.PdfCtrl.5","Acrobat Reader"); }
if (ns || !win) {
nse = ""; for (var i=0;i<navigator.mimeTypes.length;i++) nse += navigator.mimeTypes.type.toLowerCase();
pluginlist = detectNS("image/svg-xml","SVG Viewer") + detectNS("application/x-director","Shockwave Director") + detectNS("application/x-shockwave-flash","Shockwave Flash") + detectNS("audio/x-pn-realaudio-plugin","RealPlayer") + detectNS("video/quicktime","QuickTime") + detectNS("application/x-mplayer2","Windows Media Player") + detectNS("application/pdf","Acrobat Reader");
}

function detectIE(ClassID,name) { result = false; document.write('<SCRIPT LANGUAGE=VBScript>\n on error resume next \n result = IsObject(CreateObject("' + ClassID + '"))</SCRIPT>\n'); if (result) return name+','; else return ''; }
function detectNS(ClassID,name) { n = ""; if (nse.indexOf(ClassID) != -1) if (navigator.mimeTypes[ClassID].enabledPlugin != null) n = name+","; return n; }

pluginlist += navigator.javaEnabled() ? "Java," : "";
if (pluginlist.length > 0) pluginlist = pluginlist.substring(0,pluginlist.length-1);

// http://www.oreillynet.com/pub/a/javascript/2001/07/20/plugin_detection.html


document.write("<h2>"+pluginlist+" Installed. </h2>");

 if(pluginlist.indexOf("SVG Viewer")>-1){ document.write("</td></tr><tr><td><h1> <p> You have Adobe SVG Installed ");
   document.write("and can view <a href=\" SVGMenu.html \"> SVG examples. </a></p></h1>");}

 else

 {
 document.write("</td></tr><tr><td><p><h1>  BEWARE </h1> <h3> you will need to install Adobe SVG ");
 document.write("</td></tr><tr><td> <a href=\"http://www.adobe.com/svg/viewer/install\"> install </a>  ");  
 document.write("</td></tr><tr><td> <a href=\"http://download.adobe.com/pub/adobe/magic/svgviewer/win/3.x/3.03/en/SVGview.exe\"> download </a>"); 
 document.write("</td></tr><tr><td> <a href=\"http://www1.chapman.edu/~jipsen/svg/\"> ASCIIsvg.js  d.svg </a></h3></p>  ");
  }

// document.write("</td></tr><tr><td> <h0> h0 </h0> <h7> h7 </h7> <h6> h6 <h5> h5 </h5>  </h6>  <h3> <h4> h4 </h4> h3 </h3> <h2> h2 </h2> <h1> h1 </h1>  <h7> h7 </h7><h0> h0 </h0>  ");


   // -->
 </script></td></tr></table>

<!--
  h0<em><h1>h1</h1>h0</em><h6>h6</h6>h0<h7>h7</h7>
<span> <h1><mark> h1 &lt; &gt; </mark> &amp; &apos; &quot; </h1> </span>
<h1> BEWARE </h1>
-->


<!-- 
<h0> h0 </h0> <h7> h7 </h7> <h6> h6 <h5> h5 </h5>  </h6>  <h3> <h4> h4 </h4> h3 </h3> <h2> h2 </h2> <h1> h1 </h1>  <h7> h7 </h7><h0> h0 </h0>
http://wdvl.internet.com/Authoring/Style/Sheets/Colors.html
http://www.w3.schools.com/xsl/xsl_languages.asp
http://www.w3.schools.com/xml/default.asp
http://www.w3.org/TR/CSS21/colors.html
http://www.w3.org/TR/CSS2/box.html#x46
http://www.xml-training-guide.com/xml-tools.html
http://www.learn-xml-tutorial.com/
-->


<h3>Alternatively, can your browser display MathML?</h3> <!--  ;MathPlayer 2.10b;  -->

<!--    navigator.userAgent.substring(navigator.userAgent.indexOf(";MathPlayer",0),17)  -->


<!--
   http://www.ibiblio.org/xml/books/bible/updates/15.html
     Elliotte Rusty Harold
     http://www.cafeconleche.org/books/bible2/chapters/ch18.html
   http://www.renderx.com/tutorial.html

                     /pub/a/2001/01/17/xsl-fo/index.html
                     /pub/a/2001/01/24/xsl-fo/index.html
   http://www.xml.com/lpt/a/1359
                     /lpt/a/2001/01/24/xsl-fo/index.html
                     /pub/a/2004/01/28/qa.html
                     /pub/a/2005/01/19/print.html
       clr.css:
         QUESTION   {    color:#ff0000}
   <fo:block  <fo:inline

    http://www.w3schools.com/xsl/el_otherwise
    http://www.w3schools.com/xslfo/prop_color.asp
    http://www.w3schools.com/xslfo/xslfo_reference.asp
    http://www.w3schools.com/xslfo/xslfo_blocks.asp
    http://www.w3schools.com/css/css_colornames.asp
     aqua black blue fuchsia FF00FF gray green lime maroon navy olive purple
     red silver teal 008080 white yellow     cyan 00FFFF  magenta FF00FF
    http://www.w3schools.com/css/css_colors.asp

    http://www scriptingmaster.com/html/creating-multi-line-text-areas.asp


-->

<ul type="circle">
<script language="javascript">
// <!--


 document.write("<li>The MathPlayer plugin from Design Science is needed for IE.</li>");
   document.write("<li> MathML requires a javascript also.</li>");
   document.write("<li> Also, AppleWebKit and Googlebot would be in navigator.userAgent </li>");
   document.write("<li></li>");
   document.write("<li><h3> Your navigator.userAgent string contains the following information: </h3></li>");



            count = 0
            detect = navigator.userAgent;
      while(detect.length > 0 ){
    if(detect.indexOf(";") > -1){
       document.write("<li> next:");  document.write(count); count=count+1;

        if(detect.indexOf("MathPlayer")>-1)
         {if(navigator.userAgent.indexOf(";")>-1)
           MathPlayer = detect.substring(0,detect.indexOf(";"));
          else MathPlayer = detect;}

  document.write(detect.substring(0,detect.indexOf(";"))+"</li>");
     detect = detect.substring(detect.indexOf(";")+1,200);}

    else {document.write("<li> last: "+detect+"</li>"); detect="";}
                                }


   document.write("<li></li>");
   document.write("<li><h3> other browser strings: </h3></li>");
 document.write("<li>?(search): "+location.search+"</li>");

 document.write("<li>URL: "+location.href+"</li>");
 document.write("<li>host: "+location.host+" - - - port: "+location.port);
 document.write(" - - - #(hash): "+location.hash+" - - - post: "+location.post+"</li>");
 document.write("</li><li> referrer: "+document.referrer);
 document.write("</li><li>  ");



if(navigator.userAgent.indexOf("MathPlayer")>-1)
{document.write("</li><li> MathPlayer ");
    document.write(" version " + MathPlayer.substring(11,20) +" is installed. "); 
 document.write("</li><li ><h1><p>You can view <a href=\" MathMLMenu.html\"> MathPlayer Examples. </a></p></h1>");  }
else {
 document.write("</li><li> <p><h1>  BEWARE </h1> ");
 document.write("</li><li> <h3> you will need to install Design Science MathPlayer </h3>  ");
 document.write(" </li><li> <a href=\"http://www.dessci.com/en/dl/MathPlayerSetup.asp\"> setup </a>");  
 document.write(" </li><li> <a href=\"http://www.dessci.com/en/webmath/mathplayer/"> download </a>");  
 document.write(" </li><li> <a href=\"http://www.w3.org/XSL/pmathml.xsl\"> w3.org xml xsl </a>");  
 document.write(" </li><li> <a href=\"http://www1.chapman.edu/~jipsen/mathml/\"> ASCIIMathML.js </a> ");
 document.write("</li><li> </p> ");
  }

if(navigator.userAgent.indexOf("AppleWebKit")>-1) document.write("</li><li> AppleWebKit is present ");
if(navigator.userAgent.indexOf("Googlebot")>-1)  document.write("</li><li> Googlebot is present ");
                           

//  http://www scriptingmaster.com/javascript/using-escape-codes-sequence.asp
 document.write("</li>");
// -->
  </script>
</ul>


<!--  AppleWebKit  Googlebot  MathPlayer  application/xhtml_xml text/html  -->

<!--


   You do not have to rely on the viewer having plugins if you make .png
   illustrations using TeX with five steps ending with Inkscape!
   http://meta.wikimedia.org/wiki/Help:Formula
   http://commons.wikimedia.org/wiki/Image:Unit_circle.svg
   Several conversions utilities will be needed such as
   latex dvips eps2eps pstoedit 
   euk2wps ps2epsi skconvert inkscape
   many links at png_trail.html

   http://www.kono.cis.iwate-u.ac.j/~arakit/inkscape/inklatex.html
     

    For illustrations or graphs, and also for equations,
     if there are no appropriate drivers installed five conversionse
     can be used to make a .png from a .svg without undue file size.

   http://downloads.sourceforge.net/inkscape/inkscape/Inkscape-0.45.1-11.win32.exe

   also
     latex    comm.tex
     dvips    -E -y 2500 -o comm.eps comm.dvi
     eps2eps  -dNOCACHE comm.eps comm2.eps
     pstoedit -f sk comm2.eps comm.sk
     inkscape -z -f comm.sk -1 comm.svg

     http://commons.wikimedia.org/wiki/Image:Unit_circle.svg
       euk2wps
       eps2eps
       ps2epsi
       pstoedit
       skconvert
       inkscape

  otherwise
    http://www.tex.ac.uk/cgi-bin/texfaw2html?label=LaTeX2HTML

    http://www.w3.org/Math/Software/mathml_software_cat_converters.html
      http://www.blahtex.org  Cavid Harvey
        Tex into MathML and png

    http://www.w3.org/TR/MathML3/chapter7.html
      portability among TeX MathML SVG and to PNG is proposed

  varibale in
    http://www.w3schools.com/XSL/el_variable.asp


    -->




<!--
<p> For the implicit equation, </p>

<math xmlns="http://www.w3.org/1998/Math/MathML">
  <mrow>
    <msup>
      <mfenced open="(" close=")">
        <mrow>
          <msup>
           <mi>ax</mi>
           <mn>3</mn>
          </msup>
          <mo>+</mo>
          <msup>
           <mi>bx</mi>
           <mn>2</mn>
          </msup>
          <mo>+</mo>
          <msup>
           <mi>cx</mi>
           <mn>1</mn>
          </msup>
          <mo>+</mo>
          <mi>d</mi>
        </mrow>
      </mfenced>
      <mn>3</mn>
    </msup>
    <mo>=</mo>
    <msup>
      <mfenced open="(" close=")">
        <mrow>
          <msup>
           <mi>ex</mi>
           <mn>2</mn>
          </msup>
          <mo>-</mo>
          <mi>4fx</mi>
        </mrow>
      </mfenced>
      <mn>1/2</mn>
    </msup>
  </mrow>
</math>,
<p> numerical methods will be needed. </p> 


<p>Below is an expression with a radical relating to pentagonal symmetry;
the ratio of the radius of the suberscribed sphere to the radius of the
incribed sphere of both the dodecahedron and the icosoahedron:</p>

<p>
<math xmlns="http://www.w3.org/1998/Math/MathML">
    <msqrt>
      <mrow>
        <mi>3</mi>
      </mrow>
    </msqrt>
    <msqrt>
      <mrow>
        <mi>5</mi>
        <mo>-2</mo>
    <msqrt>
      <mrow>
        <mi>5</mi>
      </mrow>
    </msqrt>
      </mrow>
    </msqrt>
</math>
</p>

<p>If your browser displays those equations correctly, it is enabled to
display Design Science, Presentation, MathPlayer, ... MathML.</p> 

<a href="http://www.w3.org/Math/XSL/pmathml2.xml"> W3 original </a>
    -->



<h3>METHODS TO WRITE PORTABLE and PRESENTABLE EXPRESSIONS WITHOUT BITMAPS,
 PROPRIETARY TOOLS or CAPTIVE FORMATS and allow PLOTS and EVALUATION from
 the SAME SOURCE are POSSIBLE </h3>

Great progress has been made to put mathematical expressions in
web pages along with the ability to plot and evaluate the expressions.
Peter Jipsen has put
<a href="http://math.chapman.edu/~jipsen/mathml/asciimathandmathmlsvg.xhtml">
MathML, ASCIIMathML, and SVG together </a>

<!--  </p><p>  -->

Without the MathML plugin rendering equations is very awkward; even
using with the
<a href="http://en.wikipedia.org/wiki/Image:AMS_Euler_sample_math.svg"
> wiki .png bitmap </a>
an awkward <a href="convert_png.html"> sequence
of conversions </a> is needed.  The illustrations that use the Adobe SVG
Viewer can be also rendered with <a href="http://www.inkscape.org"> Inkscape
</a> into a .png for more portability.

<!--  </p><p>   -->

<a href="http://www.quirksmode.org/dom/compatibility.html"> 
Peter-Paul Koch </a> recommends using
<a href="http://www.quirksmode.org/js/support.html"> object detect </a>
rather than
<a href="http://www.quirksmode.org/js/"> browser detect </a>
to make web pages that are readable my multiple browsers and configurations.



<p>
The client does not need plugins to view a .png created with dislin:
<img src="Maxwell.png" width="400" height="282" > </img>

<!--
<img src="http://people.scs.fsu.edu/~burkardt/f_src/dislin/dislin_ex14.png"
       width="600" height="900"     >
          </img>       -->

The above .png was obtained by adusting the pixels with Inkscape.  
In any case, <a href="http://www.mps.mpg.de/dislin/kap6.html#section_8">
dislin </a> may be the best way yet to render
<a href="http://people.scs.fsu.edu/~burkardt/f_src/dislin/dislin_ex14.png">
equations </a>with the least impedimenta.  The .svg produced by dislin can
be seen at <a href=" SVGMenu.html "> SVG examples. </a>

<!--
<embed src="Maxwell.svg"  type="image/svg+xml" width="762" height="450"> </embed>
    -->
</p>


<script language="javascript" >
// <!--

    document.write("Both plugins are needed for some  ");

if(navigator.userAgent.indexOf("MathPlayer")>-1
  &  pluginlist.indexOf("SVG Viewer")>-1)
     {document.write("<a href=\"combine.html\"> compound </a> ");
     document.write(" document ");
      document.write(" <a href=\"bezier.xml\"> examples. </a> ");}
    else document.write(" examples. ");

//

    

// -->
  </script>


<p>
 I am working on
<a href="combine.html"> examples </a>
that combine as many features as I am able to implement at the same time. 
Also, I wish to acknowlege <a href="http://www.javascriptkit.com/script/script2/plugindetect.shtml">
(1) information for detecting objects</a> and
<a href="http://osdir.com/ml/web.mathematics/2006-02/msg00021.html">
(2) information on the user-agent </a>.

<!--  <a href="http://docs.rinet.ru/SkripPauka/ch2.htm"> plug-in identification </a> -->

</p>

<!--
http://www.aadmm.de/en/plugins.htm
  Adobe Acrobat Reader
  Java Virtual Machine
  Macromedia Flash Player; Shockwave Player
  Real Audio Player
  Apple Wuicktime Player
  Windows Media Player
  Microsoft Silverlight



Other unresolved issues are
<a href="detect_file.html"> missing files </a> ,
<a href="detect_unicode.html"> unicode support </a> and the captivity of .dwg
files.   -->

<!--
<table>
<tr><td><a href="detect_plugin.xml">   plugin tests </a></td>   
   <td><a href="detect_file.html">     file not there  </a></td> 
   <td><a href="convert_png.html">       png              </a></td>  
   <td><a href="detect_unicode.html">     unicode tests </a></td></tr>   

<tr><td><a href="mathML.txt"> TeX and mathML </a>  </td>
    <td><a href=""> tests </a>  </td>
    <td><a href="links.html"> plugin detection; </a> </td></tr>

<tr><td>
<a href="http://math.chapman.edu/~jipsen/mathml/asciimathandmathmlsvg.xhtml"> MathML,ASCIIMathML,SVG together </a> </td><td> - - </td>
<td align="right"><a href="http://www.echoofeden.com/htmlTests/xhtml/xhtml_svg_mathml.xhtml"> MathML,SVG together </a>  </td></tr>

<tr><td>
<a href="http://www.pieperu.de/mathmlgraph/"> further combinations </a>  </td><td> - - </td>
<td><a href="http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd"> in xhtml </a>



</td></tr>
<tr><td> - - </td><td>
<img src="http://www.w3.org/Math/mathmlSmall.png" alt="MathML inside!"/>
 </td><td> - - </td></tr></table>
    -->


<!--

the handshake used for supplying a selected web page customized for
the users browser demostrates what is needed for email validation;
routine checksum validation of system files could stop malicious
viruses and trojans.




e.g. if(window.focus)window.focus()


browser detect with special message
  http://www.brothercake.com/site/resources/scripts/onload/
                                              /check-mimes.html
  http://javascript.internet.com/miscellaneous/browser-correct-download-instructions.html
    http://www.bontragerconnection.com/
  http://javascript.internet.com/miscellaneous/browser-check.html
<a href="http://entropymine.com/jason/defaultpluginpro/"> default plugin </a>

http://javascript.internet.com/miscellaneous/show-hide.a.div.html
  show or hide associated details 


-->



&#169;2008 Wm.C.Corwin more dtails and other issues are at
<a href="http://www.issi1.com/corwin/hexapylum.html"> hexapylum.html </a>
and <a href="http://www.issi1.com/corwin/ConcurrentInverse.html"> ConcurrentInverse.com </a>

</body>
</html>
