| Apache | Jakarta | POI |
POI 2.0 Vision DocumentApache POI -- Vision -- 序章この文書は、POIの2.0バージョンのサイクルに関する「ビジョン」を表すものです。この「ビジョン」には特に変更がありませんでしたし、この文書は特に「時代遅れ」でもありませんけれども、このプロジェクトの構造は若干変更されています。この変更に関しても、私たちは「ビジョン」までも変更するつもりはありません。なぜなら、結局「削除」を伴う事になるからです。私たちは、自身が説明する情報を殆ど無駄にするつもりはありません。 この文書は、POIコンポーネントの一部をApache Cocoonプロジェクトに受け渡す前に作られたものです。また、POIがJakartaプロジェクトの一員となる前のものです。ですから、この「ビジョン」が変わっていないにせよ、実際には若干の部分については他のプロジェクトのものとなっているものもあります。これらに関し、大雑把に言って同じ時間枠の中で作業を依然として行っていますが(ただ、他のグループとの折衝の時間がマイナスになりますけど)、POIプロジェクト自身の技術的な担当ではなくなっています。 1. はじめに1.1 この文書の目的この文書の目的は、ハイレベルな要求・ユーザーのニーズ・POIプロジェクトの次期リリースの機能に関する、集積を行い分析し定義する事にあります。POIプロジェクトは、現在、以下のコンポーネントから成り立っています:HSSF Serializer・HSSFライブラリ・POIFSライブラリ
このリリースバージョンのサイクルの完成時には、POIプロジェクトはHSSF Generator及びHDFライブラリも含める事としています。
1.2 プロジェクトの概要POIプロジェクトの最初のリリースは、驚くほどの成功を成し得ました。このリリース版では、以下の機能による成功を模索しています:
2. 対象となるユーザ2.1 ユーザ/マーケットの統計XML・UNIX・Java技術には、驚くべき数の熱狂的ユーザーがいます。更に、Officeドキュメント形式の出力に関するMicrosoftのソリューションは、OLEサーバーとしてソフトウェアを操作させる事である場合がよくあります。この方法では、極端に低いパフォーマンスで非常に高いオーバーヘッドがかかり、更に、一度に一つの文書しか操作できない、という結果になりかねません。
2.2. ユーザ環境このソフトウェアの対象となるユーザーは、Java環境(どのOSでも良い)にある開発者、あるいはXML文書の生成と配置が出来るパワフルユーザです。 2.3. 主たるユーザニーズThe HSSF library currently requires a full object representation to be created before reading values. This results in very high memory utilization. We need to reduce this substantially for reading. It would be preferable to do this for writing, but it may not be possible due to the constraints imposed by the file format itself. Memory utilization during read is our top user complaint. The POIFS library currently requires a full object representation to be created before reading values. This results in very high memory utilization. We need to reduce this substantially for reading. The HSSF library currently ignores formula cells and identifies them as "UnknownRecord" at the lower level of the API. We must provide a way to read and write formulas. This is now the top requested feature. The HSSF library currently does not support charts. This is a key requirement of some users who wish to use HSSF in a reporting engine. The HSSF Serializer currently does not provide serialization for cell styling. User's will want stylish spreadsheets to result from their XML. There is currently no way to generate the XML from an XLS that is consistent with the format used by the HSSF Serializer. There should be a way to read and write the DOC file format using pure Java. 2.4. 競合元々は、Excelの読み書きに関するまともな競合はなかったのですが....どういうわけか、事態は変わってしまいました... 3. プロジェクトの概観3.1. プロジェクトの展望The produced code shall be licensed by the Apache License as used by the Cocoon 2 project (APL 1.1) and maintained on at http://poi.sourceforge.net and http://sourcefoge.net/projects/poi. It is our hope to at some point integrate with the various Apache projects (xml.apache.org and jakarta.apache.org), at which point we'd turn the copyright over to them. 3.2. プロジェクトの現状Java及び/或いはXML環境にある開発者にとって、このプロジェクトは、XMLデータをMicrosoft Excel 形式に出力するために必要な全てのツールを提供するでしょう。このプロジェクトは、ファイル形式や完全なOLE2複合ドキュメント形式を扱うのにMicrosoft Windowsベースのサーバーの使用を不要とするよう努めています。このプロジェクトは、XMLをExcelやWordファイル形式にするツールやそれらのファイル形式の文書をJavaで書くことを目的としているばかりでなく、他のOLE2複合ドキュメント形式を純粋なJava API群 に変換する、といった後々のプロジェクト用のツールを提供することも目的としているのです。 3.3. 機能の要約Apache Cocoon 2におけるHSSF Serializer
3.4. 前提条件・依存関係
4. プロジェクトの機能Enhancements to the POIFS API will include:
Enhancements to the HSSF API will include:
The HSSF Generator will include:
The HDF API will include:
5. その他の必要条件5.1. 一般標準全てのJavaコードは、100% pure Javaで書かれています 5.2. システム要件POIFS API の必要最小限のシステム要件は:
HSSF APIの必要最小限のシステム要件は:
HDF APIの必要最小限のシステム要件は:
HSSF Serializerの必要最小限のシステム要件は:
5.3. パフォーマンスに関する要件全てのコンポーネントは、ウェブサーバー環境下(特に、3種の神器: Cocoon2/Tomcat/Apache 環境下)において、十分に実務レベルのパフォーマンスを確保しなければなりません。 5.4. 環境に関する要件ソフトウェアは最初は開発環境上で動作することでしょう。我々は、あまり技術的に高度でないユーザがHSSFシリアライザ用のXMLドキュメントを書くことを斟酌すべきです。その他全てのコンポーネントは、中間くらいのJava2の知識を仮定しています。HSSFシリアライザの使用の際を除いて、XMLの知識は必要ありません。XMLが比較的新しい概念であるのと同じように、全てのコンポーネントにつき数多くの実践的なドキュメントが必要となるでしょう。また、スプレッドシートを書くという事、またPOIファイルシステムに導入されたコンセプトは、JavaやJava開発者にとって目新しいものとなるでしょう。 6. ドキュメントに関する要件6.1 POI FilesystemThe filesystem as read and written by POI shall be fully documented and explained so that the average Java developer can understand it. 6.2. POI APIThe POI API will be fully documented through Javadoc. A walkthrough of using the high level POI API shall be provided. No documentation outside of the Javadoc shall be provided for the low-level POI APIs. 6.3. HSSF File FormatThe HSSF File Format as implemented by the HSSF API will be fully documented. No documentation will be provided for features that are not supported by HSSF API that are supported by the Excel 97 File Format. Care will be taken not to infringe on any "legal stuff". Additionally, we are collaborating with the fine folks at OpenOffice.org on *free* documentation of the format. 6.4. HSSF APIThe HSSF API will be documented by javadoc. A walkthrough of using the high level HSSF API shall be provided. No documentation outside of the Javadoc shall be provided for the low level HSSF APIs. 6.5 HDF APIThe HDF API will be documented by javadoc. A walkthrough of using the high level HDF API shall be provided. No documentation outside of the Javadoc shall be provided for the low level HDF APIs. 6.6 HSSF SerializerThe HSSF Serializer will be documented by javadoc. 6.7 HSSF GeneratorThe HSSF Generator will be documented by javadoc. 6.8 HSSF Serializer Tag languageThe XML tag language along with function and usage shall be fully documented. Examples will be provided as well. 7. 用語集7.1 ファイルシステム(Filesystem)filesystem shall refer only to the POI formatted archive. 7.2 ファイル(File)file shall refer to the embedded data stream within a POI filesystem. This will be the actual embedded document. |
| Special Thanks -- 【お問い合わせ/テキスト広告】 |