/[suikacvs]/markup/html/whatpm/readme.en.html
Suika

Contents of /markup/html/whatpm/readme.en.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.33 - (show annotations) (download) (as text)
Mon Jan 12 02:36:18 2009 UTC (15 years, 10 months ago) by wakaba
Branch: MAIN
CVS Tags: HEAD
Changes since 1.32: +20 -17 lines
File MIME type: text/html
Added link to the BTS; Minor editorial fixes

1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <title>Whatpm &mdash; Perl Modules for Web Hypertext Application
5 Technologies (beta)</title>
6 <link rel="stylesheet" href="http://suika.fam.cx/www/style/html/xhtml">
7 <link rel="license" href="#license">
8 <link rel="author" href="#author">
9 <link rel=feed href="whatpm-commit" type="application/atom+xml"
10 title="ChangeLog diffs">
11 </head>
12 <body>
13 <h1>Whatpm &mdash; Perl modules for Web hypertext application technologies
14 (<em>beta</em>)</h1>
15
16 <div class="section" id="introduction">
17 <h2>Introduction</h2>
18
19 <p><dfn>Whatpm</dfn> is a <em>work-in-progress</em> set of
20 <mark>P</mark>erl <mark>m</mark>odules for <mark>W</mark>eb
21 <mark>h</mark>ypertext <mark>a</mark>pplication
22 <mark>t</mark>echnologies. It is part of the <a
23 href="http://suika.fam.cx/www/2006/manakai/" rel=up>manakai</a>
24 project.</p>
25
26 <p>Whatpm supports various Web standard technologies, including <a
27 href="#modules-html">HTML, XHTML</a>, <a href="#modules-xml">XML</a>,
28 <a hreF="#modules-css">CSS</a>, <a href="#modules-http">HTTP</a>, and
29 <a href="#modules-url">URL</a>.
30 </div>
31
32 <div class=section id=news>
33 <h2>What's new?</h2>
34
35 <p><a href="whatpm-commit" rel=feed type="application/atom+xml">An
36 Atom feed for ChangeLog diffs</a> is available.
37
38 <ul>
39
40 <li><tiem>2009-01-12</time>: <a href="#bts">The bug tacking system</a>
41 ia available.
42
43 <li><time>2008-10-21</time>: <a href="#module-whatpm-xml-parser">An
44 XML parser with non-draconian error handling</a> released.
45 (Documentation is not available yet.)
46
47 </ul>
48
49 </div>
50
51 <div class=section id=modules>
52 <h2>Modules</h2>
53
54 <p>Note that all of these modules are <em>work in progress</em>
55 and have <a href="#todo">a number of unresolved problems</a>.</p>
56
57 <p>Note also that some modules have no documentation yet.
58
59 <div class=section id=modules-html-xml>
60 <h3>Modules for HTML and XML</h3>
61
62 <p id=modules-html>Modules related to HTML and XHTML are as follows:
63 <dl>
64 <dt id=module-whatpm-html><a href="Whatpm/HTML.html"><code>Whatpm::HTML</code></a></dt>
65 <dd>An implementation of HTML5 document and fragment
66 parsing algorithms. It can be used
67 to convert an arbitrary string into a
68 <abbr title="Document Object Model">DOM</abbr>. (See also
69 <a href="#demo-html-parser">demo</a>.)</dd>
70 <dt id=module-whatpm-html-serializer><a href="Whatpm/HTML/Serializer.html"><code>Whatpm::HTML::Serializer</code></a></dt>
71 <dd>An implementation of HTML5 fragment serialization algorithm.
72 (See also <a href="#demo-html-parser">demo</a>.)</dd>
73 <dt><a href="Whatpm/HTMLTable.html"><code>Whatpm::HTMLTable</code></a></dt>
74 <dd>An implementation of the HTML5 table algorithm. It can be
75 used to extract a table structure from a DOM <code>table</code>
76 element node. (See also <a href="#demo-html-table">demo</a>.)</dd>
77 </dl>
78
79 <p id=modules-xml>Modules for the XML support is as follow:
80
81 <dl>
82
83 <dt id=module-whatpm-xml-parser><a
84 href="Whatpm/XML/Parser.html"><code>Whatpm::XML::Parser</code></a>
85
86 <dd><p>An XML parser with non-draconian error handling. It can
87 construct a DOM tree from XML 1.0/1.1 documents that does <em>not</em>
88 rely on external entities (including the external subset entity) and
89 that does <em>not</em> contain general entity reference that
90 references an entity whose replacement text contains character
91 <code>&</code> or <code>&lt;</code>. It also supports XML namespaces.
92
93 <p>It does not stop the process to construct a DOM tree even if it
94 detects a well-formedness or a namespace well-formedness error. It
95 recovers from errors in a manner similar to HTML5's tokenization
96 algorithm. It is expected that the combination of this module and a
97 future extension to the <code>Whatpm::ContentChecker</code> framework
98 will provide a mean to detect all well-formedness and validity errors,
99 if desired.
100
101 <p>(See also <a href="#demo-html-parser-manakai">demo</a>.)
102
103 <dt><a href="Whatpm/XMLSerializer.html"><code>Whatpm::XMLSerializer</code></a></dt>
104
105 <dd>A simple XML serializer. It does namespace prefix fixups and
106 suitable for the serialization of a carefully build XML DOM tree. It
107 does not assure that the output is well-formed.
108
109 </dl>
110
111 <p id=modules-cc>The module for conformance checking of a DOM tree (i.e.
112 a in-memory representation of an HTML or XML document) is as follows:
113 <dl>
114
115 <dt><a href="Whatpm/ContentChecker.html"><code>Whatpm::ContentChecker</code></a></dt>
116
117 <dd>A DOM5 HTML (in-memory representation of a document) conformance
118 checker with a partial support for Atom 1.0. (See also <a
119 href="#demo-html-parser">demo</a> and <a
120 href="#app-webhacc">application</a>.)
121
122 </dl>
123
124 <p>For these modules, a DOM implementation that supports <a
125 href="http://suika.fam.cx/gate/2005/sw/manakai/DOM%20Perl%20Binding">the
126 manakai's Perl binding</a> of DOM is necessary to represent a document
127 in memory. The <a
128 href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai-core</a>
129 package contains such an implementation,
130 <code>Message::DOM::Implementation</code><!-- @@ TODO: ref -->, but it
131 should also be possible to use any other implementation that supports
132 the binding.
133
134 </div>
135
136 <div class=section id=modules-css>
137 <h3>Modules for CSS</h3>
138
139 <p>Modules for CSS and related technologies are as follows:
140 <dl>
141 <dt><a href="Whatpm/CSS/Cascade.html"><code>Whatpm::CSS::Cascade</code></a>
142 <dd>A media-independent implementation of CSS cascading and value
143 computations. (See also <a href="#demo-css-parser">demo</a>.)
144
145 <dt><a href="Whatpm/CSS/MediaQueryParser.pm"><code>Whatpm::CSS::MediaQueryParser</code></a>
146
147 <dd>A media query parser. Note that only CSS 2.1 media types are
148 supported at the moment.
149
150 <dt><a href="Whatpm/CSS/MediaQuerySerializer.pm"><code>Whatpm::CSS::MediaQuerySerializer</code></a>
151
152 <dd>A media query serializer. Note that only CSS 2.1 media types
153 are supported at the moment.
154
155 <dt><a href="Whatpm/CSS/Parser.html"><code>Whatpm::CSS::Parser</code></a>
156 <dd>A CSS parser that constructs CSSOM trees from style sheets. (See
157 also <a href="#demo-css-parser">demo</a>.)
158 <dt><a href="Whatpm/CSS/SelectorsParser.html"><code>Whatpm::CSS::SelectorsParser</code></a></dt>
159 <dd>A <a href="http://www.w3.org/TR/css3-selectors/#grouping">group of
160 selectors</a> parser. (See also <a href="#demo-css-parser">demo</a>.)</dd>
161 <dt><a href="Whatpm/CSS/SelectorsSerializer.html"><code>Whatpm::CSS::SelectorsSerializer</code></a></dt>
162 <dd>A <a href="http://www.w3.org/TR/css3-selectors/#grouping">group of
163 selectors</a> serializer. (See also <a href="#spec-ssft">specification</a>
164 and <a href="#demo-css-parser">demo</a>.)</dd>
165 <dt><a href="Whatpm/CSS/Tokenizer.html"><code>Whatpm::CSS::Tokenizer</code></a></dt>
166 <dd>A CSS tokenizer. (See also <a href="#demo-css-parser">demo</a>.)</dd>
167 </dl>
168
169 <p>For the <code>Whatpm::CSS::Parser</code> module reresenting a CSSOM
170 tree, modules in the <a
171 href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai-core</a>
172 package are used. Those modules also provide the serializer for the
173 CSSOM tree, in the form of <a href="#howtouse">the standard
174 <code>css_text</code> CSSOM attribute</a>.
175
176 </div>
177
178 <div class=section id=modules-http>
179 <h3>Modules for HTTP</h3>
180
181 <p>Modules for HTTP and related technologies are as follows:
182 <dl>
183 <dt><a href="Whatpm/ContentType.html"><code>Whatpm::ContentType</code></a></dt>
184 <dd>An implementation of HTML5 Content Type sniffing algorithm.</dd>
185 <dt><a href="Whatpm/IMTChecker.html"><code>Whatpm::IMTChecker</code></a></dt>
186 <dd>An Internet Media Type (<abbr>aka</abbr> MIME type) label
187 conformance checker.</dd>
188 </dl>
189
190 <p>Currently, support for parsing of HTTP headers and as such is not
191 yet available.
192 </div>
193
194 <div class=section id=modules-url>
195 <h3>Module for URL</h3>
196
197 <p>Module for the URL support is as follows:
198 <dl>
199 <dt><a href="Whatpm/URIChecker.html"><code>Whatpm::URIChecker</code></a></dt>
200 <dd>An IRI reference conformance checker.</dd>
201 </dl>
202
203 <p>Support for HTML5's realistic definition of URL is not available yet.
204 </div>
205
206 <div class=section id=modules-misc>
207 <h3>Modules for other technologies</h3>
208
209 <p>Following modules provide support for other Web-related technologies:
210 <dl>
211 <dt><a href="Whatpm/CacheManifest.html"><code>Whatpm::CacheManifest</code></a></dt>
212 <dd>An
213 <a href="http://www.whatwg.org/specs/web-apps/current-work/#manifests">HTML5
214 cache manifest</a> parser.</dd>
215 <dt><a href="Whatpm/Charset/DecodeHandle.html"><code>Whatpm::Charset::DecodeHandle</code></a>
216 <dd>A filehandle-like wrapper <a href="#doc-handles">interface</a> to
217 decode byte stream encoded in some character encoding.
218 <dt><a href="Whatpm/Charset/UnicodeChecker.html"><code>Whatpm::Charset::UnicodeChecker</code></a>
219 <dd>A Unicode character string checker.
220 <dt id=whatpm-charset-universalchardet><a href="Whatpm/Charset/UniversalCharDet.html"><code>Whatpm::Charset::UniversalCharDet</code></a></dt>
221 <dd>A Perl interface to universalchardet character encoding detection
222 library.</dd>
223 <dt><a href="Whatpm/LangTag.html"><code>Whatpm::LangTag</code></a>
224 <dd>A language tag parser and conformance checker, supporting both
225 older RFC 3066 definition and latest RFC 4646 definition. (See also
226 <a href="#demo-langtag">demo</a>.)
227
228 <dt><a href="Whatpm/RDFXML.html"><code>Whatpm::RDFXML</code></a>
229 <dd>An implementation of RDF/XML by which RDF triples can be extracted
230 from RDF/XML documents.
231
232 <dt><a href="Whatpm/WebIDL.html"><code>Whatpm::WebIDL</code></a></dt>
233 <dd>A WebIDL fragment parser. It parses an IDL fragment, whether conforming
234 or not, and constructs a DOM-like object model for further processing.
235 Non-conforming (or broken) IDL fragment-like string will be parsed using
236 CSS-like error-tolerant parsing rules, e.g. ignoring anything until next
237 <code>;</code> character.
238 </dl>
239 </div>
240
241 <!-- Whatpm::ContentChecker::*, Whatpm::H2H, Whatpm::NanoDOM, and
242 Whatpm::XMLParser are intentionally omitted from the list. -->
243
244 <div class=section id=howtouse>
245 <h3>How to use modules</h3>
246
247 <p><a href="#modules">Modules</a> listed above, which are included in
248 the Whatpm package, can be used by directly <code>use</code>ing or
249 <code>require</code>ing these modules and then invoking their native
250 interface. For more information on those native interfaces, see the
251 document of those modules and the source code of them.
252
253 <p>In addition, some of functionality provided by those modules can be
254 accessed via standardized DOM interfaces implemented by modules
255 included in the <a
256 href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai-core</a>
257 package. See the document of the module <a
258 href="http://suika.fam.cx/www/manakai-core/lib/Message/DOM/DOMImplementation.html"><code>Message::DOM::DOMImplementation</code></a>
259 for the way to access to the DOM interfaces.
260
261 <p>The table below summarizes the relationship between Whatpm modules
262 and DOM methods/attributes implemented by manakai-core modules:
263
264 <table>
265 <thead>
266 <tr><th scope=col>Whatpm module
267 <th scope=col>DOM methods/attributes
268
269 <tbody>
270
271 <tr><td><code>Whatpm::CSS::Cascade</code>
272 <td><code>get_computed_style</code> (<code>ViewCSS</code>),
273 <code>current_style</code> (<code>ElementCSS</code>)
274
275 <tr><td><code>Whatpm::CSS::Parser</code>
276 <td rowspan=2><code>CSSStyleDeclaration</code>'s attributes and methods,
277 <code>css_text</code> (CSSOM interfaces)
278
279 <tr><td><code>Whatpm::CSS::Serializer</code>
280
281 <tr><td rowspan=2><code>Whatpm::CSS::SelectorsParser</code>
282 <td><code>query_selector</code>, <code>query_selector_all</code>
283 (<code>DocumentSelector</code>, <code>ElementSelector</code>)
284 <tr><td rowspan=2><code>selector_text</code> (<code>CSSStyleRule</code>)
285
286 <tr><td><code>Whatpm::CSS::SelectorsSerializer</code>
287
288 <tr><td><code>Whatpm::HTML</code>
289 <td rowspan=4><code>inner_html</code> (<code>HTMLDocument</code>,
290 <code>Element</code>)
291
292 <tr><td><code>Whatpm::HTML::Serializer</code>
293
294 <tr><td><code>Whatpm::XML::Parser</code>
295
296 <tr><td><code>Whatpm::XMLSerializer</code>
297
298 </table>
299
300 </div>
301
302 </div>
303
304 <div class=section id=documents>
305 <h2>Documents</h2>
306
307 <p>For the description of functionalities provided by each module, see
308 <abbr>pod</abbr> documentation of the module. HTML version of
309 <abbr>pod</abbr> documentations are linked from the <a
310 href="#modules">list of modules above</a>.
311
312 <p>In addition, there are additional documents for some topics:
313 <dl>
314
315 <dt><a href="http://suika.fam.cx/gate/2007/html/standards">Standards
316 supported by WebHACC</a>
317
318 <dd>List and description of Web standards supported by the WebHACC
319 conformance checker. Although it is a documentation for the WebHACC,
320 it is also applicable to Whatpm in general (note that WebHACC is an
321 interactive user interface for the conformance checking feature
322 provided by Whatpm).
323
324 <dt><a href="http://suika.fam.cx/gate/2005/sw/Whatpm%20Error%20Types">List of error types</a></dt>
325 <!-- @@ TODO: Need to update the link - the document above is out of date -->
326 <dd>Description of errors to be notified to callback functions by Whatpm
327 modules.</dd>
328
329 <dt><a href="Whatpm/CSS/selectors-object">Selectors object</a></dt>
330 <dd>Description of data structure for Selectors, as implemented by
331 <a href="Whatpm/CSS/SelectorsParser.html"><code>Whatpm::CSS::SelectorsParser</code></a>
332 (as output), and
333 <a href="Whatpm/CSS/SelectorsSerializer.html"><code>Whatpm::CSS::SelectorsSerializer</code></a>
334 (as input)<!--, and
335 <a href="http://suika.fam.cx/www/manakai-core/lib/Message/DOM/SelectorsAPI.html"><code>Message::DOM::SelectorsAPI</code></a>-->.</dd>
336
337 <dt id=doc-user-data-names><a href="http://suika.fam.cx/gate/2005/sw/manakai/Predefined%20User%20Data%20Names">List of predefined user data names</a></dt>
338 <dd>List of user data names defined by Whatpm modules.</dd>
339
340 <dt id=doc-handles><a href="Whatpm/Charset/handles">Handle objects</a>
341 <dd>Description of character or byte stream input handle interfaces.
342 </dl>
343
344 <p>Following specifications define Whatpm-specific formats and extensions:
345 <dl id=spec>
346 <dt id=spec-ssft><a href="http://suika.fam.cx/www/markup/selectors/ssft/ssft"><abbr title="Selectors Serialization Format for Testing">SSFT</abbr>
347 Specification</a></dt>
348 <dd>The specification for the serialization format used for
349 testing Selectors-related modules.</dd>
350
351 <dt><a href="http://suika.fam.cx/gate/2005/sw/manakai/CSS%20Extensions">manakai's
352 CSS extensions</a>
353 <dd>The specification for <code>-manakai-<var>*</var></code> properties
354 and property values implemented by CSS-related modules.
355 <dt id=spec-manakai-selectors><a href="http://suika.fam.cx/gate/2005/sw/manakai/Selectors%20Extensions">manakai's
356 Selectors extensions</a>
357 <dd>The specification for <code>:-manakai-<var>*</var></code>
358 pseudo-classes implemented by Selectors-related modules.</dd>
359 </dl>
360 </div>
361
362 <div class="section" id="demo">
363 <h2>Demo</h2>
364
365 <ul id=demo-html-parser>
366 <li id=demo-html-parser-nanodom><a href="http://suika.fam.cx/gate/2007/html/parser-interface">HTML5 parser
367 and checker demo</a>
368 (<a href="http://suika.fam.cx/gate/cvs/*checkout*/webroot/gate/2007/html/parser.cgi">source</a>,
369 with <a href="Whatpm/NanoDOM.html">a lightweight non-conforming
370 DOM implementation</a>)</li>
371 <li id=demo-html-parser-manakai><a href="http://suika.fam.cx/gate/2007/html/parser-manakai-interface">HTML5
372 parser and checker demo, with manakai's DOM implementation</a>
373 (<a href="http://suika.fam.cx/gate/cvs/*checkout*/webroot/gate/2007/html/parser-manakai.cgi">source</a>)</li>
374 <li id=demo-html-table><a href="http://suika.fam.cx/gate/2007/html/table-interface">HTML5 table
375 structure visualization demo</a>
376 (<a href="http://suika.fam.cx/gate/cvs/*checkout*/webroot/gate/2007/html/table.cgi">source</a>)</li>
377
378 <li id=demo-css-parser><a href="http://suika.fam.cx/gate/2007/css/parser-interface">CSS
379 tokenizer, parser, and computed style computation demo</a>
380 (<a href="http://suika.fam.cx/gate/cvs/*checkout*/webroot/gate/2007/css/parser.cgi">source</a>)</li>
381
382 <li id=demo-langtag><a href="http://suika.fam.cx/gate/2007/langtag/langtag-demo-interface">Language
383 tag parsing and conformance checking demo</a>
384 (<a href="http://suika.fam.cx/gate/cvs/*checkout*/webroot/gate/2007/langtag/langtag-demo.cgi">source</a>)
385 </ul>
386 </div>
387
388 <div class=section id=applications>
389 <h2>Applications</h2>
390
391 <ul>
392
393 <li id=app-webhacc><a
394 href="http://suika.fam.cx/gate/2007/html/cc/"><abbr>WebHACC</abbr>
395 (Web hypertext application conformance checker)</a> (See also <a
396 href="http://suika.fam.cx/gate/2007/html/cc-about"><cite>about
397 WebHACC</cite></a>).
398
399 <li><a href="http://suika.fam.cx/www/webidl2tests/readme">wttjs</a>, a
400 WebIDL ECMAScript binding test suite generator.
401
402 </ul>
403
404 <p>See also <a
405 href="http://suika.fam.cx/www/manakai-core/doc/web/#applications">a
406 list of applications using modules in the manakai-core package</a>;
407 some of them indirectly use Whatpm modules via DOM interfaces provided
408 by <a
409 href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai-core</a>.
410
411 </div>
412
413 <div class="section" id="dependency">
414 <h2>Dependency</h2>
415
416 <dl>
417 <dt id=dependency-perl>Perl 5.8 or later</dt>
418 <dd>It is recommended to use newer stable release of Perl 5.8 (or
419 later).</dd>
420 <dd id=dependency-encode>Some modules require <code>Encode</code>
421 modules, which are part of standard Perl distribution.</dd>
422 <dt id=dependency-manakai-core>Modules from
423 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a></dt>
424 <dd>
425 <dl>
426 <dt id=dependency-error><a href="http://search.cpan.org/author/SHLOMIF/Error-0.17009/lib/Error.pm"><code>Error</code></a></dt>
427 <dd>Module <code>Whatpm::HTML</code> requires <code>Error</code>,
428 which is bundled in
429 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
430 <dt><code>Message::IMT::InternetMediaType</code></dt>
431 <dd>Module <code>Whatpm::IMTChecker</code> depends on
432 <code>Message::IMT::InternetMediaType</code>, which is part of
433 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
434 <dt><code>Message::URI::URIReference</code></dt>
435 <dd>Modules <code>Whatpm::URIChecker</code> and
436 <code>Whatpm::CacheManifest</code> depend on
437 <a href="http://suika.fam.cx/www/manakai-core/lib/Message/URI/URIReference.html"><code>Message::URI::URIReference</code></a>,
438 which is part of
439 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
440 <dt><code>Message::Charset::Info</code></dt>
441 <dd>Module <code>Whatpm::ContentChecker</code> depends on
442 <a href="http://suika.fam.cx/www/manakai-core/lib/Message/Charset/Info.html"><code>Message::Charset::Info</code></a>,
443 which is part of
444 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
445 <dt><code>Message::DOM::DOMImplementation</code>
446 <dd>Module <code>Whatpm::URIChecker</code> depends on
447 <code>Message::DOM::DOMImplementation</code>,
448 which is part of
449 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.
450 <dt><code>Message::DOM::DOMImplementation</code> and related modules</dt>
451 <dd><em>Testing</em> for module <code>Whatpm::ContentChecker</code>
452 depends on <code>Message::DOM::DOMImplementation</code> and related modules
453 in <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.
454 They are not required for any practical use of those modules.
455 </dl>
456 </dd>
457 <dt><a href="http://suika.fam.cx/www/manakai-charlib/readme">manakai
458 charlib</a></dt>
459 <dd>Module <code>Whatpm::Charset::DecodeHandle</code> depends on
460 modules in <a href="http://suika.fam.cx/www/manakai-charlib/readme">manakai
461 charlib</a> for decoding of <em>Japanese character encodings</em>.
462 See the documentation for
463 <a href="http://suika.fam.cx/www/manakai-charlib/readme">manakai
464 charlib</a> for more information.</dd>
465 <dt><a href="http://www.python.org/">Python</a>, Perl
466 <a href="http://search.cpan.org/~neilw/Inline-Python-0.22/"><code>Inline::Python</code></a>
467 module, and <a href="http://chardet.feedparser.org/">Universal Encoding
468 Detector</a></dt>
469 <dd>For the module <code>Whatpm::Charset::UniversalCharDet</code> being
470 meaningful, these softwares are required on the system. See the
471 <a href="Whatpm/Charset/UniversalCharDet.html#dependency">documentation</a>
472 for more information.</dd>
473 <dt><a href="http://search.cpan.org/~makamaka/JSON-1.14/"><code>JSON</code></a></dt>
474 <dd><em>Testing</em> for modules <code>Whatpm::HTML</code> and
475 <code>Whatpm::CSS::Tokenizer</code>
476 depends on <a href="http://search.cpan.org/~makamaka/JSON-1.14/"><code>JSON</code> and related modules</a>.
477 They are not required for any practical use of those modules.
478 </dl>
479 </div>
480
481 <div class="section" id="download">
482 <h2>Distribution</h2>
483
484 <p>The development version of Whatpm may be found in the
485 <a href="http://suika.fam.cx/gate/cvs/markup/html/whatpm/">CVS
486 repository</a>.</p>
487
488 <p><a href="http://suika.fam.cx/gate/cvs/markup/html/whatpm/whatpm.tar.gz?tarball=1">The
489 latest developmenet version of the Whatpm</a> is also available as a
490 tarball.
491
492 </div>
493
494 <div class="section" id="todo">
495 <h2>TO DO</h2>
496
497 <ul>
498 <li>Bug fix (Test results:
499 <a href="t/content-type-result"><code>Whatpm::ContentType</code></a>,
500 <a href="t/tokenizer-result">HTML tokenization</a>,
501 <a href="t/tree-construction-result">HTML tree construction</a>,
502 <a href="t/content-checker-result"><code>Whatpm::ContentChecker</code></a>).</li>
503 <li>Merge with the <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>
504 code tree.
505 <li>Charset detection.</li>
506 <li>Validation for <code>meta</code>.</li>
507 <li>Validation for media queries (level 3), IRIs (against URI schemes),
508 and so on.</li>
509 <li>Documentations are missing for some features.</li>
510 <li>In addition, each module has its own TO DO items.
511 (Search for <q>## TODO</q> and <q>## ISSUE</q> in each module.)</li>
512 </ul>
513
514 <p id=bts>See also <a href="http://manakai.g.hatena.ne.jp/task/">the
515 bug tracking system</a>.
516
517 </div>
518
519 <div class=section id=acknowledgments>
520 <h2>Acknowledgments</h2>
521
522 <p>Thanks to the <a href="http://code.google.com/p/html5lib/">html5lib</a>
523 team for their
524 <a href="http://html5lib.googlecode.com/svn/trunk/testdata/">HTML5
525 parser test data</a>.</p>
526 </div>
527
528 <div class="section" id="author">
529 <h2>Author</h2>
530
531 <p><a href="http://suika.fam.cx/~wakaba/who?" rel="author">Wakaba</a>.</p>
532 </div>
533
534 <div class="section" id="license">
535 <h2>License</h2>
536
537 <p>Copyright 2007$B!>(B2009 Wakaba <code class="mail">&lt;<a
538 href="mailto:w@suika.fam.cx"
539 rel="author">w@suika.fam.cx</a>></code>.</p>
540
541 <p>This library is free software; you can redistribute it and/or
542 modify it under the same terms as Perl itself.
543
544 </div>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24