Download List

專案描述

blanco Framework is code generation framework for Java. It include R/O mapping tool 'blancoDb', SQL editor plug-in 'BlancoSqlEditorPlugin'.

System Requirements

System requirement is not defined

發布 2009-01-08 16:56
blancoHtmlParser blancoHtmlParser-0.1.4 (1 files 隱藏)

發布版本通知

blancoHtmlParserは HTML を解析するための Javaライブラリ(jarファイル)です。
概念的には「字句解析 (Lexical Analysi)」を担います。構文解析やHTML正常化については別のプロダクトが担当します。
※他の blanco Frameworkプロダクト群と異なり、blancoHtmlParserはソースコード自動生成処理系ではありません。通常の実行ライブラリによる提供となります。

[特徴]
・SAXハンドラーのように HTMLパース処理を進めるのが特徴です。
ただし、XMLのパースとは異なり、startElement と endElement とが必ずしも対になって発生するとは限りません。
※HTML の仕様により、省略されたオプションタグなどが存在する場合などには startElement と endElement
は対には発生しません。
※blancoHtmlNormalizer を利用して HTML を予め正常化しておくと、startElemnet と endElement
を対に発生させることができます。
・HTMLの内容を「そのまま」イベント発生させます。
文字参照などについて、文字やアトリビュート内において「そのまま」発生します。必要に応じてデコードして利用してください。
※一般的な HTMLパーサー実装と大きく異なる点のひとつです。
・パースとシリアライズがある程度の可逆性を実現します。
blancoHtmlParser と blancoHtmlSerializer を使って、ほんの少し HTML を変更することが可能です。
・アトリビュート内のホワイトスペースは解除されます。

[ステータス]
1.blancoHtmlParser : 開発版

[開発者]
1.伊賀敏樹 (IGA Tosiki / いがぴょん): 開発および維持メンテ担当
2.山本耕司 (ymoto) : 開発、レビュー、試験実施、リリース判定。

[ライセンス]
1.blancoHtmlParser は ライセンス として Eclipse Public License 1.0 と GNU Lesser General Public License をデュアルライセンスとして採用しています。

[JDK]
コンパイルおよび実行には、JDK 1.5 以降が必要です。

[依存するライブラリ]
コンパイル及び実行には下記のライブラリを必要とします。
クラスパスに含めるようにしてください。
1.その他の blanco Framework
概要: このプロダクトは 実行時に blanco Framework各種プロダクトに依存して動作します。
ライセンス: GNU Lesser General Public License
※依存ライブラリのEPL化を実施予定です。

更動紀錄

2009.01.04 (0.1.4)
実行効率を多少改善。

2009.01.04 (0.1.3)
もっと SAX 仕様に合わせるよう仕様変更。
(削除)BlancoHtmlContentHandler.java
  などを Unicode にエンコード/デコードを実現
また、これを実現するマッピングクラスを作成。
TODO <% %> のような JSP 風コメントの処理実現方法の検討が必要。

改行の処理について、もう少し考察を実施。以下の情報に由来。
http://www.w3.org/TR/2006/REC-xml-20060816/#sec-line-ends
#xD #xA and any #xD that is not followed by #xA to a single #xA character.

w3.org: Character entity references in HTML 4
http://www.w3.org/TR/1999/REC-html401-19991224/sgml/entities.html

2008.12.20 (0.1.2)
JavaDoc を少しだけ改善。
TODO まとめ
TODO DOCTYPEなどを分けて処理すること。
TODO 似たエンコーディングに読み替えるスイッチが欲しい。例 Shift_JIS → Windows-31J など。
その場合、オリジナル・エンコーディングは保持が必要か?
x-jis なんて記載は、もう存在しないかもしれないが、これも読み替える。など。
なお、大文字・小文字は かなりいいかげんなものも多い点に注意。
TODO 処理できない文字エンコーディングの取り扱い。