General

Components

Community

Development

PPMC

ASF

ODFDOM Release Notes

Release 0.8.7

ODFDOM 0.8.7 is released on Feb 16th, 2010. Major enhancements are coming with this version:

Resolved Issues

API changes since 0.8.6 Release
1.Package/Class Change List
Note: The first column 'Java class' package is relative to 'org.odftoolkit'.

Previous PackagePrevious ClassNew PackageNew Class
odfdom.doc.drawOdfDrawFrameodfdom.incubator.doc.drawOdfDrawFrame
odfdom.doc.numberOdfNumberCurrencyStyleodfdom.incubator.doc.numberOdfNumberCurrencyStyle
OdfNumberDateStyleOdfNumberDateStyle
OdfNumberPercentageStyleOdfNumberPercentageStyle
OdfNumberStyleOdfNumberStyle
OdfNumberTimeStyleOdfNumberTimeStyle
odfdom.doc.officeOdfOfficeAutomaticStylesodfdom.incubator.doc.officeOdfOfficeAutomaticStyles
OdfOfficeMasterStylesOdfOfficeMasterStyles
OdfOfficeStylesOdfOfficeStyles
OdfStylesBaseOdfStylesBase
odfdom.doc.styleOdfDefaultStyleodfdom.incubator.doc.styleOdfDefaultStyle
OdfStyleOdfStyle
OdfStylePageLayoutOdfStylePageLayout
odfdom.doc.textOdfTextHeadingodfdom.incubator.doc.textOdfTextHeading
OdfTextListOdfTextList
OdfTextListLevelStyleBulletOdfTextListLevelStyleBullet
OdfTextListLevelStyleImageOdfTextListLevelStyleImage
OdfTextListLevelStyleNumberOdfTextListLevelStyleNumber
OdfTextListStyleOdfTextListStyle
OdfTextOutlineLevelStyleOdfTextOutlineLevelStyle
OdfTextOutlineStyleOdfTextOutlineStyle
OdfTextParagraphOdfTextParagraph
OdfTextSpanOdfTextSpan
OdfWhitespaceProcessorOdfWhitespaceProcessor
odfdom.doc.drawOdfDrawPageodfdom.doc.presentationOdfSlide
odfdom.pkgOdfPackageStreamodfdom.pkgOdfPackageDocument
odfdomNamespaceNameodfdom.pkgNamespaceName
OdfAlienAttributeOdfAlienAttribute
OdfAlienElementOdfAlienElement
OdfAttributeOdfAttribute
OdfContainerElementBaseOdfContainerElementBase
OdfElementOdfElement
OdfFileDomOdfFileDom
OdfNameOdfName
OdfNamespaceOdfNamespace
OdfXMLFactoryOdfXMLFactory

2.Method Change List
Note: The first column 'Java class' package is relative to 'org.odftoolkit.odfdom'.

Previous Java Class Previous API New Java Class New API
doc.OdfChartDocument OdfOfficeChart getContentRoot() doc.OdfChartDocument OfficeChartElement getContentRoot()
doc.OdfGraphicsDocument OdfOfficeDrawing getContentRoot() doc.OdfGraphicsDocument OfficeDrawingElement getContentRoot()
doc.OdfImageDocument OdfOfficeImage getContentRoot() doc.OdfImageDocument OfficeImageElement getContentRoot()
doc.OdfSpreadsheetDocument OdfOfficeSpreadsheet getContentRoot() doc.OdfSpreadsheetDocument OfficeSpreadsheetElement getContentRoot()
doc.OdfTextDocument OdfOfficeText getContentRoot() doc.OdfTextDocument OfficeTextElement getContentRoot()
doc.OdfPresentationDocument void deleteSlideByIndex(int) doc.OdfPresentationDocument boolean deleteSlideByIndex(int)
void deleteSlideByName(String) boolean deleteSlideByName(String)
OdfDrawPage getSlideByIndex(int) OdfSlide getSlideByIndex(int)
OdfDrawPage getSlideByName(String) OdfSlide getSlideByName(String)
OdfDrawPage copySlide(int,int,String) OdfSlide copySlide(int,int,String)
OdfDrawPage copyForeignSlide(int,OdfPresentationDocument,int) OdfSlide copyForeignSlide(int,OdfPresentationDocument,int)
OdfDrawPage newSlide(int,String,OdfDrawPage.SlideLayout) OdfSlide newSlide(int,String,OdfSlide.SlideLayout)
doc.OdfDocument OdfDocument loadTemplate(OdfDocument.Resource) doc.OdfDocument OdfDocument loadTemplate(OdfPackageDocument.Resource,OdfDocument.OdfMediaType)
OdfDocument getEmbeddedDocument(String) OdfDocument loadSubDocument(String)
List getEmbeddedDocuments() Map loadSubDocuments()
List getEmbeddedDocuments(OdfDocument.OdfMediaType) Map loadSubDocuments(OdfDocument.OdfMediaType)
String getMediaType() OdfDocument.OdfMediaType getOdfMediaType()
void setMediaType(OdfDocument.OdfMediaType) void setOdfMediaType(OdfDocument.OdfMediaType)
InputStream getContentStream() dom.OdfSchemaDocument InputStream getContentStream()
InputStream getContentStream() dom.OdfSchemaDocument InputStream getContentStream()
InputStream getStylesStream() dom.OdfSchemaDocument InputStream getStylesStream()
InputStream getSettingsStream() dom.OdfSchemaDocument InputStream getSettingsStream()
InputStream getMetaStream() dom.OdfSchemaDocument InputStream getMetaStream()
OdfContentDom getContentDom() dom.OdfSchemaDocument OdfContentDom getContentDom()
OdfStylesDom getStylesDom() dom.OdfSchemaDocument OdfStylesDom getStylesDom()
OdfMetaDom getMetaDom() dom.OdfSchemaDocument OdfMetaDom getMetaDom()
OdfSettingsDom getSettingsDom() dom.OdfSchemaDocument OdfSettingsDom getSettingsDom()
OdfOfficeStyles getDocumentStyles() dom.OdfSchemaDocument OdfOfficeStyles getDocumentStyles()
OdfOfficeStyles getOrCreateDocumentStyles() dom.OdfSchemaDocument OdfOfficeStyles getOrCreateDocumentStyles()
OdfOfficeMasterStyles getOfficeMasterStyles() dom.OdfSchemaDocument OdfOfficeMasterStyles getOfficeMasterStyles()
String getBaseURI() dom.OdfSchemaDocument String getBaseURI()
void embedDocument(String,OdfDocument) pkg.OdfPackageDocument void insertDocument(OdfPackageDocument,String)
void RemoveEmbedDocument(String) pkg.OdfPackageDocument void removeDocument(String)
OdfPackage getPackage() pkg.OdfPackageDocument OdfPackage getPackage()
void setPackage(OdfPackage)
pkg.OdfPackageDocument void setPackage(OdfPackage)
String getDocumentPackagePath() pkg.OdfPackageDocument String getDocumentPackagePath()
EntityResolver getEntityResolver() pkg.OdfPackageDocument EntityResolver getEntityResolver()
URIResolver getURIResolver() pkg.OdfPackageDocument URIResolver getURIResolver()
XPath getXPath() pkg.OdfFileDom XPath getXPath()
OdfDocument getRootDocument() pkg.OdfPackage OdfPackageDocument getRootDocument()
pkg.manifest.OdfFileEntry String getMediaType() pkg.manifest.OdfFileEntry String getMediaTypeString()
void setMediaType(String) void setMediaTypeString(String)
pkg.OdfPackage HashMap getManifestEntries() pkg.OdfPackage Map getManifestEntries()
getFileEntries() getFilePaths()
String getMediaType() String getMediaTypeString()
insertPackageDocument(OdfPackageDocument,String) insertDocument(OdfPackageDocument, String)
void removePackageDocument(String) void removeDocument(String)
void flushDecendentDoms(OdfPackageDocument) void flushDoms(OdfPackageDocument)
OdfPackageDocument loadPackageDocument(String) OdfPackageDocument loadDocument(String)
Set getInnerDocumentPaths(String) Set getDocumentPaths()
Set getInnerDocumentPaths(String,String) Set getDocumentPaths(String,String)
incubator.meta.OdfOfficeMeta void setDcdate(Calendar) incubator.meta.OdfOfficeMeta void setDate(Calendar)
Calendar getDcdate() Calendar getDate()

3.Package/Class/Method Removed List

Removed Package/Class/MethodAdaptive Solution
remove empty DOC classes from the following packages:
org.odftoolkit.odfdom.doc.anim;
org.odftoolkit.odfdom.doc.chart;
org.odftoolkit.odfdom.doc.config;
org.odftoolkit.odfdom.doc.db;
org.odftoolkit.odfdom.doc.dc;
org.odftoolkit.odfdom.doc.dr3d;
org.odftoolkit.odfdom.doc.draw;
org.odftoolkit.odfdom.doc.form;
org.odftoolkit.odfdom.doc.math;
org.odftoolkit.odfdom.doc.meta;
org.odftoolkit.odfdom.doc.number;
org.odftoolkit.odfdom.doc.office;
org.odftoolkit.odfdom.doc.presentation;
org.odftoolkit.odfdom.doc.script;
org.odftoolkit.odfdom.doc.style;
org.odftoolkit.odfdom.doc.svg;
org.odftoolkit.odfdom.doc.text;
org.odftoolkit.odfdom.doc.xforms
use corresponding DOM layer classes directly.
sample: org.odftoolkit.odfdom.doc.anim.OdfAnimate -> org.odftoolkit.odfdom.dom.anim.AnimAnimateElement
remove get/setValue() from dom attribute classes use get/setValue() in XML DOM directly.
remove classes:
OdfAttributeNames, OdfElementNames, OdfNamespaceNames
from package org.odftoolkit.odfdom.dom
use String to replace emun value.
remove the following methods:
int getColumnSpannedNumber();
int getColumnsRepeatedNumber();
int getRowSpannedNumber();
void setColumnsRepeatedNumber(int repeatedNum);
void setColumnSpannedNumber(int spannedNum);
void setRowSpannedNumber(int spannedNum);
from org.odftoolkit.odfdom.doc.table.OdfTable;
use OdfTableCellRange.merge().
remove method:
OdfOfficeBody getOfficeBody()
from org.odftoolkit.odfdom.doc.OdfDocument
remove class:
OdfXMLHelper
from org.odftoolkit.odfdom.pkg

Release 0.8.6

On July 16th, version 0.8.6 has been released. About a month after the release of 0.8.5 the new 0.8.6 version provides more than a dozen of bug fixes mainly for Table usage from the [[ProjectOverview|high level ODF Document API]]. Aside of this, minor enhancements have been added, e.g. a higher usability for the Color type.

Resolved Issues

API changes since 0.8.5 Release

Note: The first column 'Java class' package is relative to 'org.odftoolkit.odfdom'.

Previous Java Class Previous API New Java Class New API
Version String getApplicationName() JarManifest String getOdfdomName()
String getApplicationTitle() String getOdfdomTitle()
String getApplicationVersion() String getOdfdomSupportedOdfVersion()
String getApplicationWebsite() String getOdfdomWebsite()
String getBuildDate() String getOdfdomBuildDate()
String getBuildResponsible() String getOdfdomBuildResponsible()
String getSupportedOdfVersion() String getOdfdomVersion()
doc.table.OdfTableCell double getCurrencyValue() doc.table.OdfTableCell Double getCurrencyValue()
double getPercentageValue() Double getPercentageValue()
setBooleanValue(boolean) setBooleanValue(Boolean)
setCurrencyValue(double, String) setCurrencyValue(Double, String)
setDoubleValue(double) setDoubleValue(Double)
setPercentageValue(double) setPercentageValue(Double)
getVerticalJustify() getVerticalAlignment()
setVerticalJustify(String) setVerticalAlignment(String)
getHorizontalJustify() getHorizontalAlignment()
setHorizontalJustify(String) setHorizontalAlignment(String)
getCellBackColor() getCellBackgroundColor()
setCellBackColor(Color) setCellBackgroundColor(Color)
type.Color String mapColorFromRgbToHex(String) type.Color String toSixDigitHexRGB(String)

Release: 0.8.5

On 3rd July 2010 version 0.8.5 of the Java implementation has been released. In this version, ODFDOM supports the load, parse and save of all available media types of OpenDocument documents - except Formula (MathML) and Database front end documents. As well, ODFDOM now allows the load & save of none-ODF XML elements and attributes. Furthermore, we introduced a series of slide relevant convenient methods for the Document API, which makes easy slide handling possible. In particular the slide access, deletion, reordering, the copy of slides from a presentation to another and even merge of two presentations were enabled.

A second focus had been the overall performance. We improved the start-up time of ODFDOM using a class lazy loading approach and reduced the saving time of ODF documents by avoiding the compressing of already compressed file, e.g. images. In special the performance of table handling via the Document API have been enhanced. For instance by using now automatic table expansion when a requested cell index was out of range. Finally we improved table method robustness by adding sanity checks and the fix of several table issues.

Resolved Issues

The resolved issues in this version include:

API changes since 0.8 Release

Note: The first column 'Java class' package is relative to 'org.odftoolkit.odfdom'.

Previous Java ClassPrevious APINew Java ClassNew API
pkg.element.OdfAlienElement getOdfName() OdfAlienElement getOdfName()
pkg.element.OdfAlienAttribute getOdfName() OdfAlienAttribute getOdfName()
getDefault() getDefault()
hasDefault() hasDefault()
doc.OdfElementFactory newOdfElement(OdfFileDom,OdfName) OdfXMLFactory newOdfElement(OdfFileDom,OdfName)
newOdfAttribute(OdfFileDom,OdfName) newOdfAttribute(OdfFileDom,OdfName)
mapElementOdfNameToClass(OdfName,Class) setOdfElementClass(OdfName,Class)
mapAttributeOdfNameToClass(OdfName,Class) setOdfAttributeClass(OdfName,Class)

Release: 0.8

On 19 Feb 2010 version 0.8 of the Java implementation has been released. The API adapts to latest ODF Specification 1.2 part Community Draft 4 and the codegeneration has been updated to the new RelaxNG schema. A major improvement of convenient layer is the introduce of table convenient API - a first prototype of ODF features - which provides methods to manipulate table feature and its sub-features, such as rows, columns, cells and cell ranges. In this prototype, the 1:1 inheritance relationships between convenient layer classes and dom layer classes have been broken up, and composite relationships are used instead. We also provide metadata convenient API in incubator package which will be improved in the following version. Dom layer has been improved to support invalid attributes and values in DOM tree. Some bugs in package layer, DOM/XML layer and document/convenient layer have been fixed. The Java Docs are improved.

Resolved Issues

The resolved issues in this version includes:

API changes since 0.7 Release (possibly uncomplete)

Note: The first column 'Java class' package is relative to 'org.odftoolkit.odfdom'.

Java ClassPrevious APINew API
NamespaceName.OdfNamespaceNames getNamespaceUri() getUri()
OdfTable getTableColumn(int):OdfTableColumn getColumnByIndex(int):OdfTableColumn
getTableColumnList():List<OdfTableColumn> getColumnList():List<OdfTableColumn>
getTableColumnCount():int getColumnNumber():int
addTableColumn():OdfTableColumn appendColumn():OdfTableColumn
addTableColumn(int):OdfTableColumn insertColumnBefore(int nIndex,int nCount):List<OdfTableColumn>
appendRow(Node):Node appendRow():OdfTableRow
addStyledTableColumn(String):OdfTableColumn
makeStyledColumnList(List<String>):List<OdfTableColumn>
setColumnList(List<OdfTableColumn)


Powered by the Apache CMS.

Apache "ODF Toolkit" is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.

Copyright © 2011 The Apache Software Foundation Licensed under the Apache License, Version 2.0. Contact Us
Apache and the Apache feather logos are trademarks of The Apache Software Foundation.
Other names appearing on the site may be trademarks of their respective owners.