<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright (C) 2004 The Apache Software Foundation. All rights reserved. -->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "../dtd/document-v11.dtd">

<document>
    <header>
        <title>POI-HSSF - Java API To Access Microsoft Excel Format Files</title>
        <subtitle>Overview</subtitle>
        <authors>
            <person name="Andrew C. Oliver" email="acoliver@apache.org"/>
            <person name="Nicola Ken Barozzi" email="barozzi@nicolaken.com"/>
        </authors>
    </header>

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

            <p>HSSF is the POI Project's pure Java implementation of the Excel '97(-2002) file format.</p>
            <p>HSSF provides a way to read spreadsheets create, modify, read and write XLS spreadsheets
             It provides:
            </p>
            <ul>
                <li>low level structures for those with special needs</li>
                <li>an eventmodel api for efficient read-only access</li>
                <li>a full usermodel api for creating, reading and modifying XLS files</li>
            </ul>
            <p>
        An alternate way of generating a spreadsheet is via the <link href="http://cocoon.apache.org">Cocoon</link> serializer (yet you'll still be using HSSF indirectly). 
         With Cocoon you can serialize any XML datasource (which might be a ESQL page outputting in SQL for instance) by simply 
        applying the stylesheet and designating the serializer.
            </p>
            <p>
        If you're merely reading spreadsheet data, then use the eventmodel api
        in the org.apache.poi.hssf.eventusermodel package.
            </p>
            <p>
        If you're modifying spreadsheet data then use the usermodel api.  You
        can also generate spreadsheets this way.
            </p>

        </section>
    </body>
</document>
