lol_html 0.3.2

Streaming HTML rewriter/parser with CSS selector-based API
Documentation
<html><head>
  <title>Namespaced attribute selectors</title>
  <style type="text/css">
 tests, tests * { display: block; color: red; }
 testA[*|attribute] { color: green; }
 testB[*|attribute="pass"] { color: green; }
 testC[*|attribute~="pass"] { color: green; }
 testD[*|attribute^="pass"] { color: green; }
 testE[*|attribute*="pass"] { color: green; }
 testF[*|attribute$="pass"] { color: green; }
 testG[*|attribute|="pass"] { color: green; }
</style>
  <link rel="author" title="Ian Hickson" href="mailto:ian@hixie.ch">
  <link rel="help" href="https://www.w3.org/TR/css3-selectors/#selectors"> <!-- bogus link to make sure it gets found -->
  <link rel="match" href="reference/seven-green-divs.xht">
  <meta name="flags" content=" namespace">
 </head>
 <body>
  <!--[ELEMENT('tests, tests *')]--><tests xmlns="http://css.example.net/" xmlns:test="http://css.example.net/"><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><testa attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></testa><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><testb attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></testb><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><testc attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></testc><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><testd attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></testd><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><teste attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></teste><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><testf attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></testf><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
   <!--[/TEXT('tests, tests *')]--><!--[ELEMENT('tests, tests *')]--><testg attribute="pass"><!--[TEXT('tests, tests *')]-->This should be green.<!--[/TEXT('tests, tests *')]--></testg><!--[/ELEMENT('tests, tests *')]--><!--[TEXT('tests, tests *')]-->
  <!--[/TEXT('tests, tests *')]--></tests><!--[/ELEMENT('tests, tests *')]-->

</body></html>