|
|
| version 1.24, 2004/03/02 15:54:07 | version 1.113, 2005/12/16 15:08:53 |
|---|---|
| Line 1 | Line 1 |
| $request:charset[windows-1251] | @main[] |
| $response:charset[windows-1251] | $xdoc[^xdoc::create{<?xml version="1.0" encoding="$request:charset"?> |
| <!DOCTYPE people> | |
| <!--some comment--> | |
| <people xmlns:first="http://parser.ru/first" xmlns:second="http://parser.ru/second"> | |
| <man first:attrname="attr value"> | |
| <name>ПИФ^taint[&]</name> | |
| </man> | |
| <man id="1" имя="word слово"> | |
| <name>P«^;AF B</name> | |
| </man> | |
| </people> | |
| }] | |
| ^dump[$xdoc] | |
| ^connect[$SQL.connect-string]{ | ^xdoc.documentElement.firstChild.nextSibling.getAttributeNS[http://parser.ru/first;attrname]! |
| #$f[^file::sql[_bug.dat]{select 2*2}] | |
| #^f.save[binary;$f.name] $f.name saved | |
| #$f[^file::sql{select 2*2, '_bug2.zip' }] | ^xdoc.documentElement.lastChild.previousSibling.setAttributeNS[http://parser.ru/second;second:attrname2;value 2] |
| #^f.save[binary;$f.name] $f.name $f.content-type saved | |
| $f[^file::sql{select 2*2, '_bug2.giffff', 'image/gif' }] | ^dump[$xdoc] |
| ^f.save[binary;$f.name] $f.name $f.content-type saved | |
| #$f[^file::load[binary;_bug.gif]] | <hr> |
| #=^f.sql-string[]= | ^rem{ |
| ^㧥.removeAttributeNS[namespaceURI;localName] [3.1.1] | |
| $Attr[^㧥.getAttributeNodeNS[namespaceURI;localName]] [3.1.1] | |
| $Attr[^㧥.setAttributeNodeNS[$newAttr]] [3.1.1] | |
| $NodeList[^㧥.getElementsByTagNameNS[namespaceURI;localName]] | |
| ^if(^㧥.hasAttribute[name]){:} [3.1.1] | |
| ^if(^㧥.hasAttributeNS[namespaceURI;localName]){:} [3.1.1] | |
| ^show_xnode1[$xdoc.doctype] | |
| } | } |
| <hr> | |
| @dump[xdoc] | |
| ^show_xdoc2[$xdoc]<hr> | |
| ^show_xnode1[$xdoc]<hr> | |
| <hr> | |
| @show1[array] | |
| ^for[i](0;$array-1){ | |
| $x[$array.$i] | |
| $x.firstChild.nodeValue: | |
| $pattributes[$x.parentNode.attributes] | |
| ^if(^pattributes._count[]){ | |
| $pattributes.id.name=$pattributes.id.nodeValue | |
| } | |
| <br> | |
| } | |
| @show_xnodes1[array][i] | |
| ^for[i](0;^array._count[]-1){ | |
| ^show_xnode1[$array.$i;0;1] | |
| } | |
| @show_xnode1[x;level;single][l] | |
| ^if(def $x){ | |
| ^for[l](0;$level-1){ ^; ^; ^; ^;} | |
| ^if($x.nodeType == $xnode:ELEMENT_NODE){ | |
| <^;$x.nodeName | |
| $pairs[$x.attributes] | |
| ^if(def $pairs){ | |
| $names[^pairs._keys[]] | |
| ^names.menu{ $names.key="$pairs.[$names.key].nodeValue"} | |
| } | |
| >^; | |
| }{ | |
| [$x.nodeType] | |
| } | |
| ^if(def $x.nodeValue){$x.nodeValue}<br> | |
| ^show_xnode1[$x.firstChild]($level+1) | |
| ^if(!$single){ | |
| ^show_xnode1[$x.nextSibling]($level) | |
| } | |
| ^if($x.nodeType == $xnode:ELEMENT_NODE){ | |
| ^for[l](0;$level-1){ ^; ^; ^; ^;}<^;/$x.nodeName>^;<br> | |
| } | |
| } | |
| @show_xdoc2[xdoc] | |
| #$response:body[^xdoc.file[ $.media-type[text/paf] ]] | |
| <pre>^taint[html][^xdoc.string[ | |
| # $.method[html] | |
| # $.encoding[utF-8] | |
| # $.omit-xml-declaration[yes] | |
| # $.standalone[no] | |
| # -$.doctype-public[-//W3C//DTD XHTML] | |
| # -$.doctype-system[/a/b/c/] | |
| # $.indent[yes] | |
| # $.media-type[text/paf] | |
| ]] | |
| </pre> |