/[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 - (hide 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 wakaba 1.1 <!DOCTYPE html>
2     <html lang="en">
3     <head>
4     <title>Whatpm &mdash; Perl Modules for Web Hypertext Application
5 wakaba 1.2 Technologies (beta)</title>
6 wakaba 1.1 <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 wakaba 1.31 <link rel=feed href="whatpm-commit" type="application/atom+xml"
10     title="ChangeLog diffs">
11 wakaba 1.1 </head>
12     <body>
13 wakaba 1.27 <h1>Whatpm &mdash; Perl modules for Web hypertext application technologies
14     (<em>beta</em>)</h1>
15 wakaba 1.1
16     <div class="section" id="introduction">
17     <h2>Introduction</h2>
18    
19 wakaba 1.26 <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 wakaba 1.8 project.</p>
25 wakaba 1.1
26 wakaba 1.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 wakaba 1.31 <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 wakaba 1.33 <li><tiem>2009-01-12</time>: <a href="#bts">The bug tacking system</a>
41     ia available.
42    
43 wakaba 1.31 <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 wakaba 1.26 <div class=section id=modules>
52     <h2>Modules</h2>
53    
54 wakaba 1.29 <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 wakaba 1.33 <p>Note also that some modules have no documentation yet.
58 wakaba 1.29
59 wakaba 1.26 <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 wakaba 1.31 <p id=modules-xml>Modules for the XML support is as follow:
80    
81 wakaba 1.26 <dl>
82 wakaba 1.31
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 wakaba 1.26 <dt><a href="Whatpm/XMLSerializer.html"><code>Whatpm::XMLSerializer</code></a></dt>
104 wakaba 1.31
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 wakaba 1.26 </dl>
110    
111     <p id=modules-cc>The module for conformance checking of a DOM tree (i.e.
112 wakaba 1.29 a in-memory representation of an HTML or XML document) is as follows:
113 wakaba 1.1 <dl>
114 wakaba 1.29
115 wakaba 1.4 <dt><a href="Whatpm/ContentChecker.html"><code>Whatpm::ContentChecker</code></a></dt>
116 wakaba 1.29
117 wakaba 1.4 <dd>A DOM5 HTML (in-memory representation of a document) conformance
118 wakaba 1.29 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 wakaba 1.26 </dl>
123    
124 wakaba 1.33 <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 wakaba 1.27 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 wakaba 1.29
134 wakaba 1.26 </div>
135 wakaba 1.25
136 wakaba 1.26 <div class=section id=modules-css>
137     <h3>Modules for CSS</h3>
138 wakaba 1.25
139 wakaba 1.26 <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 wakaba 1.29 computations. (See also <a href="#demo-css-parser">demo</a>.)
144    
145 wakaba 1.27 <dt><a href="Whatpm/CSS/MediaQueryParser.pm"><code>Whatpm::CSS::MediaQueryParser</code></a>
146 wakaba 1.29
147     <dd>A media query parser. Note that only CSS 2.1 media types are
148     supported at the moment.
149    
150 wakaba 1.27 <dt><a href="Whatpm/CSS/MediaQuerySerializer.pm"><code>Whatpm::CSS::MediaQuerySerializer</code></a>
151 wakaba 1.29
152     <dd>A media query serializer. Note that only CSS 2.1 media types
153     are supported at the moment.
154    
155 wakaba 1.26 <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 wakaba 1.10 <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 wakaba 1.11 selectors</a> parser. (See also <a href="#demo-css-parser">demo</a>.)</dd>
161 wakaba 1.10 <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 wakaba 1.11 selectors</a> serializer. (See also <a href="#spec-ssft">specification</a>
164     and <a href="#demo-css-parser">demo</a>.)</dd>
165 wakaba 1.9 <dt><a href="Whatpm/CSS/Tokenizer.html"><code>Whatpm::CSS::Tokenizer</code></a></dt>
166 wakaba 1.11 <dd>A CSS tokenizer. (See also <a href="#demo-css-parser">demo</a>.)</dd>
167 wakaba 1.26 </dl>
168 wakaba 1.27
169 wakaba 1.29 <p>For the <code>Whatpm::CSS::Parser</code> module reresenting a CSSOM
170 wakaba 1.27 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 wakaba 1.31 CSSOM tree, in the form of <a href="#howtouse">the standard
174     <code>css_text</code> CSSOM attribute</a>.
175 wakaba 1.29
176 wakaba 1.26 </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 wakaba 1.4 <dt><a href="Whatpm/IMTChecker.html"><code>Whatpm::IMTChecker</code></a></dt>
186 wakaba 1.5 <dd>An Internet Media Type (<abbr>aka</abbr> MIME type) label
187 wakaba 1.4 conformance checker.</dd>
188 wakaba 1.26 </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 wakaba 1.25
197 wakaba 1.26 <p>Module for the URL support is as follows:
198     <dl>
199 wakaba 1.4 <dt><a href="Whatpm/URIChecker.html"><code>Whatpm::URIChecker</code></a></dt>
200     <dd>An IRI reference conformance checker.</dd>
201 wakaba 1.26 </dl>
202    
203     <p>Support for HTML5's realistic definition of URL is not available yet.
204     </div>
205 wakaba 1.22
206 wakaba 1.26 <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 wakaba 1.27 <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 wakaba 1.26 <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 wakaba 1.29
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 wakaba 1.22 <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 wakaba 1.26 </dl>
239     </div>
240 wakaba 1.8
241 wakaba 1.26 <!-- Whatpm::ContentChecker::*, Whatpm::H2H, Whatpm::NanoDOM, and
242     Whatpm::XMLParser are intentionally omitted from the list. -->
243 wakaba 1.31
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 wakaba 1.26 </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 wakaba 1.29
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 wakaba 1.5 <dt><a href="http://suika.fam.cx/gate/2005/sw/Whatpm%20Error%20Types">List of error types</a></dt>
325 wakaba 1.26 <!-- @@ TODO: Need to update the link - the document above is out of date -->
326 wakaba 1.8 <dd>Description of errors to be notified to callback functions by Whatpm
327     modules.</dd>
328 wakaba 1.26
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 wakaba 1.28 <dt><a href="http://suika.fam.cx/gate/2005/sw/manakai/CSS%20Extensions">manakai's
352     CSS extensions</a>
353 wakaba 1.29 <dd>The specification for <code>-manakai-<var>*</var></code> properties
354 wakaba 1.28 and property values implemented by CSS-related modules.
355 wakaba 1.31 <dt id=spec-manakai-selectors><a href="http://suika.fam.cx/gate/2005/sw/manakai/Selectors%20Extensions">manakai's
356 wakaba 1.28 Selectors extensions</a>
357 wakaba 1.26 <dd>The specification for <code>:-manakai-<var>*</var></code>
358     pseudo-classes implemented by Selectors-related modules.</dd>
359 wakaba 1.1 </dl>
360     </div>
361    
362     <div class="section" id="demo">
363     <h2>Demo</h2>
364    
365 wakaba 1.29 <ul id=demo-html-parser>
366 wakaba 1.11 <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 wakaba 1.25
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 wakaba 1.11 (<a href="http://suika.fam.cx/gate/cvs/*checkout*/webroot/gate/2007/css/parser.cgi">source</a>)</li>
381 wakaba 1.25
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 wakaba 1.30 <h2>Applications</h2>
390 wakaba 1.25
391     <ul>
392 wakaba 1.29
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 wakaba 1.30 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 wakaba 1.29
402 wakaba 1.4 </ul>
403 wakaba 1.32
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 wakaba 1.33 some of them indirectly use Whatpm modules via DOM interfaces provided
408     by <a
409 wakaba 1.32 href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai-core</a>.
410    
411 wakaba 1.6 </div>
412    
413     <div class="section" id="dependency">
414     <h2>Dependency</h2>
415    
416     <dl>
417 wakaba 1.17 <dt id=dependency-perl>Perl 5.8 or later</dt>
418 wakaba 1.15 <dd>It is recommended to use newer stable release of Perl 5.8 (or
419     later).</dd>
420 wakaba 1.17 <dd id=dependency-encode>Some modules require <code>Encode</code>
421     modules, which are part of standard Perl distribution.</dd>
422 wakaba 1.19 <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 wakaba 1.17 <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 wakaba 1.19 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
430 wakaba 1.6 <dt><code>Message::IMT::InternetMediaType</code></dt>
431 wakaba 1.15 <dd>Module <code>Whatpm::IMTChecker</code> depends on
432 wakaba 1.6 <code>Message::IMT::InternetMediaType</code>, which is part of
433 wakaba 1.19 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
434 wakaba 1.6 <dt><code>Message::URI::URIReference</code></dt>
435 wakaba 1.15 <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 wakaba 1.19 <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>.</dd>
440 wakaba 1.20 <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 wakaba 1.23 <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 wakaba 1.19 <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 wakaba 1.29 They are not required for any practical use of those modules.
455 wakaba 1.19 </dl>
456     </dd>
457 wakaba 1.6 <dt><a href="http://suika.fam.cx/www/manakai-charlib/readme">manakai
458     charlib</a></dt>
459 wakaba 1.19 <dd>Module <code>Whatpm::Charset::DecodeHandle</code> depends on
460 wakaba 1.6 modules in <a href="http://suika.fam.cx/www/manakai-charlib/readme">manakai
461 wakaba 1.15 charlib</a> for decoding of <em>Japanese character encodings</em>.
462 wakaba 1.6 See the documentation for
463     <a href="http://suika.fam.cx/www/manakai-charlib/readme">manakai
464     charlib</a> for more information.</dd>
465 wakaba 1.19 <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 wakaba 1.25 meaningful, these softwares are required on the system. See the
471 wakaba 1.19 <a href="Whatpm/Charset/UniversalCharDet.html#dependency">documentation</a>
472     for more information.</dd>
473 wakaba 1.6 <dt><a href="http://search.cpan.org/~makamaka/JSON-1.14/"><code>JSON</code></a></dt>
474 wakaba 1.15 <dd><em>Testing</em> for modules <code>Whatpm::HTML</code> and
475 wakaba 1.11 <code>Whatpm::CSS::Tokenizer</code>
476 wakaba 1.6 depends on <a href="http://search.cpan.org/~makamaka/JSON-1.14/"><code>JSON</code> and related modules</a>.
477 wakaba 1.29 They are not required for any practical use of those modules.
478 wakaba 1.6 </dl>
479 wakaba 1.1 </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 wakaba 1.25
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 wakaba 1.1
492 wakaba 1.2 </div>
493    
494     <div class="section" id="todo">
495     <h2>TO DO</h2>
496    
497     <ul>
498     <li>Bug fix (Test results:
499 wakaba 1.3 <a href="t/content-type-result"><code>Whatpm::ContentType</code></a>,
500 wakaba 1.2 <a href="t/tokenizer-result">HTML tokenization</a>,
501 wakaba 1.3 <a href="t/tree-construction-result">HTML tree construction</a>,
502     <a href="t/content-checker-result"><code>Whatpm::ContentChecker</code></a>).</li>
503 wakaba 1.22 <li>Merge with the <a href="http://suika.fam.cx/www/2006/manakai/">manakai-core</a>
504     code tree.
505 wakaba 1.3 <li>Charset detection.</li>
506 wakaba 1.4 <li>Validation for <code>meta</code>.</li>
507 wakaba 1.29 <li>Validation for media queries (level 3), IRIs (against URI schemes),
508 wakaba 1.3 and so on.</li>
509 wakaba 1.4 <li>Documentations are missing for some features.</li>
510 wakaba 1.3 <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 wakaba 1.2 </ul>
513 wakaba 1.33
514     <p id=bts>See also <a href="http://manakai.g.hatena.ne.jp/task/">the
515     bug tracking system</a>.
516    
517 wakaba 1.7 </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 wakaba 1.17 team for their
524     <a href="http://html5lib.googlecode.com/svn/trunk/testdata/">HTML5
525 wakaba 1.7 parser test data</a>.</p>
526 wakaba 1.1 </div>
527    
528     <div class="section" id="author">
529     <h2>Author</h2>
530    
531 wakaba 1.4 <p><a href="http://suika.fam.cx/~wakaba/who?" rel="author">Wakaba</a>.</p>
532 wakaba 1.1 </div>
533    
534     <div class="section" id="license">
535     <h2>License</h2>
536    
537 wakaba 1.33 <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 wakaba 1.1
544     </div>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24