| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ==================================================================== |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| ==================================================================== |
| --> |
| <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "../dtd/document-v11.dtd"> |
| |
| <document> |
| <header> |
| <title>Apache POI - HWPF - Java API to Handle Microsoft Word Files</title> |
| <subtitle>Overview</subtitle> |
| <authors> |
| <person name="Nicola Ken Barozzi" email="barozzi@nicolaken.com"/> |
| <person name="Andrew C. Oliver" email="acoliver@apache.org"/> |
| <person name="Ryan Ackley" email="sackley@apache.org"/> |
| <person name="Rainer Klute" email="klute@apache.org"/> |
| </authors> |
| </header> |
| |
| <body> |
| <section><title>Overview</title> |
| |
| <p>HWPF is the name of our port of the Microsoft Word 97(-2002) file format |
| to pure Java.</p> |
| |
| <p>HWPF is still in early development. It is in the <link |
| href="http://svn.apache.org/viewcvs.cgi/poi/trunk/src/scratchpad/"> |
| scratchpad section of the SVN.</link> You will need to ensure you |
| either have a recent SVN checkout, or a recent SVN nightly build |
| (including the scratchpad jar!)</p> |
| |
| <p>Source in the |
| <em>org.apache.poi.hwpf.model</em> tree is the old legacy code refactored |
| into an object model. Source code in the |
| <em>org.apache.poi.hwpf.extractor</em> tree is a wrapper of this to |
| facilitate easy extraction of interesting things (eg the Text). |
| Source code in the <em>org.apache.poi.hdf</em> tree is the old legacy |
| code. |
| </p> |
| |
| <section> |
| <title>HWPF Pointman Needed!</title> |
| |
| <p>At the moment we unfortunately do not have someone taking care for HWPF |
| and fostering its development. What we need is someone to stand up, take |
| this thing under his hood as his baby and push it forward. Ryan Ackley, |
| who put a lot of effort into HWPF, is no longer on board, so HWPF is an |
| orphan child waiting to be adopted.</p> |
| |
| <p>If <strong>you</strong> are interested in becoming the new HWPF |
| pointman, you should look into the Microsoft Word internals. A good |
| starting point seems to be Ryan Ackley's <link |
| href="docoverview.html">overview</link>. This document contains a link to |
| a detailled Word format description you can find somewhere at |
| <link href="http://www.wotsit.org/">http://www.wotsit.org/</link>. Please |
| do not contact Ryan Ackley directly, because he is working for a company |
| now that signed a NDA with Microsoft and thus he will be no longer able to |
| answer questions.</p> |
| |
| <p>As a first step you should familiarize yourself with the source code, |
| examples, test cases, and the HWPF patches available at <link |
| href="http://issues.apache.org/">Bugzilla</link> (if any). Then you |
| should compile an overview of</p> |
| |
| <ul> |
| <li>the current HWPF status,</li> |
| <li>the patches in <link |
| href="http://issues.apache.org/bugzilla/">Bugzilla</link> to be checked |
| in (and those that should better be ditched),</li> |
| <li>the available test cases and the test cases still to be written,</li> |
| <li>the available documentation and the docs to be written,</li> |
| <li>anything else that seems reasonable</li> |
| </ul> |
| |
| <p>When you start start coding, you will not yet have write access to the |
| CVS repository. Please submit your patches to <link |
| href="http://issues.apache.org/">Bugzilla</link> and nag <link |
| href="mailto:klute@apache.org">Rainer Klute</link> until he commits |
| them. Besides the actual checking in of HWPF patches Rainer will also do |
| some minor reviews now and then of your source code patches, test cases |
| and documentation to help ensure software quality. But most of the time |
| you will be on your own.</p> |
| |
| <p>Please do not forget to write <link |
| href="http://www.junit.org/">JUnit</link> test cases and documentation! |
| We won't accept code that doesn't come with test cases. And please |
| consider that other contributors should be able to understand your source |
| code easily. If you need any help getting started with JUnit test cases |
| for HWPF, please ask on the developers' mailing list! If you show that you |
| are prepared to stick at it you will most likely be given CVS commit |
| access.</p> |
| |
| <p><strong>Important:</strong> It is legally vital for POI that you have |
| never seen any documentation or specification from Microsoft that required |
| you or your employer to sign an NDA to get it. Please do read the <link |
| href="../getinvolved/index.html">"Contribution to POI" page</link> for |
| details! This page also contains further information for you to start POI |
| development.</p> |
| |
| <p>Of course we will help you as best as we can. However, presently there |
| is no committer who is really familiar with the Word format, so you'll be |
| mostly on your own. We are looking forward for you and your contributions! |
| Honor and glory of becoming a POI committer are waiting!</p> |
| </section> |
| </section> |
| </body> |
| </document> |
| |
| <!-- Keep this comment at the end of the file |
| Local variables: |
| mode: xml |
| sgml-omittag:nil |
| sgml-shorttag:nil |
| sgml-namecase-general:nil |
| sgml-general-insert-case:lower |
| sgml-minimize-attributes:nil |
| sgml-always-quote-attributes:t |
| sgml-indent-step:1 |
| sgml-indent-data:t |
| sgml-parent-document:nil |
| sgml-exposed-tags:nil |
| sgml-local-catalogs:nil |
| sgml-local-ecat-files:nil |
| End: |
| --> |