<?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>POI-HPBF - Java API To Access Microsoft Publisher Format Files</title>
        <subtitle>Overview</subtitle>
        <authors>
            <person name="Nick Burch" email="nick at apache dot org"/>
        </authors>
    </header>

    <body>
        <section>
            <title>Overview</title>

            <p>HPBF is the POI Project's pure Java implementation of the 
			  Publisher file format.</p>
            <p>Currently, HPBF is in an early stage, whilst we try to
              figure out the file format. So far, we have basic text
              extraction support, and are able to read some parts within
              the file. Writing is not yet supported, as we are unable
              to make sense of the Contents stream, which we think has
              lots of offsets to other parts of the file.</p>
            <p>Our initial aim is to provude a text extractor for the format
              (now done), and be able to extract hyperlinks from within
              the document (partly supported). Additional low level
              code to process the file format may follow, if there
              is demand and developer interest warrant it.</p>
            <p>Text Extraction is available via the 
              <em>org.apache.poi.hpbf.extractor.PublisherTextExtractor</em>
              class.</p>
            <p>At this time, there is no <em>usermodel</em> api or similar.
              There is only low level support for certain parts of
              the file, but by no means all of it.</p>
            <p>Our current understanding of the file format is documented
              <link href="file-format.html">here</link>.</p>
            <note> 
                This code currently lives the 
                <link href="http://svn.apache.org/viewcvs.cgi/poi/trunk/src/scratchpad/">scratchpad area</link> 
                of the POI SVN repository. 
				Ensure that you have the scratchpad jar or the scratchpad 
                build area in your
				classpath before experimenting with this code.
			</note>
        </section>
    </body>
</document>
