You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tika.apache.org by mi...@apache.org on 2012/09/05 16:31:09 UTC

svn commit: r1381198 [7/15] - in /tika/site: publish/ publish/0.10/ publish/0.5/ publish/0.6/ publish/0.7/ publish/0.8/ publish/0.9/ publish/1.0/ publish/1.1/ publish/1.2/ src/site/apt/0.10/ src/site/apt/1.0/ src/site/apt/1.1/ src/site/apt/1.2/

Modified: tika/site/publish/1.1/detection.html
URL: http://svn.apache.org/viewvc/tika/site/publish/1.1/detection.html?rev=1381198&r1=1381197&r2=1381198&view=diff
==============================================================================
--- tika/site/publish/1.1/detection.html (original)
+++ tika/site/publish/1.1/detection.html Wed Sep  5 14:31:06 2012
@@ -1,283 +1,282 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
-  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.
--->
-
-
-
-
-
-
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Content Detection</title>
-    <style type="text/css" media="all">
-      @import url("../css/site.css");
-    </style>
-    <link rel="icon" type="image/png" href="../tikaNoText16.png" />
-    <script type="text/javascript">
-      function selectProvider(form) {
-        provider = form.elements['searchProvider'].value;
-        if (provider == "any") {
-          if (Math.random() > 0.5) {
-            provider = "lucid";
-          } else {
-            provider = "sl";
-          }
-        }
-        if (provider == "lucid") {
-          form.action = "http://search.lucidimagination.com/p:tika";
-        } else if (provider == "sl") {
-          form.action = "http://search-lucene.com/tika";
-        }
-        days = 90;
-        date = new Date();
-        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
-        expires = "; expires=" + date.toGMTString();
-        document.cookie = "searchProvider=" + provider + expires + "; path=/";
-      }
-      function initProvider() {
-        if (document.cookie.length>0) {
-          cStart=document.cookie.indexOf("searchProvider=");
-          if (cStart!=-1) {
-            cStart=cStart + "searchProvider=".length;
-            cEnd=document.cookie.indexOf(";", cStart);
-            if (cEnd==-1) {
-              cEnd=document.cookie.length;
-            }
-            provider = unescape(document.cookie.substring(cStart,cEnd));
-            document.forms['searchform'].elements['searchProvider'].value = provider;
-          }
-        }
-        document.forms['searchform'].elements['q'].focus();
-      }
-    </script>
-  </head>
-  <body onLoad="initProvider();">
-    <div id="body">
-      <div id="banner">
-        <a href="http://tika.apache.org" id="bannerLeft" title="Apache Tika"
-          ><img src="http://tika.apache.org/tika.png" alt="Apache Tika"
-                width="292" height="100"/></a>
-        <a href="http://www.apache.org/" id="bannerRight"
-           title="The Apache Software Foundation"
-          ><img src="http://tika.apache.org/asf-logo.gif" alt="The Apache Software Foundation"
-                width="387" height="100"/></a>
-      </div>
-      <div id="content">
-        <!-- 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. --><div class="section"><h2>Content Detection<a name="Content_Detection"></a></h2><p>This page gives you information on h
 ow content and language detection works with Apache Tika, and how to tune the behaviour of Tika.</p><ul><li><a href="#Content_Detection">Content Detection</a><ul><li><a href="#The_Detector_Interface">The Detector Interface</a></li><li><a href="#Mime_Magic_Detction">Mime Magic Detction</a></li><li><a href="#Resource_Name_Based_Detection">Resource Name Based Detection</a></li><li><a href="#Known_Content_Type_Detection">Known Content Type &quot;Detection</a></li><li><a href="#The_default_Mime_Types_Detector">The default Mime Types Detector</a></li><li><a href="#Container_Aware_Detection">Container Aware Detection</a></li><li><a href="#Language_Detection">Language Detection</a></li></ul></li></ul><div class="section"><h3><a name="The_Detector_Interface">The Detector Interface</a></h3><p>The <a href="./api/org/apache/tika/detect/Detector.html">org.apache.tika.detect.Detector</a> interface is the basis for most of the content type detection in Apache Tika. All the different ways o
 f detecting content all implement the same common method:</p><div><pre>MediaType detect(java.io.InputStream input,
-                 Metadata metadata) throws java.io.IOException
-</pre></div><p>The <tt>detect</tt> method takes the stream to inspect, and a <tt>Metadata</tt> object that holds any additional information on the content. The detector will return a <a href="./api/org/apache/tika/mime/MediaType.html">MediaType</a> object describing its best guess as to the type of the file.</p><p>In general, only two keys on the Metadata object are used by Detectors. These are <tt>Metadata.RESOURCE_NAME_KEY</tt> which should hold the name of the file (where known), and <tt>Metadata.CONTENT_TYPE</tt> which should hold the advertised content type of the file (eg from a webserver or a content repository).</p></div><div class="section"><h3><a name="Mime_Magic_Detction">Mime Magic Detction</a></h3><p>By looking for special (&quot;magic&quot;) patterns of bytes near the start of the file, it is often possible to detect the type of the file. For some file types, this is a simple process. For others, typically container based formats, the magic detection may not be
  enough. (More detail on detecting container formats below)</p><p>Tika is able to make use of a a mime magic info file, in the <a class="externalLink" href="http://www.freedesktop.org/standards/shared-mime-info">Freedesktop MIME-info</a> format to peform mime magic detection.</p><p>This is provided within Tika by <a href="./api/org/apache/tika/detect/MagicDetector.html">org.apache.tika.detect.MagicDetector</a>. It is most commonly access via <a href="./api/org/apache/tika/mime/MimeTypes.html">org.apache.tika.mime.MimeTypes</a>, normally sourced from the <tt>tika-mimetypes.xml</tt> file.</p></div><div class="section"><h3><a name="Resource_Name_Based_Detection">Resource Name Based Detection</a></h3><p>Where the name of the file is known, it is sometimes possible to guess the file type from the name or extension. Within the <tt>tika-mimetypes.xml</tt> file is a list of patterns which are used to identify the type from the filename.</p><p>However, because files may be renamed, t
 his method of detection is quick but not always as accurate.</p><p>This is provided within Tika by <a href="./api/org/apache/tika/detect/NameDetector.html">org.apache.tika.detect.NameDetector</a>.</p></div><div class="section"><h3><a name="Known_Content_Type_Detection">Known Content Type &quot;Detection</a></h3><p>Sometimes, the mime type for a file is already known, such as when downloading from a webserver, or when retrieving from a content store. This information can be used by detectors, such as <a href="./api/org/apache/tika/mime/MimeTypes.html">org.apache.tika.mime.MimeTypes</a>,</p></div><div class="section"><h3><a name="The_default_Mime_Types_Detector">The default Mime Types Detector</a></h3><p>By default, the mime type detection in Tika is provided by <a href="./api/org/apache/tika/mime/MimeTypes.html">org.apache.tika.mime.MimeTypes</a>. This detector makes use of <tt>tika-mimetypes.xml</tt> to power magic based and filename based detection.</p><p>Firstly, magic bas
 ed detection is used on the start of the file. If the file is an XML file, then the start of the XML is processed to look for root elements. Next, if available, the filename (from <tt>Metadata.RESOURCE_NAME_KEY</tt>) is then used to improve the detail of the detection, such as when magic detects a text file, and the filename hints it's really a CSV. Finally, if available, the supplied content type (from <tt>Metadata.CONTENT_TYPE</tt>) is used to further refine the type.</p></div><div class="section"><h3><a name="Container_Aware_Detection">Container Aware Detection</a></h3><p>Several common file formats are actually held within a common container format. One example is the PowerPoint .ppt and Word .doc formats, which are both held within an OLE2 container. Another is Apple iWork formats, which are actually a series of XML files within a Zip file.</p><p>Using magic detection, it is easy to spot that a given file is an OLE2 document, or a Zip file. Using magic detection alone, 
 it is very difficult (and often impossible) to tell what kind of file lives inside the container.</p><p>For some use cases, speed is important, so having a quick way to know the container type is sufficient. For other cases however, you don't mind spending a bit of time (and memory!) processing the container to get a more accurate answer on its contents. For these cases, container aware detectors should be used.</p><p>Tika provides a number of container aware detectors, which cover the main container formats (OLE2, Zip etc). It is possible to call these detectors individually, but it is more common to use <a href="./api/org/apache/tika/detect/DefaultDetector.html">org.apache.tika.detect.DefaultDetector</a> to handle this for you. DefaultDetector works like DefaultParser, and locates available Detectors using the Services Loader, and then tries each in turn to identify the file. If the file isn't a known container, and no specific Detector identifies it, the default <tt>MimeT
 ypes</tt> detector will be used to perform Magic Based Detection.</p><p>Because the container aware detectors needs to read the whole file in order to process the surrounding container, they must be used with a <a href="./api/org/apache/tika/io/TikaInputStream.html">org.apache.tika.io.TikaInputStream</a>. If called with a regular <tt>InputStream</tt>, then all work will be done by the <tt>MimeTypes</tt> detector.</p><p>For more information on container formats and Tika, see <a class="externalLink" href="http://wiki.apache.org/tika/MetadataDiscussion"></a></p></div><div class="section"><h3><a name="Language_Detection">Language Detection</a></h3><p>Tika is able to help identify the language of a piece of text, which is useful when extracting text from document formats which do not include language information in their metadata.</p><p>The language detection is provided by <a href="./api/org/apache/tika/language/LanguageIdentifier.html">org.apache.tika.language.LanguageIdentifie
 r</a></p></div></div>
-      </div>
-      <div id="sidebar">
-        <div id="navigation">
-                    <h5>Apache Tika</h5>
-            <ul>
-              
-    <li class="none">
-                    <a href="../index.html">Introduction</a>
-          </li>
-              
-    <li class="none">
-                    <a href="../download.html">Download</a>
-          </li>
-              
-    <li class="none">
-                    <a href="../mail-lists.html">Mailing Lists</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://wiki.apache.org/tika/" class="externalLink">Tika Wiki</a>
-          </li>
-              
-    <li class="none">
-                    <a href="https://issues.apache.org/jira/browse/TIKA" class="externalLink">Issue Tracker</a>
-          </li>
-          </ul>
-              <h5>Documentation</h5>
-            <ul>
-              
-          
-                    
-                  
-                  
-                  
-                  
-                  
-              
-        <li class="expanded">
-                    <a href="../1.2/index.html">Apache Tika 1.2</a>
-                  <ul>
-                  
-    <li class="none">
-                    <a href="../1.2/gettingstarted.html">Getting Started</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/formats.html">Supported Formats</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/parser.html">Parser API</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/parser_guide.html">Parser 5min Quick Start Guide</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/detection.html">Content and Language Detection</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/api/">API Documentation</a>
-          </li>
-              </ul>
-        </li>
-              
-                
-                    
-                  
-                  
-                  
-                        
-                  
-              
-            <li class="expanded">
-                    <a href="../1.1/index.html">Apache Tika 1.1</a>
-                  <ul>
-                  
-    <li class="none">
-                    <a href="../1.1/gettingstarted.html">Getting Started</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.1/formats.html">Supported Formats</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.1/parser.html">Parser API</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.1/parser_guide.html">Parser 5min Quick Start Guide</a>
-          </li>
-                  
-    <li class="none">
-              <strong>Content and Language Detection</strong>
-        </li>
-                  
-    <li class="none">
-                    <a href="../1.1/api/">API Documentation</a>
-          </li>
-              </ul>
-        </li>
-              
-                
-                    
-                  
-                  
-                  
-                  
-                  
-              
-        <li class="collapsed">
-                    <a href="../1.0/index.html">Apache Tika 1.0</a>
-                </li>
-              
-                
-                    
-                  
-                  
-                  
-                  
-                  
-              
-        <li class="collapsed">
-                    <a href="../0.10/index.html">Apache Tika 0.10</a>
-                </li>
-          </ul>
-              <h5>The Apache Software Foundation</h5>
-            <ul>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/foundation/" class="externalLink">About</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/licenses/" class="externalLink">License</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/security/" class="externalLink">Security</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink">Sponsorship</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/foundation/thanks.html" class="externalLink">Thanks</a>
-          </li>
-          </ul>
-      
-          <div id="search">
-            <h5>Search with Apache Solr</h5>
-            <form action="http://search.lucidimagination.com/p:tika"
-                  method="get" id="searchform">
-              <input type="text" id="query" name="q"/>
-              <select name="searchProvider" id="searchProvider">
-                <option value="any">provider</option>
-                <option value="lucid">Lucid Find</option>
-                <option value="sl">Search-Lucene</option>
-              </select>
-              <input type="submit" id="submit" value="Search" name="Search"
-                     onclick="selectProvider(this.form)"/>
-            </form>
-          </div>
-
-          <div id="bookpromo">
-            <h5>Books about Tika</h5>
-            <p>
-              <a href="http://manning.com/mattmann/" title="Tika in Action"
-                ><img src="../mattmann_cover150.jpg"
-                      width="150" height="186"/></a>
-            </p>
-          </div>
-        </div>
-      </div>
-      <div id="footer">
-        <p>
-          Copyright &#169; 2012
-          <a href="http://www.apache.org/">The Apache Software Foundation</a>.
-          Site powered by <a href="http://maven.apache.org/">Apache Maven</a>. 
-          Search powered by
-          <a href="http://www.lucidimagination.com">Lucid Imagination</a>
-          and <a href="http://sematext.com">Sematext</a>.
-          <br/>
-          Apache Tika, Tika, Apache, the Apache feather logo, and the Apache
-          Tika project logo are trademarks of The Apache Software Foundation.
-        </p>
-      </div>
-    </div>
-  </body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!--
+  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.
+-->
+
+
+
+
+
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+    <title>Content Detection</title>
+    <style type="text/css" media="all">
+      @import url("../css/site.css");
+    </style>
+    <link rel="icon" type="image/png" href="../tikaNoText16.png" />
+    <script type="text/javascript">
+      function selectProvider(form) {
+        provider = form.elements['searchProvider'].value;
+        if (provider == "any") {
+          if (Math.random() > 0.5) {
+            provider = "lucid";
+          } else {
+            provider = "sl";
+          }
+        }
+        if (provider == "lucid") {
+          form.action = "http://search.lucidimagination.com/p:tika";
+        } else if (provider == "sl") {
+          form.action = "http://search-lucene.com/tika";
+        }
+        days = 90;
+        date = new Date();
+        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
+        expires = "; expires=" + date.toGMTString();
+        document.cookie = "searchProvider=" + provider + expires + "; path=/";
+      }
+      function initProvider() {
+        if (document.cookie.length>0) {
+          cStart=document.cookie.indexOf("searchProvider=");
+          if (cStart!=-1) {
+            cStart=cStart + "searchProvider=".length;
+            cEnd=document.cookie.indexOf(";", cStart);
+            if (cEnd==-1) {
+              cEnd=document.cookie.length;
+            }
+            provider = unescape(document.cookie.substring(cStart,cEnd));
+            document.forms['searchform'].elements['searchProvider'].value = provider;
+          }
+        }
+        document.forms['searchform'].elements['q'].focus();
+      }
+    </script>
+  </head>
+  <body onLoad="initProvider();">
+    <div id="body">
+      <div id="banner">
+        <a href="http://tika.apache.org" id="bannerLeft" title="Apache Tika"
+          ><img src="http://tika.apache.org/tika.png" alt="Apache Tika"
+                width="292" height="100"/></a>
+        <a href="http://www.apache.org/" id="bannerRight"
+           title="The Apache Software Foundation"
+          ><img src="http://tika.apache.org/asf-logo.gif" alt="The Apache Software Foundation"
+                width="387" height="100"/></a>
+      </div>
+      <div id="content">
+        <!-- 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. --><div class="section"><h2>Content Detection<a name="Content_Detection"></a></h2><p>This page gives you information on h
 ow content and language detection works with Apache Tika, and how to tune the behaviour of Tika.</p><ul><li><a href="#Content_Detection">Content Detection</a><ul><li><a href="#The_Detector_Interface">The Detector Interface</a></li><li><a href="#Mime_Magic_Detction">Mime Magic Detction</a></li><li><a href="#Resource_Name_Based_Detection">Resource Name Based Detection</a></li><li><a href="#Known_Content_Type_Detection">Known Content Type &quot;Detection</a></li><li><a href="#The_default_Mime_Types_Detector">The default Mime Types Detector</a></li><li><a href="#Container_Aware_Detection">Container Aware Detection</a></li><li><a href="#Language_Detection">Language Detection</a></li></ul></li></ul><div class="section"><h3><a name="The_Detector_Interface">The Detector Interface</a></h3><p>The <a href="./api/org/apache/tika/detect/Detector.html">org.apache.tika.detect.Detector</a> interface is the basis for most of the content type detection in Apache Tika. All the different ways o
 f detecting content all implement the same common method:</p><div><pre>MediaType detect(java.io.InputStream input,
+                 Metadata metadata) throws java.io.IOException</pre></div><p>The <tt>detect</tt> method takes the stream to inspect, and a <tt>Metadata</tt> object that holds any additional information on the content. The detector will return a <a href="./api/org/apache/tika/mime/MediaType.html">MediaType</a> object describing its best guess as to the type of the file.</p><p>In general, only two keys on the Metadata object are used by Detectors. These are <tt>Metadata.RESOURCE_NAME_KEY</tt> which should hold the name of the file (where known), and <tt>Metadata.CONTENT_TYPE</tt> which should hold the advertised content type of the file (eg from a webserver or a content repository).</p></div><div class="section"><h3><a name="Mime_Magic_Detction">Mime Magic Detction</a></h3><p>By looking for special (&quot;magic&quot;) patterns of bytes near the start of the file, it is often possible to detect the type of the file. For some file types, this is a simple process. For others, typ
 ically container based formats, the magic detection may not be enough. (More detail on detecting container formats below)</p><p>Tika is able to make use of a a mime magic info file, in the <a class="externalLink" href="http://www.freedesktop.org/standards/shared-mime-info">Freedesktop MIME-info</a> format to peform mime magic detection.</p><p>This is provided within Tika by <a href="./api/org/apache/tika/detect/MagicDetector.html">org.apache.tika.detect.MagicDetector</a>. It is most commonly access via <a href="./api/org/apache/tika/mime/MimeTypes.html">org.apache.tika.mime.MimeTypes</a>, normally sourced from the <tt>tika-mimetypes.xml</tt> file.</p></div><div class="section"><h3><a name="Resource_Name_Based_Detection">Resource Name Based Detection</a></h3><p>Where the name of the file is known, it is sometimes possible to guess the file type from the name or extension. Within the <tt>tika-mimetypes.xml</tt> file is a list of patterns which are used to identify the type fro
 m the filename.</p><p>However, because files may be renamed, this method of detection is quick but not always as accurate.</p><p>This is provided within Tika by <a href="./api/org/apache/tika/detect/NameDetector.html">org.apache.tika.detect.NameDetector</a>.</p></div><div class="section"><h3><a name="Known_Content_Type_Detection">Known Content Type &quot;Detection</a></h3><p>Sometimes, the mime type for a file is already known, such as when downloading from a webserver, or when retrieving from a content store. This information can be used by detectors, such as <a href="./api/org/apache/tika/mime/MimeTypes.html">org.apache.tika.mime.MimeTypes</a>,</p></div><div class="section"><h3><a name="The_default_Mime_Types_Detector">The default Mime Types Detector</a></h3><p>By default, the mime type detection in Tika is provided by <a href="./api/org/apache/tika/mime/MimeTypes.html">org.apache.tika.mime.MimeTypes</a>. This detector makes use of <tt>tika-mimetypes.xml</tt> to power magi
 c based and filename based detection.</p><p>Firstly, magic based detection is used on the start of the file. If the file is an XML file, then the start of the XML is processed to look for root elements. Next, if available, the filename (from <tt>Metadata.RESOURCE_NAME_KEY</tt>) is then used to improve the detail of the detection, such as when magic detects a text file, and the filename hints it's really a CSV. Finally, if available, the supplied content type (from <tt>Metadata.CONTENT_TYPE</tt>) is used to further refine the type.</p></div><div class="section"><h3><a name="Container_Aware_Detection">Container Aware Detection</a></h3><p>Several common file formats are actually held within a common container format. One example is the PowerPoint .ppt and Word .doc formats, which are both held within an OLE2 container. Another is Apple iWork formats, which are actually a series of XML files within a Zip file.</p><p>Using magic detection, it is easy to spot that a given file is 
 an OLE2 document, or a Zip file. Using magic detection alone, it is very difficult (and often impossible) to tell what kind of file lives inside the container.</p><p>For some use cases, speed is important, so having a quick way to know the container type is sufficient. For other cases however, you don't mind spending a bit of time (and memory!) processing the container to get a more accurate answer on its contents. For these cases, container aware detectors should be used.</p><p>Tika provides a number of container aware detectors, which cover the main container formats (OLE2, Zip etc). It is possible to call these detectors individually, but it is more common to use <a href="./api/org/apache/tika/detect/DefaultDetector.html">org.apache.tika.detect.DefaultDetector</a> to handle this for you. DefaultDetector works like DefaultParser, and locates available Detectors using the Services Loader, and then tries each in turn to identify the file. If the file isn't a known container,
  and no specific Detector identifies it, the default <tt>MimeTypes</tt> detector will be used to perform Magic Based Detection.</p><p>Because the container aware detectors needs to read the whole file in order to process the surrounding container, they must be used with a <a href="./api/org/apache/tika/io/TikaInputStream.html">org.apache.tika.io.TikaInputStream</a>. If called with a regular <tt>InputStream</tt>, then all work will be done by the <tt>MimeTypes</tt> detector.</p><p>For more information on container formats and Tika, see <a class="externalLink" href="http://wiki.apache.org/tika/MetadataDiscussion"></a></p></div><div class="section"><h3><a name="Language_Detection">Language Detection</a></h3><p>Tika is able to help identify the language of a piece of text, which is useful when extracting text from document formats which do not include language information in their metadata.</p><p>The language detection is provided by <a href="./api/org/apache/tika/language/Langu
 ageIdentifier.html">org.apache.tika.language.LanguageIdentifier</a></p></div></div>
+      </div>
+      <div id="sidebar">
+        <div id="navigation">
+                    <h5>Apache Tika</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../index.html">Introduction</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../download.html">Download</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../mail-lists.html">Mailing Lists</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://wiki.apache.org/tika/" class="externalLink">Tika Wiki</a>
+          </li>
+              
+    <li class="none">
+                    <a href="https://issues.apache.org/jira/browse/TIKA" class="externalLink">Issue Tracker</a>
+          </li>
+          </ul>
+              <h5>Documentation</h5>
+            <ul>
+              
+          
+                    
+                  
+                  
+                  
+                  
+                  
+              
+        <li class="expanded">
+                    <a href="../1.2/index.html">Apache Tika 1.2</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1.2/gettingstarted.html">Getting Started</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/formats.html">Supported Formats</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/parser.html">Parser API</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/parser_guide.html">Parser 5min Quick Start Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/detection.html">Content and Language Detection</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/api/">API Documentation</a>
+          </li>
+              </ul>
+        </li>
+              
+                
+                    
+                  
+                  
+                  
+                        
+                  
+              
+            <li class="expanded">
+                    <a href="../1.1/index.html">Apache Tika 1.1</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1.1/gettingstarted.html">Getting Started</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.1/formats.html">Supported Formats</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.1/parser.html">Parser API</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.1/parser_guide.html">Parser 5min Quick Start Guide</a>
+          </li>
+                  
+    <li class="none">
+              <strong>Content and Language Detection</strong>
+        </li>
+                  
+    <li class="none">
+                    <a href="../1.1/api/">API Documentation</a>
+          </li>
+              </ul>
+        </li>
+              
+                
+                    
+                  
+                  
+                  
+                  
+                  
+              
+        <li class="collapsed">
+                    <a href="../1.0/index.html">Apache Tika 1.0</a>
+                </li>
+              
+                
+                    
+                  
+                  
+                  
+                  
+                  
+              
+        <li class="collapsed">
+                    <a href="../0.10/index.html">Apache Tika 0.10</a>
+                </li>
+          </ul>
+              <h5>The Apache Software Foundation</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/foundation/" class="externalLink">About</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/licenses/" class="externalLink">License</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/security/" class="externalLink">Security</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink">Sponsorship</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/foundation/thanks.html" class="externalLink">Thanks</a>
+          </li>
+          </ul>
+      
+          <div id="search">
+            <h5>Search with Apache Solr</h5>
+            <form action="http://search.lucidimagination.com/p:tika"
+                  method="get" id="searchform">
+              <input type="text" id="query" name="q"/>
+              <select name="searchProvider" id="searchProvider">
+                <option value="any">provider</option>
+                <option value="lucid">Lucid Find</option>
+                <option value="sl">Search-Lucene</option>
+              </select>
+              <input type="submit" id="submit" value="Search" name="Search"
+                     onclick="selectProvider(this.form)"/>
+            </form>
+          </div>
+
+          <div id="bookpromo">
+            <h5>Books about Tika</h5>
+            <p>
+              <a href="http://manning.com/mattmann/" title="Tika in Action"
+                ><img src="../mattmann_cover150.jpg"
+                      width="150" height="186"/></a>
+            </p>
+          </div>
+        </div>
+      </div>
+      <div id="footer">
+        <p>
+          Copyright &#169; 2012
+          <a href="http://www.apache.org/">The Apache Software Foundation</a>.
+          Site powered by <a href="http://maven.apache.org/">Apache Maven</a>. 
+          Search powered by
+          <a href="http://www.lucidimagination.com">Lucid Imagination</a>
+          and <a href="http://sematext.com">Sematext</a>.
+          <br/>
+          Apache Tika, Tika, Apache, the Apache feather logo, and the Apache
+          Tika project logo are trademarks of The Apache Software Foundation.
+        </p>
+      </div>
+    </div>
+  </body>
+</html>

Modified: tika/site/publish/1.1/formats.html
URL: http://svn.apache.org/viewvc/tika/site/publish/1.1/formats.html?rev=1381198&r1=1381197&r2=1381198&view=diff
==============================================================================
--- tika/site/publish/1.1/formats.html (original)
+++ tika/site/publish/1.1/formats.html Wed Sep  5 14:31:06 2012
@@ -1,281 +1,281 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<!--
-  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.
--->
-
-
-
-
-
-
-
-<html xmlns="http://www.w3.org/1999/xhtml">
-  <head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>Supported Document Formats</title>
-    <style type="text/css" media="all">
-      @import url("../css/site.css");
-    </style>
-    <link rel="icon" type="image/png" href="../tikaNoText16.png" />
-    <script type="text/javascript">
-      function selectProvider(form) {
-        provider = form.elements['searchProvider'].value;
-        if (provider == "any") {
-          if (Math.random() > 0.5) {
-            provider = "lucid";
-          } else {
-            provider = "sl";
-          }
-        }
-        if (provider == "lucid") {
-          form.action = "http://search.lucidimagination.com/p:tika";
-        } else if (provider == "sl") {
-          form.action = "http://search-lucene.com/tika";
-        }
-        days = 90;
-        date = new Date();
-        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
-        expires = "; expires=" + date.toGMTString();
-        document.cookie = "searchProvider=" + provider + expires + "; path=/";
-      }
-      function initProvider() {
-        if (document.cookie.length>0) {
-          cStart=document.cookie.indexOf("searchProvider=");
-          if (cStart!=-1) {
-            cStart=cStart + "searchProvider=".length;
-            cEnd=document.cookie.indexOf(";", cStart);
-            if (cEnd==-1) {
-              cEnd=document.cookie.length;
-            }
-            provider = unescape(document.cookie.substring(cStart,cEnd));
-            document.forms['searchform'].elements['searchProvider'].value = provider;
-          }
-        }
-        document.forms['searchform'].elements['q'].focus();
-      }
-    </script>
-  </head>
-  <body onLoad="initProvider();">
-    <div id="body">
-      <div id="banner">
-        <a href="http://tika.apache.org" id="bannerLeft" title="Apache Tika"
-          ><img src="http://tika.apache.org/tika.png" alt="Apache Tika"
-                width="292" height="100"/></a>
-        <a href="http://www.apache.org/" id="bannerRight"
-           title="The Apache Software Foundation"
-          ><img src="http://tika.apache.org/asf-logo.gif" alt="The Apache Software Foundation"
-                width="387" height="100"/></a>
-      </div>
-      <div id="content">
-        <!-- 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. --><div class="section"><h2>Supported Document Formats<a name="Supported_Document_Formats"></a></h2><p>This page lists al
 l the document formats supported by Apache Tika 0.6. Follow the links to the various parser class javadocs for more detailed information about each document format and how it is parsed by Tika.</p><ul><li><a href="#Supported_Document_Formats">Supported Document Formats</a><ul><li><a href="#HyperText_Markup_Language">HyperText Markup Language</a></li><li><a href="#XML_and_derived_formats">XML and derived formats</a></li><li><a href="#Microsoft_Office_document_formats">Microsoft Office document formats</a></li><li><a href="#OpenDocument_Format">OpenDocument Format</a></li><li><a href="#Portable_Document_Format">Portable Document Format</a></li><li><a href="#Electronic_Publication_Format">Electronic Publication Format</a></li><li><a href="#Rich_Text_Format">Rich Text Format</a></li><li><a href="#Compression_and_packaging_formats">Compression and packaging formats</a></li><li><a href="#Text_formats">Text formats</a></li><li><a href="#Audio_formats">Audio formats</a></li><li><a h
 ref="#Image_formats">Image formats</a></li><li><a href="#Video_formats">Video formats</a></li><li><a href="#Java_class_files_and_archives">Java class files and archives</a></li><li><a href="#The_mbox_format">The mbox format</a></li></ul></li></ul><div class="section"><h3><a name="HyperText_Markup_Language">HyperText Markup Language</a></h3><p>The HyperText Markup Language (HTML) is the lingua franca of the web. Tika uses the <a class="externalLink" href="http://home.ccil.org/~cowan/XML/tagsoup/">TagSoup</a> library to support virtually any kind of HTML found on the web. The output from the <a href="#apiorgapachetikaparserhtmlHtmlParser.html">HtmlParser</a> class is guaranteed to be well-formed and valid XHTML, and various heuristics are used to prevent things like inline scripts from cluttering the extracted text content.</p></div><div class="section"><h3><a name="XML_and_derived_formats">XML and derived formats</a></h3><p>The Extensible Markup Language (XML) format is a gen
 eric format that can be used for all kinds of content. Tika has custom parsers for some widely used XML vocabularies like XHTML, OOXML and ODF, but the default <a href="#apiorgapachetikaparserxmlDcXMLParser.html">DcXMLParser</a> class simply extracts the text content of the document and ignores any XML structure. The only exception to this rule are Dublin Core metadata elements that are used for the document metadata.</p></div><div class="section"><h3><a name="Microsoft_Office_document_formats">Microsoft Office document formats</a></h3><p>Microsoft Office and some related applications produce documents in the generic OLE 2 Compound Document and Office Open XML (OOXML) formats. The older OLE 2 format was introduced in Microsoft Office version 97 and was the default format until Office version 2007 and the new XML-based OOXML format. The <a href="#apiorgapachetikaparsermicrosoftOfficeParser.html">OfficeParser</a> and <a href="#apiorgapachetikaparsermicrosoftooxmlOOXMLParser.ht
 ml">OOXMLParser</a> classes use <a class="externalLink" href="http://poi.apache.org/">Apache POI</a> libraries to support text and metadata extraction from both OLE2 and OOXML documents.</p></div><div class="section"><h3><a name="OpenDocument_Format">OpenDocument Format</a></h3><p>The OpenDocument format (ODF) is used most notably as the default format of the OpenOffice.org office suite. The <a href="#apiorgapachetikaparserodfOpenDocumentParser.html">OpenDocumentParser</a> class supports this format and the earlier OpenOffice 1.0 format on which ODF is based.</p></div><div class="section"><h3><a name="Portable_Document_Format">Portable Document Format</a></h3><p>The <a href="#apiorgapachetikaparserpdfPDFParser.html">PDFParser</a> class parsers Portable Document Format (PDF) documents using the <a class="externalLink" href="http://pdfbox.apache.org/">Apache PDFBox</a> library.</p></div><div class="section"><h3><a name="Electronic_Publication_Format">Electronic Publication For
 mat</a></h3><p>The <a href="#apiorgapachetikaparserepubEpubParser.html">EpubParser</a> class supports the Electronic Publication Format (EPUB) used for many digital books.</p></div><div class="section"><h3><a name="Rich_Text_Format">Rich Text Format</a></h3><p>The <a href="#apiorgapachetikaparserrtfRTFParser.html">RTFParser</a> class uses the standard javax.swing.text.rtf feature to extract text content from Rich Text Format (RTF) documents.</p></div><div class="section"><h3><a name="Compression_and_packaging_formats">Compression and packaging formats</a></h3><p>Tika uses the <a class="externalLink" href="http://commons.apache.org/compress/">Commons Compress</a> library to support various compression and packaging formats. The <a href="#apiorgapachetikaparserpkgPackageParser.html">PackageParser</a> class and its subclasses first parse the top level compression or packaging format and then pass the unpacked document streams to a second parsing stage using the parser instance 
 specified in the parse context.</p></div><div class="section"><h3><a name="Text_formats">Text formats</a></h3><p>Extracting text content from plain text files seems like a simple task until you start thinking of all the possible character encodings. The <a href="#apiorgapachetikaparsertxtTXTParser.html">TXTParser</a> class uses encoding detection code from the <a class="externalLink" href="http://site.icu-project.org/">ICU</a> project to automatically detect the character encoding of a text document.</p></div><div class="section"><h3><a name="Audio_formats">Audio formats</a></h3><p>Tika can detect several common audio formats and extract metadata from them. Even text extraction is supported for some audio files that contain lyrics or other textual content. The <a href="#apiorgapachetikaparseraudioAudioParser.html">AudioParser</a> and <a href="#apiorgapachetikaparseraudioMidiParser.html">MidiParser</a> classes use standard javax.sound features to process simple audio formats,
  and the <a href="#apiorgapachetikaparsermp3Mp3Parser.html">Mp3Parser</a> class adds support for the widely used MP3 format.</p></div><div class="section"><h3><a name="Image_formats">Image formats</a></h3><p>The <a href="#apiorgapachetikaparserimageImageParser.html">ImageParser</a> class uses the standard javax.imageio feature to extract simple metadata from image formats supported by the Java platform. More complex image metadata is available through the <a href="#apiorgapachetikaparserjpegJpegParser.html">JpegParser</a> class that uses the metadata-extractor library to supports Exif metadata extraction from Jpeg images.</p></div><div class="section"><h3><a name="Video_formats">Video formats</a></h3><p>Currently Tika only supports the Flash video format using a simple parsing algorithm implemented in the <a href="#apiorgapachetikaparserflvFLVParser">FLVParser</a> class.</p></div><div class="section"><h3><a name="Java_class_files_and_archives">Java class files and archives</
 a></h3><p>The <a href="#apiorgapachetikaparserasmClassParser">ClassParser</a> class extracts class names and method signatures from Java class files, and the <a href="#apiorgapachetikaparserpkgZipParser.html">ZipParser</a> class supports also jar archives.</p></div><div class="section"><h3><a name="The_mbox_format">The mbox format</a></h3><p>The <a href="#apiorgapachetikaparsermboxMboxParser.html">MboxParser</a> can extract email messages from the mbox format used by many email archives and Unix-style mailboxes.</p></div></div>
-      </div>
-      <div id="sidebar">
-        <div id="navigation">
-                    <h5>Apache Tika</h5>
-            <ul>
-              
-    <li class="none">
-                    <a href="../index.html">Introduction</a>
-          </li>
-              
-    <li class="none">
-                    <a href="../download.html">Download</a>
-          </li>
-              
-    <li class="none">
-                    <a href="../mail-lists.html">Mailing Lists</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://wiki.apache.org/tika/" class="externalLink">Tika Wiki</a>
-          </li>
-              
-    <li class="none">
-                    <a href="https://issues.apache.org/jira/browse/TIKA" class="externalLink">Issue Tracker</a>
-          </li>
-          </ul>
-              <h5>Documentation</h5>
-            <ul>
-              
-          
-                    
-                  
-                  
-                  
-                  
-                  
-              
-        <li class="expanded">
-                    <a href="../1.2/index.html">Apache Tika 1.2</a>
-                  <ul>
-                  
-    <li class="none">
-                    <a href="../1.2/gettingstarted.html">Getting Started</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/formats.html">Supported Formats</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/parser.html">Parser API</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/parser_guide.html">Parser 5min Quick Start Guide</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/detection.html">Content and Language Detection</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.2/api/">API Documentation</a>
-          </li>
-              </ul>
-        </li>
-              
-                
-                    
-                        
-                  
-                  
-                  
-                  
-              
-            <li class="expanded">
-                    <a href="../1.1/index.html">Apache Tika 1.1</a>
-                  <ul>
-                  
-    <li class="none">
-                    <a href="../1.1/gettingstarted.html">Getting Started</a>
-          </li>
-                  
-    <li class="none">
-              <strong>Supported Formats</strong>
-        </li>
-                  
-    <li class="none">
-                    <a href="../1.1/parser.html">Parser API</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.1/parser_guide.html">Parser 5min Quick Start Guide</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.1/detection.html">Content and Language Detection</a>
-          </li>
-                  
-    <li class="none">
-                    <a href="../1.1/api/">API Documentation</a>
-          </li>
-              </ul>
-        </li>
-              
-                
-                    
-                  
-                  
-                  
-                  
-                  
-              
-        <li class="collapsed">
-                    <a href="../1.0/index.html">Apache Tika 1.0</a>
-                </li>
-              
-                
-                    
-                  
-                  
-                  
-                  
-                  
-              
-        <li class="collapsed">
-                    <a href="../0.10/index.html">Apache Tika 0.10</a>
-                </li>
-          </ul>
-              <h5>The Apache Software Foundation</h5>
-            <ul>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/foundation/" class="externalLink">About</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/licenses/" class="externalLink">License</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/security/" class="externalLink">Security</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink">Sponsorship</a>
-          </li>
-              
-    <li class="none">
-                    <a href="http://www.apache.org/foundation/thanks.html" class="externalLink">Thanks</a>
-          </li>
-          </ul>
-      
-          <div id="search">
-            <h5>Search with Apache Solr</h5>
-            <form action="http://search.lucidimagination.com/p:tika"
-                  method="get" id="searchform">
-              <input type="text" id="query" name="q"/>
-              <select name="searchProvider" id="searchProvider">
-                <option value="any">provider</option>
-                <option value="lucid">Lucid Find</option>
-                <option value="sl">Search-Lucene</option>
-              </select>
-              <input type="submit" id="submit" value="Search" name="Search"
-                     onclick="selectProvider(this.form)"/>
-            </form>
-          </div>
-
-          <div id="bookpromo">
-            <h5>Books about Tika</h5>
-            <p>
-              <a href="http://manning.com/mattmann/" title="Tika in Action"
-                ><img src="../mattmann_cover150.jpg"
-                      width="150" height="186"/></a>
-            </p>
-          </div>
-        </div>
-      </div>
-      <div id="footer">
-        <p>
-          Copyright &#169; 2012
-          <a href="http://www.apache.org/">The Apache Software Foundation</a>.
-          Site powered by <a href="http://maven.apache.org/">Apache Maven</a>. 
-          Search powered by
-          <a href="http://www.lucidimagination.com">Lucid Imagination</a>
-          and <a href="http://sematext.com">Sematext</a>.
-          <br/>
-          Apache Tika, Tika, Apache, the Apache feather logo, and the Apache
-          Tika project logo are trademarks of The Apache Software Foundation.
-        </p>
-      </div>
-    </div>
-  </body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<!--
+  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.
+-->
+
+
+
+
+
+
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+  <head>
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+    <title>Supported Document Formats</title>
+    <style type="text/css" media="all">
+      @import url("../css/site.css");
+    </style>
+    <link rel="icon" type="image/png" href="../tikaNoText16.png" />
+    <script type="text/javascript">
+      function selectProvider(form) {
+        provider = form.elements['searchProvider'].value;
+        if (provider == "any") {
+          if (Math.random() > 0.5) {
+            provider = "lucid";
+          } else {
+            provider = "sl";
+          }
+        }
+        if (provider == "lucid") {
+          form.action = "http://search.lucidimagination.com/p:tika";
+        } else if (provider == "sl") {
+          form.action = "http://search-lucene.com/tika";
+        }
+        days = 90;
+        date = new Date();
+        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
+        expires = "; expires=" + date.toGMTString();
+        document.cookie = "searchProvider=" + provider + expires + "; path=/";
+      }
+      function initProvider() {
+        if (document.cookie.length>0) {
+          cStart=document.cookie.indexOf("searchProvider=");
+          if (cStart!=-1) {
+            cStart=cStart + "searchProvider=".length;
+            cEnd=document.cookie.indexOf(";", cStart);
+            if (cEnd==-1) {
+              cEnd=document.cookie.length;
+            }
+            provider = unescape(document.cookie.substring(cStart,cEnd));
+            document.forms['searchform'].elements['searchProvider'].value = provider;
+          }
+        }
+        document.forms['searchform'].elements['q'].focus();
+      }
+    </script>
+  </head>
+  <body onLoad="initProvider();">
+    <div id="body">
+      <div id="banner">
+        <a href="http://tika.apache.org" id="bannerLeft" title="Apache Tika"
+          ><img src="http://tika.apache.org/tika.png" alt="Apache Tika"
+                width="292" height="100"/></a>
+        <a href="http://www.apache.org/" id="bannerRight"
+           title="The Apache Software Foundation"
+          ><img src="http://tika.apache.org/asf-logo.gif" alt="The Apache Software Foundation"
+                width="387" height="100"/></a>
+      </div>
+      <div id="content">
+        <!-- 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. --><div class="section"><h2>Supported Document Formats<a name="Supported_Document_Formats"></a></h2><p>This page lists al
 l the document formats supported by Apache Tika 0.6. Follow the links to the various parser class javadocs for more detailed information about each document format and how it is parsed by Tika.</p><ul><li><a href="#Supported_Document_Formats">Supported Document Formats</a><ul><li><a href="#HyperText_Markup_Language">HyperText Markup Language</a></li><li><a href="#XML_and_derived_formats">XML and derived formats</a></li><li><a href="#Microsoft_Office_document_formats">Microsoft Office document formats</a></li><li><a href="#OpenDocument_Format">OpenDocument Format</a></li><li><a href="#Portable_Document_Format">Portable Document Format</a></li><li><a href="#Electronic_Publication_Format">Electronic Publication Format</a></li><li><a href="#Rich_Text_Format">Rich Text Format</a></li><li><a href="#Compression_and_packaging_formats">Compression and packaging formats</a></li><li><a href="#Text_formats">Text formats</a></li><li><a href="#Audio_formats">Audio formats</a></li><li><a h
 ref="#Image_formats">Image formats</a></li><li><a href="#Video_formats">Video formats</a></li><li><a href="#Java_class_files_and_archives">Java class files and archives</a></li><li><a href="#The_mbox_format">The mbox format</a></li></ul></li></ul><div class="section"><h3><a name="HyperText_Markup_Language">HyperText Markup Language</a></h3><p>The HyperText Markup Language (HTML) is the lingua franca of the web. Tika uses the <a class="externalLink" href="http://home.ccil.org/~cowan/XML/tagsoup/">TagSoup</a> library to support virtually any kind of HTML found on the web. The output from the <a href="./api/org/apache/tika/parser/html/HtmlParser.html">HtmlParser</a> class is guaranteed to be well-formed and valid XHTML, and various heuristics are used to prevent things like inline scripts from cluttering the extracted text content.</p></div><div class="section"><h3><a name="XML_and_derived_formats">XML and derived formats</a></h3><p>The Extensible Markup Language (XML) format i
 s a generic format that can be used for all kinds of content. Tika has custom parsers for some widely used XML vocabularies like XHTML, OOXML and ODF, but the default <a href="./api/org/apache/tika/parser/xml/DcXMLParser.html">DcXMLParser</a> class simply extracts the text content of the document and ignores any XML structure. The only exception to this rule are Dublin Core metadata elements that are used for the document metadata.</p></div><div class="section"><h3><a name="Microsoft_Office_document_formats">Microsoft Office document formats</a></h3><p>Microsoft Office and some related applications produce documents in the generic OLE 2 Compound Document and Office Open XML (OOXML) formats. The older OLE 2 format was introduced in Microsoft Office version 97 and was the default format until Office version 2007 and the new XML-based OOXML format. The <a href="./api/org/apache/tika/parser/microsoft/OfficeParser.html">OfficeParser</a> and <a href="./api/org/apache/tika/parser/m
 icrosoft/ooxml/OOXMLParser.html">OOXMLParser</a> classes use <a class="externalLink" href="http://poi.apache.org/">Apache POI</a> libraries to support text and metadata extraction from both OLE2 and OOXML documents.</p></div><div class="section"><h3><a name="OpenDocument_Format">OpenDocument Format</a></h3><p>The OpenDocument format (ODF) is used most notably as the default format of the OpenOffice.org office suite. The <a href="./api/org/apache/tika/parser/odf/OpenDocumentParser.html">OpenDocumentParser</a> class supports this format and the earlier OpenOffice 1.0 format on which ODF is based.</p></div><div class="section"><h3><a name="Portable_Document_Format">Portable Document Format</a></h3><p>The <a href="./api/org/apache/tika/parser/pdf/PDFParser.html">PDFParser</a> class parsers Portable Document Format (PDF) documents using the <a class="externalLink" href="http://pdfbox.apache.org/">Apache PDFBox</a> library.</p></div><div class="section"><h3><a name="Electronic_Pub
 lication_Format">Electronic Publication Format</a></h3><p>The <a href="./api/org/apache/tika/parser/epub/EpubParser.html">EpubParser</a> class supports the Electronic Publication Format (EPUB) used for many digital books.</p></div><div class="section"><h3><a name="Rich_Text_Format">Rich Text Format</a></h3><p>The <a href="./api/org/apache/tika/parser/rtf/RTFParser.html">RTFParser</a> class uses the standard javax.swing.text.rtf feature to extract text content from Rich Text Format (RTF) documents.</p></div><div class="section"><h3><a name="Compression_and_packaging_formats">Compression and packaging formats</a></h3><p>Tika uses the <a class="externalLink" href="http://commons.apache.org/compress/">Commons Compress</a> library to support various compression and packaging formats. The <a href="./api/org/apache/tika/parser/pkg/PackageParser.html">PackageParser</a> class and its subclasses first parse the top level compression or packaging format and then pass the unpacked docum
 ent streams to a second parsing stage using the parser instance specified in the parse context.</p></div><div class="section"><h3><a name="Text_formats">Text formats</a></h3><p>Extracting text content from plain text files seems like a simple task until you start thinking of all the possible character encodings. The <a href="./api/org/apache/tika/parser/txt/TXTParser.html">TXTParser</a> class uses encoding detection code from the <a class="externalLink" href="http://site.icu-project.org/">ICU</a> project to automatically detect the character encoding of a text document.</p></div><div class="section"><h3><a name="Audio_formats">Audio formats</a></h3><p>Tika can detect several common audio formats and extract metadata from them. Even text extraction is supported for some audio files that contain lyrics or other textual content. The <a href="./api/org/apache/tika/parser/audio/AudioParser.html">AudioParser</a> and <a href="./api/org/apache/tika/parser/audio/MidiParser.html">Midi
 Parser</a> classes use standard javax.sound features to process simple audio formats, and the <a href="./api/org/apache/tika/parser/mp3/Mp3Parser.html">Mp3Parser</a> class adds support for the widely used MP3 format.</p></div><div class="section"><h3><a name="Image_formats">Image formats</a></h3><p>The <a href="./api/org/apache/tika/parser/image/ImageParser.html">ImageParser</a> class uses the standard javax.imageio feature to extract simple metadata from image formats supported by the Java platform. More complex image metadata is available through the <a href="./api/org/apache/tika/parser/jpeg/JpegParser.html">JpegParser</a> class that uses the metadata-extractor library to supports Exif metadata extraction from Jpeg images.</p></div><div class="section"><h3><a name="Video_formats">Video formats</a></h3><p>Currently Tika only supports the Flash video format using a simple parsing algorithm implemented in the <a href="./api/org/apache/tika/parser/flv/FLVParser">FLVParser</a>
  class.</p></div><div class="section"><h3><a name="Java_class_files_and_archives">Java class files and archives</a></h3><p>The <a href="./api/org/apache/tika/parser/asm/ClassParser">ClassParser</a> class extracts class names and method signatures from Java class files, and the <a href="./api/org/apache/tika/parser/pkg/ZipParser.html">ZipParser</a> class supports also jar archives.</p></div><div class="section"><h3><a name="The_mbox_format">The mbox format</a></h3><p>The <a href="./api/org/apache/tika/parser/mbox/MboxParser.html">MboxParser</a> can extract email messages from the mbox format used by many email archives and Unix-style mailboxes.</p></div></div>
+      </div>
+      <div id="sidebar">
+        <div id="navigation">
+                    <h5>Apache Tika</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="../index.html">Introduction</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../download.html">Download</a>
+          </li>
+              
+    <li class="none">
+                    <a href="../mail-lists.html">Mailing Lists</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://wiki.apache.org/tika/" class="externalLink">Tika Wiki</a>
+          </li>
+              
+    <li class="none">
+                    <a href="https://issues.apache.org/jira/browse/TIKA" class="externalLink">Issue Tracker</a>
+          </li>
+          </ul>
+              <h5>Documentation</h5>
+            <ul>
+              
+          
+                    
+                  
+                  
+                  
+                  
+                  
+              
+        <li class="expanded">
+                    <a href="../1.2/index.html">Apache Tika 1.2</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1.2/gettingstarted.html">Getting Started</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/formats.html">Supported Formats</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/parser.html">Parser API</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/parser_guide.html">Parser 5min Quick Start Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/detection.html">Content and Language Detection</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.2/api/">API Documentation</a>
+          </li>
+              </ul>
+        </li>
+              
+                
+                    
+                        
+                  
+                  
+                  
+                  
+              
+            <li class="expanded">
+                    <a href="../1.1/index.html">Apache Tika 1.1</a>
+                  <ul>
+                  
+    <li class="none">
+                    <a href="../1.1/gettingstarted.html">Getting Started</a>
+          </li>
+                  
+    <li class="none">
+              <strong>Supported Formats</strong>
+        </li>
+                  
+    <li class="none">
+                    <a href="../1.1/parser.html">Parser API</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.1/parser_guide.html">Parser 5min Quick Start Guide</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.1/detection.html">Content and Language Detection</a>
+          </li>
+                  
+    <li class="none">
+                    <a href="../1.1/api/">API Documentation</a>
+          </li>
+              </ul>
+        </li>
+              
+                
+                    
+                  
+                  
+                  
+                  
+                  
+              
+        <li class="collapsed">
+                    <a href="../1.0/index.html">Apache Tika 1.0</a>
+                </li>
+              
+                
+                    
+                  
+                  
+                  
+                  
+                  
+              
+        <li class="collapsed">
+                    <a href="../0.10/index.html">Apache Tika 0.10</a>
+                </li>
+          </ul>
+              <h5>The Apache Software Foundation</h5>
+            <ul>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/foundation/" class="externalLink">About</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/licenses/" class="externalLink">License</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/security/" class="externalLink">Security</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink">Sponsorship</a>
+          </li>
+              
+    <li class="none">
+                    <a href="http://www.apache.org/foundation/thanks.html" class="externalLink">Thanks</a>
+          </li>
+          </ul>
+      
+          <div id="search">
+            <h5>Search with Apache Solr</h5>
+            <form action="http://search.lucidimagination.com/p:tika"
+                  method="get" id="searchform">
+              <input type="text" id="query" name="q"/>
+              <select name="searchProvider" id="searchProvider">
+                <option value="any">provider</option>
+                <option value="lucid">Lucid Find</option>
+                <option value="sl">Search-Lucene</option>
+              </select>
+              <input type="submit" id="submit" value="Search" name="Search"
+                     onclick="selectProvider(this.form)"/>
+            </form>
+          </div>
+
+          <div id="bookpromo">
+            <h5>Books about Tika</h5>
+            <p>
+              <a href="http://manning.com/mattmann/" title="Tika in Action"
+                ><img src="../mattmann_cover150.jpg"
+                      width="150" height="186"/></a>
+            </p>
+          </div>
+        </div>
+      </div>
+      <div id="footer">
+        <p>
+          Copyright &#169; 2012
+          <a href="http://www.apache.org/">The Apache Software Foundation</a>.
+          Site powered by <a href="http://maven.apache.org/">Apache Maven</a>. 
+          Search powered by
+          <a href="http://www.lucidimagination.com">Lucid Imagination</a>
+          and <a href="http://sematext.com">Sematext</a>.
+          <br/>
+          Apache Tika, Tika, Apache, the Apache feather logo, and the Apache
+          Tika project logo are trademarks of The Apache Software Foundation.
+        </p>
+      </div>
+    </div>
+  </body>
+</html>