http://jsonml.org/ takes a shot at a grammar for converting XHTML DOM elements into JSON. An an example:
<ul>
<li style="color:red">First Item</li>
<li title="Some hover text." style="color:green">Second Item</li>
<li><span class="code-example-third">Third</span> Item</li>
</ul>
becomes
["ul",
["li", {"style": "color:red"}, "First Item"],
["li", {"title": "Some hover text.", "style": "color:green"}, "Second Item"],
["li", ["span", {"class": "code-example-third"}, "Third"], " Item" ]
]
Haven’t used it yet, but thinking about using it for a project where I want to take any web page and re-template it using mustache.js.