Inspired by bug #44958 - Record level support for Data Tables. (No formula parser...
[poi.git] / src / documentation / content / xdocs / poifs / index.xml
blob4b693475b6d34963fc28e296c2bffe37e888e9ff
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3    ====================================================================
4    Licensed to the Apache Software Foundation (ASF) under one or more
5    contributor license agreements.  See the NOTICE file distributed with
6    this work for additional information regarding copyright ownership.
7    The ASF licenses this file to You under the Apache License, Version 2.0
8    (the "License"); you may not use this file except in compliance with
9    the License.  You may obtain a copy of the License at
11        http://www.apache.org/licenses/LICENSE-2.0
13    Unless required by applicable law or agreed to in writing, software
14    distributed under the License is distributed on an "AS IS" BASIS,
15    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16    See the License for the specific language governing permissions and
17    limitations under the License.
18    ====================================================================
19 -->
20 <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "../dtd/document-v11.dtd">
21 <document>
22   <header>
23     <title>Apache POI - POIFS - Java implementation of the OLE 2 Compound Document format</title>
24     <subtitle>Overview</subtitle>
25     <authors>
26       <person name="Andrew C. Oliver" email="acoliver@apache.org"/>     
27       <person name="Nicola Ken Barozzi" email="barozzi@nicolaken.com"/>     
28     </authors>
29   </header>
30   <body>
31     <section><title>Overview</title>
32       <p>POIFS is a pure Java implementation of the OLE 2 Compound
33          Document format.</p>
34       <p>By definition, all APIs developed by the POI project are
35          based somehow on the POIFS API.</p>
36       <p>A common confusion is on just what POIFS buys you or what OLE
37          2 Compound Document format is exactly. POIFS does not buy you
38          DOC, or XLS, but is necessary to generate or read DOC or XLS
39          files. You see, all file formats based on the OLE 2 Compound
40          Document Format have a common structure. The OLE 2 Compound
41          Document Format is essentially a convoluted archive
42          format. Think of POIFS as a "zip" library. Once you can get
43          the data in a zip file you still need to interpret the
44          data. As a general rule, while all of our formats <em>use</em>
45          POIFS, most of them attempt to abstract you from it. There
46          are some circumstances where this is not possible, but as a
47          general rule this is true.</p>
48       <p>If you're an end user type just looking to generate XLS
49          files, then you'd be looking for HSSF not POIFS; however, if
50          you have legacy code that uses MFC property sets, POIFS is
51          for you!  Regardless, you may or may not need to know how to
52          use POIFS but ultimately if you use technologies that come
53          from the POI project, you're using POIFS underneith.  Perhaps
54          we should have a branding campaign "POIFS Inside!".  ;-)</p>
56     </section>
57   </body>
58 </document>