This page lists all the document formats supported by Apache Tika 0.9. Follow the links to the various parser class javadocs for more detailed information about each document format and how it is parsed by Tika.
- Supported Document Formats
- HyperText Markup Language
- XML and derived formats
- Microsoft Office document formats
- OpenDocument Format
- Apple iWorks Formats
- Portable Document Format
- Electronic Publication Format
- Rich Text Format
- Compression and packaging formats
- Text formats
- Audio formats
- Image formats
- Video formats
- Java class files and archives
- Mail formats
- The DWG (AutoCAD) format
- Font formats
- Scientific formats
The HyperText Markup Language (HTML) is the lingua franca of the web. Tika uses the TagSoup library to support virtually any kind of HTML found on the web. The output from the HtmlParser 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.
The Extensible Markup Language (XML) format is 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 DcXMLParser 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.
Tika also includes FeedParser which is able to extract metadata and content from XML based feeds such as RSS and Atom.
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 OfficeParser and OOXMLParser classes use Apache POI libraries to support text and metadata extraction from both OLE2 and OOXML documents.
The OpenDocument format (ODF) is used most notably as the default format of the OpenOffice.org office suite. The OpenDocumentParser class supports this format and the earlier OpenOffice 1.0 format on which ODF is based.
The iWorks formats of Numbers, Pages and Keynote are used by Apple's iWork office suite. The IWorkParser is able to extract text and metadata from these files.
The EpubParser class supports the Electronic Publication Format (EPUB) used for many digital books.
The RTFParser class uses the standard javax.swing.text.rtf feature to extract text content from Rich Text Format (RTF) documents.
Tika uses the Commons Compress library to support various compression and packaging formats. The PackageParser 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.
Extracting text content from plain text files seems like a simple task until you start thinking of all the possible character encodings. The TXTParser class uses encoding detection code from the ICU project to automatically detect the character encoding of a text document.
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 AudioParser and MidiParser classes use standard javax.sound features to process simple audio formats, and the Mp3Parser class adds support for the widely used MP3 format.
The ImageParser 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 JpegParser and TiffParser classes that uses the metadata-extractor library to supports Exif metadata extraction from Jpeg and Tiff images.
Currently Tika only supports the Flash video format using a simple parsing algorithm implemented in the FLVParser class.
The MboxParser can extract email messages from the mbox format used by many email archives and Unix-style mailboxes.
The RFC822Parser can extract email messages from the RFC822 format of email messages.
In addition to office documents, the OfficeParser is also able to extract text and metadata from Outlook .msg emails.
The DWGParser can extract metadata (but not textual contents) from the DWG format that is used by AutoCAD.