xref: /minix/external/bsd/bind/dist/bin/named/bind9.xsl.h (revision 00b67f09)
1 /*	$NetBSD: bind9.xsl.h,v 1.7 2014/12/10 04:37:51 christos Exp $	*/
2 
3 /*
4  * Generated by convertxsl.pl 1.14 2008/07/17 23:43:26 jinmei Exp
5  * From <!-- %Id: bind9.xsl 1.21 2009/01/27 23:47:54 tbox Exp %
6  */
7 static char xslmsg[] =
8 	"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
9 	"<!--\n"
10 	" - Copyright (C) 2006-2009, 2012-2014 Internet Systems Consortium, Inc. (\"ISC\")\n"
11 	" -\n"
12 	" - Permission to use, copy, modify, and/or distribute this software for any\n"
13 	" - purpose with or without fee is hereby granted, provided that the above\n"
14 	" - copyright notice and this permission notice appear in all copies.\n"
15 	" -\n"
16 	" - THE SOFTWARE IS PROVIDED \"AS IS\" AND ISC DISCLAIMS ALL WARRANTIES WITH\n"
17 	" - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n"
18 	" - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,\n"
19 	" - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n"
20 	" - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE\n"
21 	" - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n"
22 	" - PERFORMANCE OF THIS SOFTWARE.\n"
23 	"-->\n"
24 	"\n"
25 	"<!-- Id -->\n"
26 	"\n"
27 	"<!-- \045Id: bind9.xsl,v 1.21 2009/01/27 23:47:54 tbox Exp \045 -->\n"
28 	"<xsl:stylesheet xmlns:xsl=\"http://www.w3.org/1999/XSL/Transform\" xmlns=\"http://www.w3.org/1999/xhtml\" version=\"1.0\">\n"
29 	" <xsl:output method=\"html\" indent=\"yes\" version=\"4.0\"/>\n"
30 	" <xsl:template match=\"statistics[@version=&quot;3.5&quot;]\">\n"
31 	" <html>\n"
32 	" <head>\n"
33 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
34 	" <!-- Non Mozilla specific markup -->\n"
35 	" <script type=\"text/javascript\" src=\"https://www.google.com/jsapi\"/>\n"
36 	" <script type=\"text/javascript\">\n"
37 	"\n"
38 	" google.load(\"visualization\", \"1\", {packages:[\"corechart\"]});\n"
39 	" google.setOnLoadCallback(loadGraphs);\n"
40 	"\n"
41 	" var graphs=[];\n"
42 	"\n"
43 	" function drawChart(chart_title,target,style,data) {\n"
44 	" var data = google.visualization.arrayToDataTable(data);\n"
45 	"\n"
46 	" var options = {\n"
47 	" title: chart_title\n"
48 	" };\n"
49 	"\n"
50 	" var chart;\n"
51 	" if (style == \"barchart\") {\n"
52 	" chart = new google.visualization.BarChart(document.getElementById(target));\n"
53 	" chart.draw(data, options);\n"
54 	" } else if (style == \"piechart\") {\n"
55 	" chart = new google.visualization.PieChart(document.getElementById(target));\n"
56 	" chart.draw(data, options);\n"
57 	" }\n"
58 	" }\n"
59 	"\n"
60 	" function loadGraphs(){\n"
61 	" var g;\n"
62 	"\n"
63 	" while(g = graphs.shift()){\n"
64 	" // alert(\"going for: \" + g.target);\n"
65 	" if(g.data.length > 1){\n"
66 	" drawChart(g.title,g.target,g.style,g.data);\n"
67 	" }\n"
68 	" }\n"
69 	" }\n"
70 	"\n"
71 	" <xsl:if test=\"server/counters[@type=&quot;qtype&quot;]/counter\">\n"
72 	" // Server Incoming Query Types\n"
73 	" graphs.push({\n"
74 	" 'title' : \"Server Incoming Query Types\",\n"
75 	" 'target': 'chart_incoming_qtypes',\n"
76 	" 'style': 'barchart',\n"
77 	" 'data': [['Type','Counter'],<xsl:for-each select=\"server/counters[@type=&quot;qtype&quot;]/counter\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n"
78 	" });\n"
79 	" </xsl:if>\n"
80 	"\n"
81 	" <xsl:if test=\"server/counters[@type=&quot;opcode&quot;]/counter\">\n"
82 	" // Server Incoming Requests by opcode\n"
83 	" graphs.push({\n"
84 	" 'title' : \"Server Incoming Requests by DNS Opcode\",\n"
85 	" 'target': 'chart_incoming_opcodes',\n"
86 	" 'style': 'barchart',\n"
87 	" 'data': [['Opcode','Counter'],<xsl:for-each select=\"server/counters[@type=&quot;opcode&quot;]/counter[. &gt; 0 or substring(@name,1,3) != 'RES']\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]});\n"
88 	" </xsl:if>\n"
89 	" </script>\n"
90 	" </xsl:if>\n"
91 	" <style type=\"text/css\">\n"
92 	" body {\n"
93 	" font-family: sans-serif;\n"
94 	" background-color: #ffffff;\n"
95 	" color: #000000;\n"
96 	" font-size: 10pt;\n"
97 	" }\n"
98 	"\n"
99 	" .odd{\n"
100 	" background-color: #f0f0f0;\n"
101 	" }\n"
102 	"\n"
103 	" .even{\n"
104 	" background-color: #ffffff;\n"
105 	" }\n"
106 	"\n"
107 	" p.footer{\n"
108 	" font-style:italic;\n"
109 	" color: grey;\n"
110 	" }\n"
111 	"\n"
112 	" table {\n"
113 	" border-collapse: collapse;\n"
114 	" border: 1px solid grey;\n"
115 	" }\n"
116 	"\n"
117 	" table.counters{\n"
118 	" border: 1px solid grey;\n"
119 	" width: 500px;\n"
120 	" }\n"
121 	" table.counters th {\n"
122 	" text-align: right;\n"
123 	" border: 1px solid grey;\n"
124 	" width: 150px;\n"
125 	" }\n"
126 	" table.counters td {\n"
127 	" text-align: right;\n"
128 	" font-family: monospace;\n"
129 	" }\n"
130 	" table.counters tr:hover{\n"
131 	" background-color: #99ddff;\n"
132 	" }\n"
133 	"\n"
134 	" table.info {\n"
135 	" border: 1px solid grey;\n"
136 	" width: 500px;\n"
137 	" }\n"
138 	" table.info th {\n"
139 	" text-align: center;\n"
140 	" border: 1px solid grey;\n"
141 	" width: 150px;\n"
142 	" }\n"
143 	" table.info td {\n"
144 	" text-align: center;\n"
145 	" }\n"
146 	" table.info tr:hover{\n"
147 	" background-color: #99ddff;\n"
148 	" }\n"
149 	"\n"
150 	" table.tasks {\n"
151 	" border: 1px solid grey;\n"
152 	" width: 500px;\n"
153 	" }\n"
154 	" table.tasks th {\n"
155 	" text-align: center;\n"
156 	" border: 1px solid grey;\n"
157 	" width: 150px;\n"
158 	" }\n"
159 	" table.tasks td {\n"
160 	" text-align: right;\n"
161 	" font-family: monospace;\n"
162 	" }\n"
163 	" table.tasks td:nth-child(2) {\n"
164 	" text-align: center;\n"
165 	" }\n"
166 	" table.tasks td:nth-child(4) {\n"
167 	" text-align: center;\n"
168 	" }\n"
169 	" table.tasks tr:hover{\n"
170 	" background-color: #99ddff;\n"
171 	" }\n"
172 	"\n"
173 	" table.netstat {\n"
174 	" border: 1px solid grey;\n"
175 	" width: 500px;\n"
176 	" }\n"
177 	" table.netstat th {\n"
178 	" text-align: center;\n"
179 	" border: 1px solid grey;\n"
180 	" width: 150px;\n"
181 	" }\n"
182 	" table.netstat td {\n"
183 	" text-align: center;\n"
184 	" }\n"
185 	" table.netstat td:nth-child(4) {\n"
186 	" text-align: right;\n"
187 	" font-family: monospace;\n"
188 	" }\n"
189 	" table.netstat td:nth-child(7) {\n"
190 	" text-align: left;\n"
191 	" }\n"
192 	" table.netstat tr:hover{\n"
193 	" background-color: #99ddff;\n"
194 	" }\n"
195 	"\n"
196 	" table.mctx {\n"
197 	" border: 1px solid grey;\n"
198 	" width: 500px;\n"
199 	" }\n"
200 	" table.mctx th {\n"
201 	" text-align: center;\n"
202 	" border: 1px solid grey;\n"
203 	" }\n"
204 	" table.mctx td {\n"
205 	" text-align: right;\n"
206 	" font-family: monospace;\n"
207 	" }\n"
208 	" table.mctx td:nth-child(-n+2) {\n"
209 	" text-align: left;\n"
210 	" width: 100px;\n"
211 	" }\n"
212 	" table.mctx tr:hover{\n"
213 	" background-color: #99ddff;\n"
214 	" }\n"
215 	"\n"
216 	" .totals {\n"
217 	" background-color: rgb(1,169,206);\n"
218 	" color: #ffffff;\n"
219 	" }\n"
220 	"\n"
221 	" td, th {\n"
222 	" padding-right: 5px;\n"
223 	" padding-left: 5px;\n"
224 	" border: 1px solid grey;\n"
225 	" }\n"
226 	"\n"
227 	" .header h1 {\n"
228 	" color: rgb(1,169,206);\n"
229 	" padding: 0px;\n"
230 	" }\n"
231 	"\n"
232 	" .content {\n"
233 	" background-color: #ffffff;\n"
234 	" color: #000000;\n"
235 	" padding: 4px;\n"
236 	" }\n"
237 	"\n"
238 	" .item {\n"
239 	" padding: 4px;\n"
240 	" text-align: right;\n"
241 	" }\n"
242 	"\n"
243 	" .value {\n"
244 	" padding: 4px;\n"
245 	" font-weight: bold;\n"
246 	" }\n"
247 	"\n"
248 	"\n"
249 	" h2 {\n"
250 	" color: grey;\n"
251 	" font-size: 14pt;\n"
252 	" width:500px;\n"
253 	" text-align:center;\n"
254 	" }\n"
255 	"\n"
256 	" h3 {\n"
257 	" color: #444444;\n"
258 	" font-size: 12pt;\n"
259 	" width:500px;\n"
260 	" text-align:center;\n"
261 	" }\n"
262 	" h4 {\n"
263 	" color: rgb(1,169,206);\n"
264 	" font-size: 10pt;\n"
265 	" width:500px;\n"
266 	" text-align:center;\n"
267 	" }\n"
268 	"\n"
269 	" .pie {\n"
270 	" width:500px;\n"
271 	" height: 500px;\n"
272 	" }\n"
273 	"\n"
274 	" </style>\n"
275 	" <title>ISC BIND 9 Statistics</title>\n"
276 	" </head>\n"
277 	" <body>\n"
278 	" <div class=\"header\">\n"
279 	" <h1>ISC Bind 9 Configuration and Statistics</h1>\n"
280 	" </div>\n"
281 	" <p>Alternate statistics views: <a href=\"/\">All</a>,\n"
282 	" <a href=\"/xml/v3/status\">Status</a>,\n"
283 	" <a href=\"/xml/v3/server\">Server</a>,\n"
284 	" <a href=\"/xml/v3/zones\">Zones</a>,\n"
285 	" <a href=\"/xml/v3/net\">Network</a>,\n"
286 	" <a href=\"/xml/v3/tasks\">Tasks</a> and\n"
287 	" <a href=\"/xml/v3/mem\">Memory</a></p>\n"
288 	" <hr/>\n"
289 	" <h2>Server Status</h2>\n"
290 	" <table class=\"info\">\n"
291 	" <tr>\n"
292 	" <th>Boot time:</th>\n"
293 	" <td>\n"
294 	" <xsl:value-of select=\"server/boot-time\"/>\n"
295 	" </td>\n"
296 	" </tr>\n"
297 	" <tr>\n"
298 	" <th>Last reconfigured:</th>\n"
299 	" <td>\n"
300 	" <xsl:value-of select=\"server/config-time\"/>\n"
301 	" </td>\n"
302 	" </tr>\n"
303 	" <tr>\n"
304 	" <th>Current time:</th>\n"
305 	" <td>\n"
306 	" <xsl:value-of select=\"server/current-time\"/>\n"
307 	" </td>\n"
308 	" </tr>\n"
309 	" </table>\n"
310 	" <br/>\n"
311 	" <xsl:if test=\"server/counters[@type=&quot;opcode&quot;]/counter[. &gt; 0]\">\n"
312 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
313 	" <h2>Incoming Requests by DNS Opcode</h2>\n"
314 	" <!-- Non Mozilla specific markup -->\n"
315 	" <div class=\"pie\" id=\"chart_incoming_opcodes\">\n"
316 	" [cannot display chart]\n"
317 	" </div>\n"
318 	" </xsl:if>\n"
319 	" <table class=\"counters\">\n"
320 	" <xsl:for-each select=\"server/counters[@type=&quot;opcode&quot;]/counter[. &gt; 0 or substring(@name,1,3) != 'RES']\">\n"
321 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
322 	" <tr>\n"
323 	" <th>\n"
324 	" <xsl:value-of select=\"@name\"/>\n"
325 	" </th>\n"
326 	" <td>\n"
327 	" <xsl:value-of select=\".\"/>\n"
328 	" </td>\n"
329 	" </tr>\n"
330 	" </xsl:for-each>\n"
331 	" <tr>\n"
332 	" <th class=\"totals\">Total:</th>\n"
333 	" <td class=\"totals\">\n"
334 	" <xsl:value-of select=\"sum(server/counters[@type=&quot;opcode&quot;]/counter)\"/>\n"
335 	" </td>\n"
336 	" </tr>\n"
337 	" </table>\n"
338 	" <br/>\n"
339 	" </xsl:if>\n"
340 	" <xsl:if test=\"server/counters[@type=&quot;qtype&quot;]/counter\">\n"
341 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
342 	" <!-- Non Mozilla specific markup -->\n"
343 	" <h3>Incoming Queries by Query Type</h3>\n"
344 	" <div class=\"pie\" id=\"chart_incoming_qtypes\">\n"
345 	" [cannot display chart]\n"
346 	" </div>\n"
347 	" </xsl:if>\n"
348 	" <table class=\"counters\">\n"
349 	" <xsl:for-each select=\"server/counters[@type=&quot;qtype&quot;]/counter\">\n"
350 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
351 	" <xsl:variable name=\"css-class\">\n"
352 	" <xsl:choose>\n"
353 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
354 	" <xsl:otherwise>odd</xsl:otherwise>\n"
355 	" </xsl:choose>\n"
356 	" </xsl:variable>\n"
357 	" <tr class=\"{$css-class}\">\n"
358 	" <th>\n"
359 	" <xsl:value-of select=\"@name\"/>\n"
360 	" </th>\n"
361 	" <td>\n"
362 	" <xsl:value-of select=\".\"/>\n"
363 	" </td>\n"
364 	" </tr>\n"
365 	" </xsl:for-each>\n"
366 	" <tr>\n"
367 	" <th class=\"totals\">Total:</th>\n"
368 	" <td class=\"totals\">\n"
369 	" <xsl:value-of select=\"sum(server/counters[@type=&quot;qtype&quot;]/counter)\"/>\n"
370 	" </td>\n"
371 	" </tr>\n"
372 	" </table>\n"
373 	" <br/>\n"
374 	" </xsl:if>\n"
375 	" <xsl:if test=\"views/view[count(counters[@type=&quot;resqtype&quot;]/counter) &gt; 0]\">\n"
376 	" <h2>Outgoing Queries per view</h2>\n"
377 	" <xsl:for-each select=\"views/view[count(counters[@type=&quot;resqtype&quot;]/counter) &gt; 0]\">\n"
378 	" <h3>View <xsl:value-of select=\"@name\"/></h3>\n"
379 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
380 	" <!-- Non Mozilla specific markup -->\n"
381 	" <script type=\"text/javascript\">\n"
382 	" graphs.push({\n"
383 	" 'title': \"Outgoing Queries for view: <xsl:value-of select=\"@name\"/>\",\n"
384 	" 'target': 'chart_outgoing_queries_view_<xsl:value-of select=\"@name\"/>',\n"
385 	" 'style': 'barchart',\n"
386 	" 'data': [['Type','Counter'],<xsl:for-each select=\"counters[@type=&quot;resqtype&quot;]/counter\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n"
387 	" });\n"
388 	" </script>\n"
389 	" <xsl:variable name=\"target\">\n"
390 	" <xsl:value-of select=\"@name\"/>\n"
391 	" </xsl:variable>\n"
392 	" <div class=\"pie\" id=\"chart_outgoing_queries_view_{$target}\">[no data to display]</div>\n"
393 	" </xsl:if>\n"
394 	" <table class=\"counters\">\n"
395 	" <xsl:for-each select=\"counters[@type=&quot;resqtype&quot;]/counter\">\n"
396 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
397 	" <xsl:variable name=\"css-class1\">\n"
398 	" <xsl:choose>\n"
399 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
400 	" <xsl:otherwise>odd</xsl:otherwise>\n"
401 	" </xsl:choose>\n"
402 	" </xsl:variable>\n"
403 	" <tr class=\"{$css-class1}\">\n"
404 	" <th>\n"
405 	" <xsl:value-of select=\"@name\"/>\n"
406 	" </th>\n"
407 	" <td>\n"
408 	" <xsl:value-of select=\".\"/>\n"
409 	" </td>\n"
410 	" </tr>\n"
411 	" </xsl:for-each>\n"
412 	" </table>\n"
413 	" <br/>\n"
414 	" </xsl:for-each>\n"
415 	" </xsl:if>\n"
416 	" <xsl:if test=\"server/counters[@type=&quot;nsstat&quot;]/counter[.&gt;0]\">\n"
417 	" <h2>Server Statistics</h2>\n"
418 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
419 	" <!-- Non Mozilla specific markup -->\n"
420 	" <script type=\"text/javascript\">\n"
421 	" graphs.push({\n"
422 	" 'title' : \"Server Counters\",\n"
423 	" 'target': 'chart_server_nsstat_restype',\n"
424 	" 'style': 'barchart',\n"
425 	" 'data': [['Type','Counter'],<xsl:for-each select=\"server/counters[@type=&quot;nsstat&quot;]/counter[.&gt;0]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n"
426 	" });\n"
427 	" </script>\n"
428 	" <div class=\"pie\" id=\"chart_server_nsstat_restype\">[no data to display]</div>\n"
429 	" </xsl:if>\n"
430 	" <table class=\"counters\">\n"
431 	" <xsl:for-each select=\"server/counters[@type=&quot;nsstat&quot;]/counter[.&gt;0]\">\n"
432 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
433 	" <xsl:variable name=\"css-class2\">\n"
434 	" <xsl:choose>\n"
435 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
436 	" <xsl:otherwise>odd</xsl:otherwise>\n"
437 	" </xsl:choose>\n"
438 	" </xsl:variable>\n"
439 	" <tr class=\"{$css-class2}\">\n"
440 	" <th>\n"
441 	" <xsl:value-of select=\"@name\"/>\n"
442 	" </th>\n"
443 	" <td>\n"
444 	" <xsl:value-of select=\".\"/>\n"
445 	" </td>\n"
446 	" </tr>\n"
447 	" </xsl:for-each>\n"
448 	" </table>\n"
449 	" <br/>\n"
450 	" </xsl:if>\n"
451 	" <xsl:if test=\"server/counters[@type=&quot;zonestat&quot;]/counter[.&gt;0]\">\n"
452 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
453 	" <h2>Zone Maintenance Statistics</h2>\n"
454 	" <script type=\"text/javascript\">\n"
455 	" graphs.push({\n"
456 	" 'title' : \"Zone Maintenance Stats\",\n"
457 	" 'target': 'chart_server_zone_maint',\n"
458 	" 'style': 'barchart',\n"
459 	" 'data': [['Type','Counter'],<xsl:for-each select=\"server/counters[@type=&quot;zonestat&quot;]/counter[.&gt;0]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n"
460 	" });\n"
461 	" </script>\n"
462 	" <!-- Non Mozilla specific markup -->\n"
463 	" <div class=\"pie\" id=\"chart_server_zone_maint\">[no data to display]</div>\n"
464 	" </xsl:if>\n"
465 	" <table class=\"counters\">\n"
466 	" <xsl:for-each select=\"server/counters[@type=&quot;zonestat&quot;]/counter\">\n"
467 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
468 	" <xsl:variable name=\"css-class3\">\n"
469 	" <xsl:choose>\n"
470 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
471 	" <xsl:otherwise>odd</xsl:otherwise>\n"
472 	" </xsl:choose>\n"
473 	" </xsl:variable>\n"
474 	" <tr class=\"{$css-class3}\">\n"
475 	" <th>\n"
476 	" <xsl:value-of select=\"@name\"/>\n"
477 	" </th>\n"
478 	" <td>\n"
479 	" <xsl:value-of select=\".\"/>\n"
480 	" </td>\n"
481 	" </tr>\n"
482 	" </xsl:for-each>\n"
483 	" </table>\n"
484 	" </xsl:if>\n"
485 	" <xsl:if test=\"server/counters[@type=&quot;resstat&quot;]/counter[.&gt;0]\">\n"
486 	" <h2>Resolver Statistics (Common)</h2>\n"
487 	" <table class=\"counters\">\n"
488 	" <xsl:for-each select=\"server/counters[@type=&quot;resstat&quot;]/counter\">\n"
489 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
490 	" <xsl:variable name=\"css-class4\">\n"
491 	" <xsl:choose>\n"
492 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
493 	" <xsl:otherwise>odd</xsl:otherwise>\n"
494 	" </xsl:choose>\n"
495 	" </xsl:variable>\n"
496 	" <tr class=\"{$css-class4}\">\n"
497 	" <th>\n"
498 	" <xsl:value-of select=\"@name\"/>\n"
499 	" </th>\n"
500 	" <td>\n"
501 	" <xsl:value-of select=\".\"/>\n"
502 	" </td>\n"
503 	" </tr>\n"
504 	" </xsl:for-each>\n"
505 	" </table>\n"
506 	" </xsl:if>\n"
507 	" <xsl:for-each select=\"views/view\">\n"
508 	" <xsl:if test=\"counters[@type=&quot;resstats&quot;]/counter[.&gt;0]\">\n"
509 	" <h3>Resolver Statistics for View <xsl:value-of select=\"@name\"/></h3>\n"
510 	" <table class=\"counters\">\n"
511 	" <xsl:for-each select=\"counters[@type=&quot;resstats&quot;]/counter[.&gt;0]\">\n"
512 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
513 	" <xsl:variable name=\"css-class5\">\n"
514 	" <xsl:choose>\n"
515 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
516 	" <xsl:otherwise>odd</xsl:otherwise>\n"
517 	" </xsl:choose>\n"
518 	" </xsl:variable>\n"
519 	" <tr class=\"{$css-class5}\">\n"
520 	" <th>\n"
521 	" <xsl:value-of select=\"@name\"/>\n"
522 	" </th>\n"
523 	" <td>\n"
524 	" <xsl:value-of select=\".\"/>\n"
525 	" </td>\n"
526 	" </tr>\n"
527 	" </xsl:for-each>\n"
528 	" </table>\n"
529 	" </xsl:if>\n"
530 	" </xsl:for-each>\n"
531 	" <xsl:for-each select=\"views/view\">\n"
532 	" <xsl:if test=\"counters[@type=&quot;adbstat&quot;]/counter[.&gt;0]\">\n"
533 	" <h3>ADB Statistics for View <xsl:value-of select=\"@name\"/></h3>\n"
534 	" <table class=\"counters\">\n"
535 	" <xsl:for-each select=\"counters[@type=&quot;adbstat&quot;]/counter[.&gt;0]\">\n"
536 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
537 	" <xsl:variable name=\"css-class5\">\n"
538 	" <xsl:choose>\n"
539 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
540 	" <xsl:otherwise>odd</xsl:otherwise>\n"
541 	" </xsl:choose>\n"
542 	" </xsl:variable>\n"
543 	" <tr class=\"{$css-class5}\">\n"
544 	" <th>\n"
545 	" <xsl:value-of select=\"@name\"/>\n"
546 	" </th>\n"
547 	" <td>\n"
548 	" <xsl:value-of select=\".\"/>\n"
549 	" </td>\n"
550 	" </tr>\n"
551 	" </xsl:for-each>\n"
552 	" </table>\n"
553 	" </xsl:if>\n"
554 	" </xsl:for-each>\n"
555 	"\n"
556 	" <xsl:for-each select=\"views/view\">\n"
557 	" <xsl:if test=\"counters[@type=&quot;cachestats&quot;]/counter[.&gt;0]\">\n"
558 	" <h3>Cache Statistics for View <xsl:value-of select=\"@name\"/></h3>\n"
559 	" <table class=\"counters\">\n"
560 	" <xsl:for-each select=\"counters[@type=&quot;cachestats&quot;]/counter[.&gt;0]\">\n"
561 	" <xsl:sort select=\".\" data-type=\"number\" order=\"descending\"/>\n"
562 	" <xsl:variable name=\"css-class5\">\n"
563 	" <xsl:choose>\n"
564 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
565 	" <xsl:otherwise>odd</xsl:otherwise>\n"
566 	" </xsl:choose>\n"
567 	" </xsl:variable>\n"
568 	" <tr class=\"{$css-class5}\">\n"
569 	" <th>\n"
570 	" <xsl:value-of select=\"@name\"/>\n"
571 	" </th>\n"
572 	" <td>\n"
573 	" <xsl:value-of select=\".\"/>\n"
574 	" </td>\n"
575 	" </tr>\n"
576 	" </xsl:for-each>\n"
577 	" </table>\n"
578 	" </xsl:if>\n"
579 	" </xsl:for-each>\n"
580 	"\n"
581 	" <xsl:for-each select=\"views/view\">\n"
582 	" <xsl:if test=\"cache/rrset\">\n"
583 	" <h3>Cache DB RRsets for View <xsl:value-of select=\"@name\"/></h3>\n"
584 	" <table class=\"counters\">\n"
585 	" <xsl:for-each select=\"cache/rrset\">\n"
586 	" <xsl:variable name=\"css-class6\">\n"
587 	" <xsl:choose>\n"
588 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
589 	" <xsl:otherwise>odd</xsl:otherwise>\n"
590 	" </xsl:choose>\n"
591 	" </xsl:variable>\n"
592 	" <tr class=\"{$css-class6}\">\n"
593 	" <th>\n"
594 	" <xsl:value-of select=\"name\"/>\n"
595 	" </th>\n"
596 	" <td>\n"
597 	" <xsl:value-of select=\"counter\"/>\n"
598 	" </td>\n"
599 	" </tr>\n"
600 	" </xsl:for-each>\n"
601 	" </table>\n"
602 	" <br/>\n"
603 	" </xsl:if>\n"
604 	" </xsl:for-each>\n"
605 	"\n"
606 	" <xsl:if test=\"server/counters[@type=&quot;sockstat&quot;]/counter[.&gt;0]\">\n"
607 	" <h2>Socket I/O Statistics</h2>\n"
608 	" <table class=\"counters\">\n"
609 	" <xsl:for-each select=\"server/counters[@type=&quot;sockstat&quot;]/counter[.&gt;0]\">\n"
610 	" <xsl:variable name=\"css-class7\">\n"
611 	" <xsl:choose>\n"
612 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
613 	" <xsl:otherwise>odd</xsl:otherwise>\n"
614 	" </xsl:choose>\n"
615 	" </xsl:variable>\n"
616 	" <tr class=\"{$css-class7}\">\n"
617 	" <th>\n"
618 	" <xsl:value-of select=\"@name\"/>\n"
619 	" </th>\n"
620 	" <td>\n"
621 	" <xsl:value-of select=\".\"/>\n"
622 	" </td>\n"
623 	" </tr>\n"
624 	" </xsl:for-each>\n"
625 	" </table>\n"
626 	" <br/>\n"
627 	" </xsl:if>\n"
628 	" <xsl:if test=\"views/view[zones/zone/counters[@type=&quot;qtype&quot;]/counter &gt;0]\">\n"
629 	" <h2>Received QTYPES per view/zone</h2>\n"
630 	" <xsl:for-each select=\"views/view[zones/zone/counters[@type=&quot;qtype&quot;]/counter &gt;0]\">\n"
631 	" <h3>View <xsl:value-of select=\"@name\"/></h3>\n"
632 	" <xsl:variable name=\"thisview\">\n"
633 	" <xsl:value-of select=\"@name\"/>\n"
634 	" </xsl:variable>\n"
635 	" <xsl:for-each select=\"zones/zone\">\n"
636 	" <xsl:if test=\"counters[@type=&quot;qtype&quot;]/counter[count(.) &gt; 0]\">\n"
637 	" <h4>Zone <xsl:value-of select=\"@name\"/></h4>\n"
638 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
639 	" <!-- Non Mozilla specific markup -->\n"
640 	" <script type=\"text/javascript\">\n"
641 	" graphs.push({\n"
642 	" 'title': \"Query types for zone <xsl:value-of select=\"@name\"/>\",\n"
643 	" 'target': 'chart_qtype_<xsl:value-of select=\"../../@name\"/>_<xsl:value-of select=\"@name\"/>',\n"
644 	" 'style': 'barchart',\n"
645 	" 'data': [['Type','Counter'],<xsl:for-each select=\"counters[@type=&quot;qtype&quot;]/counter[.&gt;0 and @name != &quot;QryAuthAns&quot;]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n"
646 	" });\n"
647 	"\n"
648 	" </script>\n"
649 	" <xsl:variable name=\"target\">\n"
650 	" <xsl:value-of select=\"@name\"/>\n"
651 	" </xsl:variable>\n"
652 	" <div class=\"pie\" id=\"chart_qtype_{$thisview}_{$target}\">[no data to display]</div>\n"
653 	" </xsl:if>\n"
654 	" <table class=\"counters\">\n"
655 	" <xsl:for-each select=\"counters[@type=&quot;qtype&quot;]/counter\">\n"
656 	" <xsl:sort select=\".\"/>\n"
657 	" <xsl:variable name=\"css-class10\">\n"
658 	" <xsl:choose>\n"
659 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
660 	" <xsl:otherwise>odd</xsl:otherwise>\n"
661 	" </xsl:choose>\n"
662 	" </xsl:variable>\n"
663 	" <tr class=\"{$css-class10}\">\n"
664 	" <th>\n"
665 	" <xsl:value-of select=\"@name\"/>\n"
666 	" </th>\n"
667 	" <td>\n"
668 	" <xsl:value-of select=\".\"/>\n"
669 	" </td>\n"
670 	" </tr>\n"
671 	" </xsl:for-each>\n"
672 	" </table>\n"
673 	" </xsl:if>\n"
674 	" </xsl:for-each>\n"
675 	" </xsl:for-each>\n"
676 	" </xsl:if>\n"
677 	" <xsl:if test=\"views/view[zones/zone/counters[@type=&quot;rcode&quot;]/counter &gt;0]\">\n"
678 	" <h2>Response Codes per view/zone</h2>\n"
679 	" <xsl:for-each select=\"views/view[zones/zone/counters[@type=&quot;rcode&quot;]/counter &gt;0]\">\n"
680 	" <h3>View <xsl:value-of select=\"@name\"/></h3>\n"
681 	" <xsl:variable name=\"thisview2\">\n"
682 	" <xsl:value-of select=\"@name\"/>\n"
683 	" </xsl:variable>\n"
684 	" <xsl:for-each select=\"zones/zone\">\n"
685 	" <xsl:if test=\"counters[@type=&quot;rcode&quot;]/counter[. &gt; 0]\">\n"
686 	" <h4>Zone <xsl:value-of select=\"@name\"/></h4>\n"
687 	" <xsl:if test=\"system-property('xsl:vendor')!='Transformiix'\">\n"
688 	" <!-- Non Mozilla specific markup -->\n"
689 	" <script type=\"text/javascript\">\n"
690 	" graphs.push({\n"
691 	" 'title': \"Response codes for zone <xsl:value-of select=\"@name\"/>\",\n"
692 	" 'target': 'chart_rescode_<xsl:value-of select=\"../../@name\"/>_<xsl:value-of select=\"@name\"/>',\n"
693 	" 'style': 'barchart',\n"
694 	" 'data': [['Type','Counter'],<xsl:for-each select=\"counters[@type=&quot;rcode&quot;]/counter[.&gt;0 and @name != &quot;QryAuthAns&quot;]\">['<xsl:value-of select=\"@name\"/>',<xsl:value-of select=\".\"/>],</xsl:for-each>]\n"
695 	" });\n"
696 	"\n"
697 	" </script>\n"
698 	" <xsl:variable name=\"target\">\n"
699 	" <xsl:value-of select=\"@name\"/>\n"
700 	" </xsl:variable>\n"
701 	" <div class=\"pie\" id=\"chart_rescode_{$thisview2}_{$target}\">[no data to display]</div>\n"
702 	" </xsl:if>\n"
703 	" <table class=\"counters\">\n"
704 	" <xsl:for-each select=\"counters[@type=&quot;rcode&quot;]/counter[.&gt;0 and @name != &quot;QryAuthAns&quot;]\">\n"
705 	" <xsl:sort select=\".\"/>\n"
706 	" <xsl:variable name=\"css-class11\">\n"
707 	" <xsl:choose>\n"
708 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
709 	" <xsl:otherwise>odd</xsl:otherwise>\n"
710 	" </xsl:choose>\n"
711 	" </xsl:variable>\n"
712 	" <tr class=\"{$css-class11}\">\n"
713 	" <th>\n"
714 	" <xsl:value-of select=\"@name\"/>\n"
715 	" </th>\n"
716 	" <td>\n"
717 	" <xsl:value-of select=\".\"/>\n"
718 	" </td>\n"
719 	" </tr>\n"
720 	" </xsl:for-each>\n"
721 	" </table>\n"
722 	" </xsl:if>\n"
723 	" </xsl:for-each>\n"
724 	" </xsl:for-each>\n"
725 	" </xsl:if>\n"
726 	" <xsl:if test=\"socketmgr/sockets/socket\">\n"
727 	" <h2>Network Status</h2>\n"
728 	" <table class=\"netstat\">\n"
729 	" <tr>\n"
730 	" <th>ID</th>\n"
731 	" <th>Name</th>\n"
732 	" <th>Type</th>\n"
733 	" <th>References</th>\n"
734 	" <th>LocalAddress</th>\n"
735 	" <th>PeerAddress</th>\n"
736 	" <th>State</th>\n"
737 	" </tr>\n"
738 	" <xsl:for-each select=\"socketmgr/sockets/socket\">\n"
739 	" <xsl:sort select=\"id\"/>\n"
740 	" <xsl:variable name=\"css-class12\">\n"
741 	" <xsl:choose>\n"
742 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
743 	" <xsl:otherwise>odd</xsl:otherwise>\n"
744 	" </xsl:choose>\n"
745 	" </xsl:variable>\n"
746 	" <tr class=\"{$css-class12}\">\n"
747 	" <td>\n"
748 	" <xsl:value-of select=\"id\"/>\n"
749 	" </td>\n"
750 	" <td>\n"
751 	" <xsl:value-of select=\"name\"/>\n"
752 	" </td>\n"
753 	" <td>\n"
754 	" <xsl:value-of select=\"type\"/>\n"
755 	" </td>\n"
756 	" <td>\n"
757 	" <xsl:value-of select=\"references\"/>\n"
758 	" </td>\n"
759 	" <td>\n"
760 	" <xsl:value-of select=\"local-address\"/>\n"
761 	" </td>\n"
762 	" <td>\n"
763 	" <xsl:value-of select=\"peer-address\"/>\n"
764 	" </td>\n"
765 	" <td>\n"
766 	" <xsl:for-each select=\"states\">\n"
767 	" <xsl:value-of select=\".\"/>\n"
768 	" </xsl:for-each>\n"
769 	" </td>\n"
770 	" </tr>\n"
771 	" </xsl:for-each>\n"
772 	" </table>\n"
773 	" <br/>\n"
774 	" </xsl:if>\n"
775 	" <xsl:if test=\"taskmgr/thread-model/type\">\n"
776 	" <h2>Task Manager Configuration</h2>\n"
777 	" <table class=\"counters\">\n"
778 	" <tr>\n"
779 	" <th class=\"even\">Thread-Model</th>\n"
780 	" <td>\n"
781 	" <xsl:value-of select=\"taskmgr/thread-model/type\"/>\n"
782 	" </td>\n"
783 	" </tr>\n"
784 	" <tr class=\"odd\">\n"
785 	" <th>Worker Threads</th>\n"
786 	" <td>\n"
787 	" <xsl:value-of select=\"taskmgr/thread-model/worker-threads\"/>\n"
788 	" </td>\n"
789 	" </tr>\n"
790 	" <tr class=\"even\">\n"
791 	" <th>Default Quantum</th>\n"
792 	" <td>\n"
793 	" <xsl:value-of select=\"taskmgr/thread-model/default-quantum\"/>\n"
794 	" </td>\n"
795 	" </tr>\n"
796 	" <tr class=\"odd\">\n"
797 	" <th>Tasks Running</th>\n"
798 	" <td>\n"
799 	" <xsl:value-of select=\"taskmgr/thread-model/tasks-running\"/>\n"
800 	" </td>\n"
801 	" </tr>\n"
802 	" <tr class=\"even\">\n"
803 	" <th>Tasks Ready</th>\n"
804 	" <td>\n"
805 	" <xsl:value-of select=\"taskmgr/thread-model/tasks-ready\"/>\n"
806 	" </td>\n"
807 	" </tr>\n"
808 	" </table>\n"
809 	" <br/>\n"
810 	" </xsl:if>\n"
811 	" <xsl:if test=\"taskmgr/tasks/task\">\n"
812 	" <h2>Tasks</h2>\n"
813 	" <table class=\"tasks\">\n"
814 	" <tr>\n"
815 	" <th>ID</th>\n"
816 	" <th>Name</th>\n"
817 	" <th>References</th>\n"
818 	" <th>State</th>\n"
819 	" <th>Quantum</th>\n"
820 	" <th>Events</th>\n"
821 	" </tr>\n"
822 	" <xsl:for-each select=\"taskmgr/tasks/task\">\n"
823 	" <xsl:sort select=\"name\"/>\n"
824 	" <xsl:variable name=\"css-class14\">\n"
825 	" <xsl:choose>\n"
826 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
827 	" <xsl:otherwise>odd</xsl:otherwise>\n"
828 	" </xsl:choose>\n"
829 	" </xsl:variable>\n"
830 	" <tr class=\"{$css-class14}\">\n"
831 	" <td>\n"
832 	" <xsl:value-of select=\"id\"/>\n"
833 	" </td>\n"
834 	" <td>\n"
835 	" <xsl:value-of select=\"name\"/>\n"
836 	" </td>\n"
837 	" <td>\n"
838 	" <xsl:value-of select=\"references\"/>\n"
839 	" </td>\n"
840 	" <td>\n"
841 	" <xsl:value-of select=\"state\"/>\n"
842 	" </td>\n"
843 	" <td>\n"
844 	" <xsl:value-of select=\"quantum\"/>\n"
845 	" </td>\n"
846 	" <td>\n"
847 	" <xsl:value-of select=\"events\"/>\n"
848 	" </td>\n"
849 	" </tr>\n"
850 	" </xsl:for-each>\n"
851 	" </table>\n"
852 	" <br/>\n"
853 	" </xsl:if>\n"
854 	" <xsl:if test=\"memory/summary\">\n"
855 	" <h2>Memory Usage Summary</h2>\n"
856 	" <table class=\"counters\">\n"
857 	" <xsl:for-each select=\"memory/summary/*\">\n"
858 	" <xsl:variable name=\"css-class13\">\n"
859 	" <xsl:choose>\n"
860 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
861 	" <xsl:otherwise>odd</xsl:otherwise>\n"
862 	" </xsl:choose>\n"
863 	" </xsl:variable>\n"
864 	" <tr class=\"{$css-class13}\">\n"
865 	" <th>\n"
866 	" <xsl:value-of select=\"name()\"/>\n"
867 	" </th>\n"
868 	" <td>\n"
869 	" <xsl:value-of select=\".\"/>\n"
870 	" </td>\n"
871 	" </tr>\n"
872 	" </xsl:for-each>\n"
873 	" </table>\n"
874 	" <br/>\n"
875 	" </xsl:if>\n"
876 	" <xsl:if test=\"memory/contexts/context\">\n"
877 	" <h2>Memory Contexts</h2>\n"
878 	" <table class=\"mctx\">\n"
879 	" <tr>\n"
880 	" <th>ID</th>\n"
881 	" <th>Name</th>\n"
882 	" <th>References</th>\n"
883 	" <th>TotalUse</th>\n"
884 	" <th>InUse</th>\n"
885 	" <th>MaxUse</th>\n"
886 	" <th>BlockSize</th>\n"
887 	" <th>Pools</th>\n"
888 	" <th>HiWater</th>\n"
889 	" <th>LoWater</th>\n"
890 	" </tr>\n"
891 	" <xsl:for-each select=\"memory/contexts/context\">\n"
892 	" <xsl:sort select=\"total\" data-type=\"number\" order=\"descending\"/>\n"
893 	" <xsl:variable name=\"css-class14\">\n"
894 	" <xsl:choose>\n"
895 	" <xsl:when test=\"position() mod 2 = 0\">even</xsl:when>\n"
896 	" <xsl:otherwise>odd</xsl:otherwise>\n"
897 	" </xsl:choose>\n"
898 	" </xsl:variable>\n"
899 	" <tr class=\"{$css-class14}\">\n"
900 	" <td>\n"
901 	" <xsl:value-of select=\"id\"/>\n"
902 	" </td>\n"
903 	" <td>\n"
904 	" <xsl:value-of select=\"name\"/>\n"
905 	" </td>\n"
906 	" <td>\n"
907 	" <xsl:value-of select=\"references\"/>\n"
908 	" </td>\n"
909 	" <td>\n"
910 	" <xsl:value-of select=\"total\"/>\n"
911 	" </td>\n"
912 	" <td>\n"
913 	" <xsl:value-of select=\"inuse\"/>\n"
914 	" </td>\n"
915 	" <td>\n"
916 	" <xsl:value-of select=\"maxinuse\"/>\n"
917 	" </td>\n"
918 	" <td>\n"
919 	" <xsl:value-of select=\"blocksize\"/>\n"
920 	" </td>\n"
921 	" <td>\n"
922 	" <xsl:value-of select=\"pools\"/>\n"
923 	" </td>\n"
924 	" <td>\n"
925 	" <xsl:value-of select=\"hiwater\"/>\n"
926 	" </td>\n"
927 	" <td>\n"
928 	" <xsl:value-of select=\"lowater\"/>\n"
929 	" </td>\n"
930 	" </tr>\n"
931 	" </xsl:for-each>\n"
932 	" </table>\n"
933 	" </xsl:if>\n"
934 	" <hr/>\n"
935 	" <p class=\"footer\">Internet Systems Consortium Inc.<br/><a href=\"http://www.isc.org\">http://www.isc.org</a></p>\n"
936 	" </body>\n"
937 	" </html>\n"
938 	" </xsl:template>\n"
939 	"</xsl:stylesheet>\n";
940