--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/awt/XFont2.idl	12 Jul 2007 12:44:40 -0000
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFont2.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: tbe $ $Date: 2007/04/11 09:13:09 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_awt_XFont2_idl__
+#define __com_sun_star_awt_XFont2_idl__
+
+#ifndef __com_sun_star_awt_XFont_idl__
+#include <com/sun/star/awt/XFont.idl>
+#endif 
+
+//=============================================================================
+
+module com {  module sun {  module star {  module awt {
+
+//=============================================================================
+
+/** extends the <type>XFont</type> interface and provides additional
+    information for a font.
+
+    @since CWS xmlfilter02
+ */
+interface XFont2: com::sun::star::awt::XFont
+{
+	//-------------------------------------------------------------------------
+
+	/** checks whether or not this font has all the glyphs for the text
+        specified by aText.
+
+	    @param aText
+            The specified text for which glyphs are needed.
+
+        @return
+            Returns whether or not this font has all the glyphs for the
+            specified text.
+	 */
+    boolean hasGlyphs( [in] string aText );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
--- offapi/com/sun/star/awt/makefile.mk	20 Jun 2007 10:32:37 -0000	1.41
+++ offapi/com/sun/star/awt/makefile.mk	12 Jul 2007 12:44:41 -0000
@@ -241,6 +241,7 @@
 	XFixedText.idl\
 	XFocusListener.idl\
 	XFont.idl\
+	XFont2.idl\
 	XGraphics.idl\
 	XImageButton.idl\
 	XImageConsumer.idl\
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/ComplexReference.idl	12 Jul 2007 12:44:43 -0000
@@ -0,0 +1,71 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: ComplexReference.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/03/23 15:49:25 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ComplexReference_idl__
+#define __com_sun_star_sheet_ComplexReference_idl__
+
+#ifndef __com_sun_star_sheet_SingleReference_idl__
+#include <com/sun/star/sheet/SingleReference.idl>
+#endif
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** contains a reference to a cell range.
+ */
+struct ComplexReference
+{
+    //-------------------------------------------------------------------------
+
+    /** is the first reference.
+     */
+    SingleReference Reference1;
+
+    //-------------------------------------------------------------------------
+
+    /** is the second reference.
+     */
+    SingleReference Reference2;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- offapi/com/sun/star/sheet/DatabaseRange.idl	8 Sep 2005 04:37:50 -0000	1.13
+++ offapi/com/sun/star/sheet/DatabaseRange.idl	12 Jul 2007 12:44:43 -0000
@@ -151,9 +151,22 @@
 	/** specifies whether the imported data is only a selection of the database.
 
 		@since OOo 2.0.0
-
 	 */
 	[optional, property] boolean FromSelection;
+
+    //-------------------------------------------------------------------------
+
+    /** returns the index used to refer to this range in token arrays.
+
+        <p>A token describing a database range shall contain the op-code
+        OpCode::OPCODE_DB_AREA and this index as data part.</p>
+
+        @see com::sun::star::sheet::FormulaToken
+        @see com::sun::star::sheet::OpCode::OPCODE_DB_AREA
+
+        @since OOo 2.x
+     */
+    [optional, readonly, property] long TokenIndex;
 };
 
 //=============================================================================
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/FormulaToken.idl	12 Jul 2007 12:44:43 -0000
@@ -0,0 +1,72 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: FormulaToken.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: dr $ $Date: 2007/07/06 13:07:08 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#define __com_sun_star_sheet_FormulaToken_idl__
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** contains a single token within a formula.
+ */
+struct FormulaToken
+{
+    //-------------------------------------------------------------------------
+
+    /** is the OpCode of the token.
+
+        @see com::sun::star::sheet::OpCode
+     */
+    long OpCode;
+
+	//-------------------------------------------------------------------------
+
+    /** is additional data in the token, depending on the OpCode.
+
+        @see com::sun::star::sheet::NamedRange::TokenIndex
+        @see com::sun::star::sheet::DatabaseRange::TokenIndex
+     */
+    any Data;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- offapi/com/sun/star/sheet/NamedRange.idl	8 Sep 2005 04:44:39 -0000	1.6
+++ offapi/com/sun/star/sheet/NamedRange.idl	12 Jul 2007 12:44:43 -0000
@@ -78,6 +78,19 @@
 	 */
 	interface com::sun::star::sheet::XCellRangeReferrer;
 
+    //-------------------------------------------------------------------------
+
+    /** returns the index used to refer to this name in token arrays.
+
+        <p>A token describing a defined name shall contain the op-code
+        OpCode::OPCODE_NAME and this index as data part.</p>
+
+        @see com::sun::star::sheet::FormulaToken
+        @see com::sun::star::sheet::OpCode::OPCODE_NAME
+
+        @since OOo 2.x
+     */
+    [optional, readonly, property] long TokenIndex;
 };
 
 //=============================================================================
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/OpCode.idl	12 Jul 2007 12:44:44 -0000
@@ -0,0 +1,371 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: OpCode.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/03/23 15:49:26 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_OpCode_idl__
+#define __com_sun_star_sheet_OpCode_idl__
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** These constants are the formula OpCodes.
+ */
+constants OpCode
+{
+    const long OPCODE_PUSH = 0;
+    const long OPCODE_JUMP = 1;
+    const long OPCODE_STOP = 2;
+    const long OPCODE_EXTERNAL = 3;
+    const long OPCODE_NAME = 4;
+    const long OPCODE_IF = 5;
+    const long OPCODE_CHOSE = 6;
+    const long OPCODE_OPEN = 7;
+    const long OPCODE_CLOSE = 8;
+    const long OPCODE_SEP = 9;
+    const long OPCODE_MISSING = 10;
+    const long OPCODE_BAD = 11;
+    const long OPCODE_SPACES = 12;
+    const long OPCODE_MAT_REF = 13;
+    const long OPCODE_DB_AREA = 14;
+    const long OPCODE_MACRO = 15;
+    const long OPCODE_COL_ROW_NAME = 16;
+    const long OPCODE_COL_ROW_NAME_AUTO = 17;
+    const long OPCODE_PERCENT_SIGN = 18;
+    const long OPCODE_END_DIV = 20;
+    const long OPCODE_ADD = 21;
+    const long OPCODE_SUB = 22;
+    const long OPCODE_MUL = 23;
+    const long OPCODE_DIV = 24;
+    const long OPCODE_AMPERSAND = 25;
+    const long OPCODE_POW = 26;
+    const long OPCODE_EQUAL = 27;
+    const long OPCODE_NOT_EQUAL = 28;
+    const long OPCODE_LESS = 29;
+    const long OPCODE_GREATER = 30;
+    const long OPCODE_LESS_EQUAL = 31;
+    const long OPCODE_GREATER_EQUAL = 32;
+    const long OPCODE_AND = 33;
+    const long OPCODE_OR = 34;
+    const long OPCODE_INTERSECT = 35;
+    const long OPCODE_UNION = 36;
+    const long OPCODE_RANGE = 37;
+    const long OPCODE_END_BIN_OP = 40;
+    const long OPCODE_NOT = 41;
+    const long OPCODE_NEG = 42;
+    const long OPCODE_NEG_SUB = 43;
+    const long OPCODE_END_UN_OP = 45;
+    const long OPCODE_PI = 46;
+    const long OPCODE_RANDOM = 47;
+    const long OPCODE_TRUE = 48;
+    const long OPCODE_FALSE = 49;
+    const long OPCODE_GET_ACT_DATE = 50;
+    const long OPCODE_GET_ACT_TIME = 51;
+    const long OPCODE_NO_VALUE = 52;
+    const long OPCODE_CURRENT = 53;
+    const long OPCODE_END_NO_PAR = 60;
+    const long OPCODE_DEG = 61;
+    const long OPCODE_RAD = 62;
+    const long OPCODE_SIN = 63;
+    const long OPCODE_COS = 64;
+    const long OPCODE_TAN = 65;
+    const long OPCODE_COT = 66;
+    const long OPCODE_ARC_SIN = 67;
+    const long OPCODE_ARC_COS = 68;
+    const long OPCODE_ARC_TAN = 69;
+    const long OPCODE_ARC_COT = 70;
+    const long OPCODE_SIN_HYP = 71;
+    const long OPCODE_COS_HYP = 72;
+    const long OPCODE_TAN_HYP = 73;
+    const long OPCODE_COT_HYP = 74;
+    const long OPCODE_ARC_SIN_HYP = 75;
+    const long OPCODE_ARC_COS_HYP = 76;
+    const long OPCODE_ARC_TAN_HYP = 77;
+    const long OPCODE_ARC_COT_HYP = 78;
+    const long OPCODE_EXP = 79;
+    const long OPCODE_LN = 80;
+    const long OPCODE_SQRT = 81;
+    const long OPCODE_FACT = 82;
+    const long OPCODE_GET_YEAR = 83;
+    const long OPCODE_GET_MONTH = 84;
+    const long OPCODE_GET_DAY = 85;
+    const long OPCODE_GET_HOUR = 86;
+    const long OPCODE_GET_MIN = 87;
+    const long OPCODE_GET_SEC = 88;
+    const long OPCODE_PLUS_MINUS = 89;
+    const long OPCODE_ABS = 90;
+    const long OPCODE_INT = 91;
+    const long OPCODE_PHI = 92;
+    const long OPCODE_GAUSS = 93;
+    const long OPCODE_IS_EMPTY = 94;
+    const long OPCODE_IS_STRING = 95;
+    const long OPCODE_IS_NON_STRING = 96;
+    const long OPCODE_IS_LOGICAL = 97;
+    const long OPCODE_TYPE = 98;
+    const long OPCODE_IS_REF = 99;
+    const long OPCODE_IS_VALUE = 100;
+    const long OPCODE_IS_FORMULA = 101;
+    const long OPCODE_IS_NV = 102;
+    const long OPCODE_IS_ERR = 103;
+    const long OPCODE_IS_ERROR = 104;
+    const long OPCODE_IS_EVEN = 105;
+    const long OPCODE_IS_ODD = 106;
+    const long OPCODE_N = 107;
+    const long OPCODE_GET_DATE_VALUE = 108;
+    const long OPCODE_GET_TIME_VALUE = 109;
+    const long OPCODE_CODE = 110;
+    const long OPCODE_TRIM = 111;
+    const long OPCODE_UPPER = 112;
+    const long OPCODE_PROPPER = 113;
+    const long OPCODE_LOWER = 114;
+    const long OPCODE_LEN = 115;
+    const long OPCODE_T = 116;
+    const long OPCODE_VALUE = 117;
+    const long OPCODE_CLEAN = 118;
+    const long OPCODE_CHAR = 119;
+    const long OPCODE_LOG10 = 120;
+    const long OPCODE_EVEN = 121;
+    const long OPCODE_ODD = 122;
+    const long OPCODE_STD_NORM_DIST = 123;
+    const long OPCODE_FISHER = 124;
+    const long OPCODE_FISHER_INV = 125;
+    const long OPCODE_S_NORM_INV = 126;
+    const long OPCODE_GAMMA_LN = 127;
+    const long OPCODE_ERROR_TYPE = 128;
+    const long OPCODE_ERR_CELL = 129;
+    const long OPCODE_FORMULA = 130;
+    const long OPCODE_ARABIC = 131;
+    const long OPCODE_INFO = 132;
+    const long OPCODE_BAHTTEXT = 133;
+    const long OPCODE_END_1_PAR = 200;
+    const long OPCODE_ARC_TAN_2 = 201;
+    const long OPCODE_CEIL = 202;
+    const long OPCODE_FLOOR = 203;
+    const long OPCODE_ROUND = 204;
+    const long OPCODE_ROUND_UP = 205;
+    const long OPCODE_ROUND_DOWN = 206;
+    const long OPCODE_TRUNC = 207;
+    const long OPCODE_LOG = 208;
+    const long OPCODE_POWER = 209;
+    const long OPCODE_GGT = 210;
+    const long OPCODE_KGV = 211;
+    const long OPCODE_MOD = 212;
+    const long OPCODE_SUM_PRODUCT = 213;
+    const long OPCODE_SUM_SQ = 214;
+    const long OPCODE_SUM_X2MY2 = 215;
+    const long OPCODE_SUM_X2DY2 = 216;
+    const long OPCODE_SUM_XMY2 = 217;
+    const long OPCODE_GET_DATE = 218;
+    const long OPCODE_GET_TIME = 219;
+    const long OPCODE_GET_DIFF_DATE = 220;
+    const long OPCODE_GET_DIFF_DATE_360 = 221;
+    const long OPCODE_MIN = 222;
+    const long OPCODE_MAX = 223;
+    const long OPCODE_SUM = 224;
+    const long OPCODE_PRODUCT = 225;
+    const long OPCODE_AVERAGE = 226;
+    const long OPCODE_COUNT = 227;
+    const long OPCODE_COUNT_2 = 228;
+    const long OPCODE_NBW = 229;
+    const long OPCODE_IKV = 230;
+    const long OPCODE_VAR = 231;
+    const long OPCODE_VAR_P = 232;
+    const long OPCODE_ST_DEV = 233;
+    const long OPCODE_ST_DEV_P = 234;
+    const long OPCODE_B = 235;
+    const long OPCODE_NORM_DIST = 236;
+    const long OPCODE_EXP_DIST = 237;
+    const long OPCODE_BINOM_DIST = 238;
+    const long OPCODE_POISSON_DIST = 239;
+    const long OPCODE_KOMBIN = 240;
+    const long OPCODE_KOMBIN_2 = 241;
+    const long OPCODE_VARIATIONEN = 242;
+    const long OPCODE_VARIATIONEN_2 = 243;
+    const long OPCODE_BW = 244;
+    const long OPCODE_DIA = 245;
+    const long OPCODE_GDA = 246;
+    const long OPCODE_GDA_2 = 247;
+    const long OPCODE_VBD = 248;
+    const long OPCODE_LAUFZ = 249;
+    const long OPCODE_LIA = 250;
+    const long OPCODE_RMZ = 251;
+    const long OPCODE_COLUMNS = 252;
+    const long OPCODE_ROWS = 253;
+    const long OPCODE_COLUMN = 254;
+    const long OPCODE_ROW = 255;
+    const long OPCODE_ZGZ = 256;
+    const long OPCODE_ZW = 257;
+    const long OPCODE_ZZR = 258;
+    const long OPCODE_ZINS = 259;
+    const long OPCODE_ZINS_Z = 260;
+    const long OPCODE_KAPZ = 261;
+    const long OPCODE_KUM_ZINS_Z = 262;
+    const long OPCODE_KUM_KAP_Z = 263;
+    const long OPCODE_EFFEKTIV = 264;
+    const long OPCODE_NOMINAL = 265;
+    const long OPCODE_SUB_TOTAL = 266;
+    const long OPCODE_DB_SUM = 267;
+    const long OPCODE_DB_COUNT = 268;
+    const long OPCODE_DB_COUNT_2 = 269;
+    const long OPCODE_DB_AVERAGE = 270;
+    const long OPCODE_DB_GET = 271;
+    const long OPCODE_DB_MAX = 272;
+    const long OPCODE_DB_MIN = 273;
+    const long OPCODE_DB_PRODUCT = 274;
+    const long OPCODE_DB_STD_DEV = 275;
+    const long OPCODE_DB_STD_DEV_P = 276;
+    const long OPCODE_DB_VAR = 277;
+    const long OPCODE_DB_VAR_P = 278;
+    const long OPCODE_INDIRECT = 279;
+    const long OPCODE_ADDRESS = 280;
+    const long OPCODE_MATCH = 281;
+    const long OPCODE_COUNT_EMPTY_CELLS = 282;
+    const long OPCODE_COUNT_IF = 283;
+    const long OPCODE_SUM_IF = 284;
+    const long OPCODE_LOOKUP = 285;
+    const long OPCODE_V_LOOKUP = 286;
+    const long OPCODE_H_LOOKUP = 287;
+    const long OPCODE_MULTI_AREA = 288;
+    const long OPCODE_OFFSET = 289;
+    const long OPCODE_INDEX = 290;
+    const long OPCODE_AREAS = 291;
+    const long OPCODE_CURRENCY = 292;
+    const long OPCODE_REPLACE = 293;
+    const long OPCODE_FIXED = 294;
+    const long OPCODE_FIND = 295;
+    const long OPCODE_EXACT = 296;
+    const long OPCODE_LEFT = 297;
+    const long OPCODE_RIGHT = 298;
+    const long OPCODE_SEARCH = 299;
+    const long OPCODE_MID = 300;
+    const long OPCODE_TEXT = 301;
+    const long OPCODE_SUBSTITUTE = 302;
+    const long OPCODE_REPT = 303;
+    const long OPCODE_CONCAT = 304;
+    const long OPCODE_MAT_VALUE = 305;
+    const long OPCODE_MAT_DET = 306;
+    const long OPCODE_MAT_INV = 307;
+    const long OPCODE_MAT_MULT = 308;
+    const long OPCODE_MAT_TRANS = 309;
+    const long OPCODE_MATRIX_UNIT = 310;
+    const long OPCODE_BACK_SOLVER = 311;
+    const long OPCODE_HYP_GEOM_DIST = 312;
+    const long OPCODE_LOG_NORM_DIST = 313;
+    const long OPCODE_T_DIST = 314;
+    const long OPCODE_F_DIST = 315;
+    const long OPCODE_CHI_DIST = 316;
+    const long OPCODE_WEIBULL = 317;
+    const long OPCODE_NEG_BINOM_VERT = 318;
+    const long OPCODE_KRIT_BINOM = 319;
+    const long OPCODE_KURT = 320;
+    const long OPCODE_HAR_MEAN = 321;
+    const long OPCODE_GEO_MEAN = 322;
+    const long OPCODE_STANDARD = 323;
+    const long OPCODE_AVE_DEV = 324;
+    const long OPCODE_SCHIEFE = 325;
+    const long OPCODE_DEV_SQ = 326;
+    const long OPCODE_MEDIAN = 327;
+    const long OPCODE_MODAL_VALUE = 328;
+    const long OPCODE_Z_TEST = 329;
+    const long OPCODE_T_TEST = 330;
+    const long OPCODE_RANK = 331;
+    const long OPCODE_PERCENTILE = 332;
+    const long OPCODE_PERCENT_RANK = 333;
+    const long OPCODE_LARGE = 334;
+    const long OPCODE_SMALL = 335;
+    const long OPCODE_FREQUENCY = 336;
+    const long OPCODE_QUARTILE = 337;
+    const long OPCODE_NORM_INV = 338;
+    const long OPCODE_CONFIDENCE = 339;
+    const long OPCODE_F_TEST = 340;
+    const long OPCODE_TRIM_MEAN = 341;
+    const long OPCODE_PROB = 342;
+    const long OPCODE_CORREL = 343;
+    const long OPCODE_COVAR = 344;
+    const long OPCODE_PEARSON = 345;
+    const long OPCODE_RSQ = 346;
+    const long OPCODE_STEYX = 347;
+    const long OPCODE_SLOPE = 348;
+    const long OPCODE_INTERCEPT = 349;
+    const long OPCODE_TREND = 350;
+    const long OPCODE_GROWTH = 351;
+    const long OPCODE_RGP = 352;
+    const long OPCODE_RKP = 353;
+    const long OPCODE_FORECAST = 354;
+    const long OPCODE_CHI_INV = 355;
+    const long OPCODE_GAMMA_DIST = 356;
+    const long OPCODE_GAMMA_INV = 357;
+    const long OPCODE_T_INV = 358;
+    const long OPCODE_F_INV = 359;
+    const long OPCODE_CHI_TEST = 360;
+    const long OPCODE_LOG_INV = 361;
+    const long OPCODE_TABLE_OP = 362;
+    const long OPCODE_BETA_DIST = 363;
+    const long OPCODE_BETA_INV = 364;
+    const long OPCODE_WEEK = 365;
+    const long OPCODE_GET_DAY_OF_WEEK = 366;
+    const long OPCODE_NO_NAME = 367;
+    const long OPCODE_STYLE = 368;
+    const long OPCODE_DDE = 369;
+    const long OPCODE_BASE = 370;
+    const long OPCODE_TABLE = 371;
+    const long OPCODE_TABLES = 372;
+    const long OPCODE_MIN_A = 373;
+    const long OPCODE_MAX_A = 374;
+    const long OPCODE_AVERAGE_A = 375;
+    const long OPCODE_ST_DEV_A = 376;
+    const long OPCODE_ST_DEV_P_A = 377;
+    const long OPCODE_VAR_A = 378;
+    const long OPCODE_VAR_P_A = 379;
+    const long OPCODE_EASTERSUNDAY = 380;
+    const long OPCODE_DECIMAL = 381;
+    const long OPCODE_CONVERT = 382;
+    const long OPCODE_ROMAN = 383;
+    const long OPCODE_MIRR = 384;
+    const long OPCODE_CELL = 385;
+    const long OPCODE_ISPMT = 386;
+    const long OPCODE_HYPERLINK = 387;
+    const long OPCODE_INDIRECT_XL = 388;
+    const long OPCODE_ADDRESS_XL = 389;
+    const long OPCODE_END_2_PAR = 390;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/ReferenceFlags.idl	12 Jul 2007 12:44:44 -0000
@@ -0,0 +1,105 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: ReferenceFlags.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/03/23 15:49:27 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_ReferenceFlags_idl__
+#define __com_sun_star_sheet_ReferenceFlags_idl__
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** defines flags for references.
+
+    <P>The values can be combined.</P>
+ */
+constants ReferenceFlags
+{
+	//-------------------------------------------------------------------------
+
+    /** selects a relative column reference.
+     */
+    const long COLUMN_RELATIVE = 1;
+
+	//-------------------------------------------------------------------------
+
+    /** marks a deleted column reference.
+     */
+    const long COLUMN_DELETED = 2;
+
+	//-------------------------------------------------------------------------
+
+    /** selects a relative row reference.
+     */
+    const long ROW_RELATIVE = 4;
+
+	//-------------------------------------------------------------------------
+
+    /** marks a deleted row reference.
+     */
+    const long ROW_DELETED = 8;
+
+	//-------------------------------------------------------------------------
+
+    /** selects a relative sheet reference.
+     */
+    const long SHEET_RELATIVE = 16;
+
+	//-------------------------------------------------------------------------
+
+    /** marks a deleted sheet reference.
+     */
+    const long SHEET_DELETED = 32;
+
+	//-------------------------------------------------------------------------
+
+    /** selects a 3D sheet reference.
+     */
+    const long SHEET_3D = 64;
+
+	//-------------------------------------------------------------------------
+
+    /** marks a reference from a relative range name.
+     */
+    const long RELATIVE_NAME = 128;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- offapi/com/sun/star/sheet/SheetCell.idl	22 May 2007 15:10:25 -0000	1.12
+++ offapi/com/sun/star/sheet/SheetCell.idl	12 Jul 2007 12:44:45 -0000
@@ -61,6 +61,14 @@
 #include <com/sun/star/style/ParagraphProperties.idl>
 #endif
 
+#ifndef __com_sun_star_style_ParagraphPropertiesAsian_idl__
+#include <com/sun/star/style/ParagraphPropertiesAsian.idl>
+#endif
+
+#ifndef __com_sun_star_style_ParagraphPropertiesComplex_idl__
+#include <com/sun/star/style/ParagraphPropertiesComplex.idl>
+#endif
+
 #ifndef __com_sun_star_sheet_SheetRangesQuery_idl__
 #include <com/sun/star/sheet/SheetRangesQuery.idl>
 #endif
@@ -168,6 +176,18 @@
 
 	//-------------------------------------------------------------------------
 
+    /** contributes properties for paragraph formatting of Asian text.
+     */
+    [optional] service com::sun::star::style::ParagraphPropertiesAsian;
+
+    //-------------------------------------------------------------------------
+
+    /** contributes properties for paragraph formatting of Complex text.
+     */
+    [optional] service com::sun::star::style::ParagraphPropertiesComplex;
+
+    //-------------------------------------------------------------------------
+
 	/** provides interfaces to find cells with specific properties.
 	 */
 	service com::sun::star::sheet::SheetRangesQuery;
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/SingleReference.idl	12 Jul 2007 12:44:45 -0000
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: SingleReference.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/03/23 15:49:27 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_SingleReference_idl__
+#define __com_sun_star_sheet_SingleReference_idl__
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** contains a reference to a single cell.
+ */
+struct SingleReference
+{
+    //-------------------------------------------------------------------------
+
+    /** is the absolute column number.
+     */
+    long Column;
+
+    //-------------------------------------------------------------------------
+
+    /** is the relative column number.
+     */
+    long RelativeColumn;
+
+    //-------------------------------------------------------------------------
+
+    /** is the absolute row number.
+     */
+    long Row;
+
+    //-------------------------------------------------------------------------
+
+    /** is the relative row number.
+     */
+    long RelativeRow;
+
+    //-------------------------------------------------------------------------
+
+    /** is the absolute sheet number.
+     */
+    long Sheet;
+
+    //-------------------------------------------------------------------------
+
+    /** is the relative sheet number.
+     */
+    long RelativeSheet;
+
+	//-------------------------------------------------------------------------
+
+    /** contains flags.
+     */
+    long Flags;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- offapi/com/sun/star/sheet/Spreadsheet.idl	8 Sep 2005 04:52:05 -0000	1.9
+++ offapi/com/sun/star/sheet/Spreadsheet.idl	12 Jul 2007 12:44:46 -0000
@@ -224,6 +224,19 @@
 
 	//-------------------------------------------------------------------------
 
+	/** specifies the direction of the columns in the spreadsheet.
+
+	    <p>Possible values are com::sun::star::text::WritingMode2::LR_TB to
+	    order the columns from left to right, and
+            com::sun::star::text::WritingMode2::RL_TB to order the columns from
+	    right to left.</p>
+
+	    @see com::sun::star::text::WritingMode2
+	 */
+	[optional, property] short TableLayout;
+
+	//-------------------------------------------------------------------------
+
 	/** specifies whether the sheet has an automatic print area.
 
     <p> The automatic print area is used to print a sheet without
--- offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl	8 Sep 2005 04:52:31 -0000	1.10
+++ offapi/com/sun/star/sheet/SpreadsheetDocumentSettings.idl	12 Jul 2007 12:44:46 -0000
@@ -52,6 +52,10 @@
 #include <com/sun/star/lang/Locale.idl>
 #endif
 
+#ifndef __com_sun_star_awt_XDevice_idl__
+#include <com/sun/star/awt/XDevice.idl>
+#endif
+
 //=============================================================================
 
 module com {  module sun {  module star {  module sheet {
@@ -203,6 +207,30 @@
 	 */
 	[optional, property] com::sun::star::lang::Locale CharLocaleComplex;
 
+    //-------------------------------------------------------------------------
+
+    /** specifies whether the document data are already loaded.
+
+        @since CWS xmlfilter02
+     */
+    [optional, property] boolean IsLoaded;
+
+    //-------------------------------------------------------------------------
+
+    /** specifies whether the undo command is enabled.
+
+        @since CWS xmlfilter02
+     */
+    [optional, property] boolean IsUndoEnabled;
+
+    //-------------------------------------------------------------------------
+
+    /** contains the reference device used for formatting the document.
+
+        @since CWS xmlfilter02
+     */
+    [readonly, optional, property] com::sun::star::awt::XDevice ReferenceDevice;
+
 };
 
 //=============================================================================
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/XArrayFormulaTokens.idl	12 Jul 2007 12:44:46 -0000
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XArrayFormulaTokens.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/06/28 15:44:54 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XArrayFormulaTokens_idl__
+#define __com_sun_star_sheet_XArrayFormulaTokens_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** gives access to an array formula as token sequence.
+ */
+interface XArrayFormulaTokens
+{
+    //-------------------------------------------------------------------------
+
+    /** returns the array formula as sequence of tokens.
+     */
+    sequence< FormulaToken > getArrayTokens();
+
+    //-------------------------------------------------------------------------
+
+    /** sets the array formula as sequence of tokens.
+     */
+    void setArrayTokens( [in] sequence< FormulaToken > aTokens );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/XFormulaParser.idl	12 Jul 2007 12:44:46 -0000
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFormulaParser.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/03/23 15:49:28 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFormulaParser_idl__
+#define __com_sun_star_sheet_XFormulaParser_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** converts between text and token representations of formulas.
+ */
+interface XFormulaParser
+{
+    //-------------------------------------------------------------------------
+
+    /** parses a formula into a sequence of tokens.
+     */
+    sequence< FormulaToken > parseFormula( [in] string aFormula );
+
+    //-------------------------------------------------------------------------
+
+    /** converts a formula into a string.
+     */
+    string printFormula( [in] sequence< FormulaToken > aTokens );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/sheet/XFormulaTokens.idl	12 Jul 2007 12:44:46 -0000
@@ -0,0 +1,76 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFormulaTokens.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: nn $ $Date: 2007/06/28 15:44:54 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+
+#ifndef __com_sun_star_sheet_XFormulaTokens_idl__
+#define __com_sun_star_sheet_XFormulaTokens_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_sheet_FormulaToken_idl__
+#include <com/sun/star/sheet/FormulaToken.idl>
+#endif
+
+//=============================================================================
+
+module com {  module sun {  module star {  module sheet {
+
+//=============================================================================
+
+/** gives access to a formula as token sequence.
+ */
+interface XFormulaTokens
+{
+    //-------------------------------------------------------------------------
+
+    /** returns the formula as sequence of tokens.
+     */
+    sequence< FormulaToken > getTokens();
+
+    //-------------------------------------------------------------------------
+
+    /** sets the formula as sequence of tokens.
+     */
+    void setTokens( [in] sequence< FormulaToken > aTokens );
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
+
--- offapi/com/sun/star/sheet/makefile.mk	22 May 2007 15:11:32 -0000	1.24
+++ offapi/com/sun/star/sheet/makefile.mk	12 Jul 2007 12:44:47 -0000
@@ -46,6 +46,14 @@
 # ------------------------------------------------------------------------
 
 IDLFILES=\
+    FormulaToken.idl\
+    OpCode.idl\
+    SingleReference.idl\
+    ComplexReference.idl\
+    ReferenceFlags.idl\
+    XArrayFormulaTokens.idl\
+    XFormulaTokens.idl\
+    XFormulaParser.idl\
 	AccessibleCell.idl\
 	AccessibleSpreadsheet.idl\
 	AccessibleSpreadsheetDocumentView.idl\
--- offapi/com/sun/star/style/CharacterProperties.idl	14 Jul 2006 08:36:45 -0000	1.29
+++ offapi/com/sun/star/style/CharacterProperties.idl	12 Jul 2007 12:44:47 -0000
@@ -66,33 +66,36 @@
 
 	/** This property specifies the name of the font style.
 
-
-
 		<p>It may contain more than one name separated by comma.</p>
 	 */
 	[property] string CharFontName;
-	//-------------------------------------------------------------------------
+
+    //-------------------------------------------------------------------------
 
 	/** This property contains the name of the font style.
 
 		<p>This property may be empty.</p>
 	 */
 	[property] string CharFontStyleName;
-	//-------------------------------------------------------------------------
 
-	/** This property contains font family as specified in
-		com.sun.star.awt.FontFamily .
+    //-------------------------------------------------------------------------
+
+    /** This property contains font family.
+        @see com::sun::star::awt::FontFamily
 	 */
 	[property] short CharFontFamily;
-	//-------------------------------------------------------------------------
 
-	/** This property contains the text encoding of the font as specified in
-		com.sun.star.awt.CharSet.
+    //-------------------------------------------------------------------------
+
+    /** This property contains the text encoding of the font.
+        @see com::sun::star::awt::CharSet
 	 */
 	[property] short CharFontCharSet;
-	//-------------------------------------------------------------------------
 
-	/** This property contains the font pitch as specified in com.sun.star.awt.FontPitch.
+    //-------------------------------------------------------------------------
+
+    /** This property contains the font pitch.
+        @see com::sun::star::awt::FontPitch
 	 */
 	[property] short CharFontPitch;
 
@@ -104,10 +107,12 @@
 
 	//-------------------------------------------------------------------------
 
-	/** specifies the percentage of raisement/lowerment of superscript/subscript 
-		characters.
+	/** specifies the percentage of raisement/lowerment of superscript/subscript
+        characters.
 
         <p>Negative values denote subscripts and positive values superscripts.</p>
+
+        @see CharEscapementHeight
 	 */
 	[optional, property] short CharEscapement;
 
@@ -119,26 +124,29 @@
 
 	//-------------------------------------------------------------------------
 
-	/** This property contains the value for the character underline.@see com::sun::star::awt::FontUnderline
+    /** This property contains the value for the character underline.
+        @see com::sun::star::awt::FontUnderline
 	 */
 	[property] short CharUnderline;
 
 	//-------------------------------------------------------------------------
 
-	/** This property contains the value of the font weight.@see com::sun::star::awt::FontWeight
+    /** This property contains the value of the font weight.
+        @see com::sun::star::awt::FontWeight
 	 */
 	[property] float CharWeight;
 
 	//-------------------------------------------------------------------------
 
-	/** This property contains the value of the posture of the document.@see com::sun::star::awt::FontSlant
+    /** This property contains the value of the posture of the document.
+        @see com::sun::star::awt::FontSlant
 	 */
 	[property] com::sun::star::awt::FontSlant CharPosture;
 
 	//-------------------------------------------------------------------------
 
-	/** optional property to determine whether the kerning tables from the current font are used.
-
+    /** This optional property determines whether the kerning tables from the
+        current font are used.
 
 		<p>Automatic <em>kerning</em> applies a spacing in between certain
 		pairs of characters to make the text look better.</p>
@@ -147,19 +155,20 @@
 
 	//-------------------------------------------------------------------------
 
-	/** optional property which contains the text background color.
+    /** This optional property contains the text background color.
 	 */
 	[optional, property] com::sun::star::util::Color CharBackColor;
 
 	//-------------------------------------------------------------------------
 
-	/** determines if the text background color is set to transparent.
+    /** This property determines if the text background color is set to
+        transparent.
 	 */
 	[optional, property] boolean CharBackTransparent;
 
 	//-------------------------------------------------------------------------
 
-	/** optional property which contains the value of the case-mapping of the
+    /** This optional property contains the value of the case-mapping of the
 		text for formatting and displaying.
 
 		@see CaseMap
@@ -168,7 +177,7 @@
 
 	//-------------------------------------------------------------------------
 
-	/** This property is <TRUE/> if the character(s) is(are) crossed out.
+    /** This property is <TRUE/> if the characters are crossed out.
 	 */
 	[optional, property] boolean CharCrossedOut;
 
@@ -179,12 +188,14 @@
 	[optional, property] boolean CharFlash;
 
 	//-------------------------------------------------------------------------
-	/**	determins the type of the strike out of the character.
-		@see com.sun.star.awt.FontStrikeout
+
+    /** This property determins the type of the strike out of the character.
+        @see com::sun::star::awt::FontStrikeout
 	*/
 	[optional, property] short CharStrikeout;
 
 	//-------------------------------------------------------------------------
+
 	/**	If this property is <TRUE/>, the underline and strike-through
 		properties are not applied to white spaces.
 	 */
@@ -192,189 +203,246 @@
 
 	//-------------------------------------------------------------------------
 
-	/** optional property which contains the value of the kerning of the characters.
+    /** This optional property contains the value of the kerning of the
+        characters.
 	 */
 	[optional, property] short CharKerning;
 
 	//-------------------------------------------------------------------------
 
-	/** contains the value of the locale.
-	 */
-	[property] com::sun::star::lang::Locale CharLocale;
+    /** This property contains the value of the locale.
+     */
+    [property] com::sun::star::lang::Locale CharLocale;
 
-	//-------------------------------------------------------------------------
+   //-------------------------------------------------------------------------
 
-	/** optional property which marks a range of characters to prevent it from being broken into two lines.
+    /** This optional property marks a range of characters to prevent it from
+        being broken into two lines.
 
-		<p> A line break is applied before the range of characters if
-		the layout makes a break necessary within the range.</p>
-	 */
-	[optional, property] boolean CharKeepTogether;
+        <p> A line break is applied before the range of characters if
+        the layout makes a break necessary within the range.</p>
+    */
+    [optional, property] boolean CharKeepTogether;
 
-	//-------------------------------------------------------------------------
+    //-------------------------------------------------------------------------
 
-	/** optional property which marks a range of characters to ignore a line break in this area.
+    /** This optional property marks a range of characters to ignore a line
+        break in this area.
 
-		<p> A line break is applied behind the range of characters if
-		the layout makes a break necessary within the range. That means that
-		the text may go through the border.</p>
-	 */
-	[optional, property] boolean CharNoLineBreak;
+        <p> A line break is applied behind the range of characters if
+        the layout makes a break necessary within the range. That means that
+        the text may go through the border.</p>
+     */
+    [optional, property] boolean CharNoLineBreak;
 
-	//-------------------------------------------------------------------------
+    //-------------------------------------------------------------------------
 
-	/** specifies if the characters are formatted and
-		displayed with a shadow effect.
-	 */
-	[optional, property] boolean CharShadowed;
+    /** This optional property specifies if the characters are formatted and
+        displayed with a shadow effect.
+     */
+    [optional, property] boolean CharShadowed;
 
-	//-------------------------------------------------------------------------
+    //-------------------------------------------------------------------------
 
-	/** optional property which specifies the fundamental technology of the font.
+    /** This optional property specifies the fundamental technology of the font.
+        @see com::sun::star::awt::FontType
+     */
+    [optional, property] short CharFontType;
 
-		@see com::sun::star::awt::FontType
-	 */
-	[optional, property] short CharFontType;
+    //-------------------------------------------------------------------------
 
-	//-------------------------------------------------------------------------
+    /** This optional property specifies the name of the style of the font.
+     */
+    [optional, property] string CharStyleName;
 
-	/** specifies the name of the style of the font.
-	 */
-	[optional, property] string CharStyleName;
+    //-------------------------------------------------------------------------
+
+    /** This optional property specifies if the characters are formatted and
+        displayed with a contour effect.
+     */
+    [optional, property] boolean CharContoured;
 
-	//-------------------------------------------------------------------------
-	/** specifies if the characters are formatted and
-		displayed with a contour effect.
-	 */
-	[optional, property] boolean CharContoured;
-	//-------------------------------------------------------------------------
-	/** determins whether text is formatted in two lines.
-	 <p>It is linked to the properties CharCombinePrefix and CharCombineSuffix.</p>
-	 */
-	[optional, property] boolean CharCombineIsOn;
-	//-------------------------------------------------------------------------
-	/** contains the prefix (usually parenthesis) before text that is formatted in two lines.
-	 <p>It is linked to the properties CharCombineIsOn and CharCombineSuffix.</p>
-	 */
-	[optional, property] string CharCombinePrefix;
-	//-------------------------------------------------------------------------
-	/** contains the suffix (usually parenthesis) after text that is formatted in two lines.
-	 <p>It is linked to the properties CharCombineIsOn and CharCombinePrefix.</p>
-	 */
-	[optional, property] string CharCombineSuffix;
-	//-------------------------------------------------------------------------
-	/** contains the font emphasis value as <type scope="com::sun::star::text">FontEmphasis</type>.
-	 */
-	[optional, property] short CharEmphasis;
-   
     //-------------------------------------------------------------------------
-    /** contains the relief value as <type scope="com::sun::star::text">FontRelief</type>.
-	 */
+
+    /** This optional property determins whether text is formatted in two lines.
+
+        <p>It is linked to the properties CharCombinePrefix and CharCombineSuffix.</p>
+     */
+    [optional, property] boolean CharCombineIsOn;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the prefix (usually parenthesis) before
+        text that is formatted in two lines.
+
+        <p>It is linked to the properties CharCombineIsOn and CharCombineSuffix.</p>
+     */
+    [optional, property] string CharCombinePrefix;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the suffix (usually parenthesis) after
+        text that is formatted in two lines.
+
+        <p>It is linked to the properties CharCombineIsOn and CharCombinePrefix.</p>
+     */
+    [optional, property] string CharCombineSuffix;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the font emphasis value.
+        @see com::sun::star::text::FontEmphasis
+     */
+    [optional, property] short CharEmphasis;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the relief style of the characters.
+        @see com::sun::star::text::FontRelief
+     */
     [optional, property] short CharRelief;
+
     //-------------------------------------------------------------------------
-	/** contains the text that is set as ruby.
-	 */
-	[optional, property] string RubyText;
-	//-------------------------------------------------------------------------
-	/** determins the adjustment of the ruby text as <type scope="com::sun::star::text">RubyAdjust</type>.
-	 */
-	[optional, property] short RubyAdjust;
-	//-------------------------------------------------------------------------
-	/** contains the name of the character style that is applied to RubyText.
-	 */
-	[optional, property] string RubyCharStyleName;
+
+    /** This optional property contains the text that is set as ruby.
+     */
+    [optional, property] string RubyText;
+
     //-------------------------------------------------------------------------
-    /** determins whether the ruby text is printed above/left or below/right of the text.
-	 */
+
+    /** This optional property determins the adjustment of the ruby .
+        @see com::sun::star::text::RubyAdjust
+     */
+    [optional, property] short RubyAdjust;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the name of the character style that is
+        applied to RubyText.
+     */
+    [optional, property] string RubyCharStyleName;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property determins whether the ruby text is printed
+        above/left or below/right of the text.
+     */
     [optional, property] boolean RubyIsAbove;
 
-	//-------------------------------------------------------------------------
-	/** determins the rotation of a character in tenths of a degree.
-	 	<p>Depending on the implementation only certain values may be allowed.
-		</p>
-	 */
-	[optional, property] short CharRotation;
-	//-------------------------------------------------------------------------
-	/** determins whether the text formatting tries to fit rotated text into the
-	 	surrounded line height.
-	 */
-	[optional, property] boolean CharRotationIsFitToLine;
-	//-------------------------------------------------------------------------
-    /** determins the percentage value for scaling the width of characters.
+    //-------------------------------------------------------------------------
+
+    /** This optional property determins the rotation of a character in in tenths of a degree.
+
+       <p>Depending on the implementation only certain values may be allowed.</p>
+     */
+    [optional, property] short CharRotation;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property determins whether the text formatting tries to
+        fit rotated text into the surrounded line height.
+     */
+    [optional, property] boolean CharRotationIsFitToLine;
+
+    //-------------------------------------------------------------------------
+
+    /** This optional property determins the percentage value for scaling the
+        width of characters.
 
         <p>The value refers to the original width which is denoted by 100,
         and it has to be greater than 0.</p>
-        
-	 */
-	[optional, property] short CharScaleWidth;
+   */
+    [optional, property] short CharScaleWidth;
 
     //-------------------------------------------------------------------------
-    /** contains the URL of a hyperlink (if set).
+
+    /** This optional property contains the URL of a hyperlink.
      */
     [optional, property] string HyperLinkURL;
 
     //-------------------------------------------------------------------------
-    /** contains the name of the target for a hyperlink (if set).
+
+    /** This optional property contains the name of the target for a hyperlink.
      */
     [optional, property] string HyperLinkTarget;
 
     //-------------------------------------------------------------------------
-    /** contains the name of the hyperlink (if set).
+
+    /** This optional property contains the name of the hyperlink.
      */
     [optional, property] string HyperLinkName;
 
-    //--------------------------------------------------------------------
-    /** contains the character style name for visited hyperlinks.
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the character style name for visited
+        hyperlinks.
      */
     [optional, property] string VisitedCharStyleName;
 
-    //--------------------------------------------------------------------
-    /** contains the character style name for unvisited hyperlinks.
+    //-------------------------------------------------------------------------
+
+    /** This optional property contains the character style name for unvisited
+        hyperlinks.
      */
     [optional, property] string UnvisitedCharStyleName;
 
     //-------------------------------------------------------------------------
-    /** This is the additional height used for subscript or superscript
+
+    /** This is the relative height used for subscript or superscript
         characters in units of percent.
-        For subscript characters the value is negative and for
-        superscript characters positive.
+
+        <p>The value 100 denotes the original height of the characters.</p>
+
+        @see CharEscapement
      */
     [optional, property] byte CharEscapementHeight;
 
     //-------------------------------------------------------------------------
-    /** determines if the word can be hyphenated at the character.
+
+    /** This optional property determines if the word can be hyphenated at the
+        character.
      */
     [optional, property] boolean CharNoHyphenation;
 
     //-------------------------------------------------------------------------
-    /** gives the color of the underline for that character.
+
+    /** This property contains the color of the underline for the characters.
+        @see CharUnderlineHasColor
      */
     [property] com::sun::star::util::Color CharUnderlineColor;
 
     //-------------------------------------------------------------------------
-    /** specifies if the CharUnderlineColor is used for an underline.
+
+    /** This property specifies if the property CharUnderlineColor is used for
+        an underline.
+        @see CharUnderlineColor
      */
     [property] boolean CharUnderlineHasColor;
 
     //-------------------------------------------------------------------------
-    /** specifies the names of the all styles applied to the font.
-        <p> It is not guaranteed that the order in the sequence reflects 
+
+    /** This optional property specifies the names of the all styles applied to
+        the font.
+
+        <p> It is not guaranteed that the order in the sequence reflects
         the order of the evaluation of the character style attributes.</p>
 
         @since OOo 1.1.2
      */
     [optional, property] sequence<string> CharStyleNames;
-    
+
     //-------------------------------------------------------------------------
+
     /** If this optional property is <TRUE/>, then the characters are invisible.
 
         @since OOo 2.0.0
      */
     [optional, property] boolean CharHidden;
-    
+
     //-------------------------------------------------------------------------
-    /** this property stores xml attributes.
-        They will be saved to and restored from automatic styles inside xml files.
+
+    /** This property stores XML attributes. They will be saved to and restored
+        from automatic styles inside XML files.
 
         @see com::sun::star::xml::AttributeContainer
      */
@@ -386,3 +454,4 @@
 }; }; }; };
 
 #endif
+
--- offapi/com/sun/star/util/MeasureUnit.idl	8 Sep 2005 08:48:17 -0000	1.5
+++ offapi/com/sun/star/util/MeasureUnit.idl	12 Jul 2007 12:44:48 -0000
@@ -94,6 +94,9 @@
 
 	/** all measures for this component are in percentage */
 	const short PERCENT = 15;
+
+	/** all measures for this component are in pixel */
+	const short PIXEL = 16;
 }; 
  
 //============================================================================= 
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/Attribute.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,69 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: Attribute.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:30:58 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_Attribute_idl__ 
+#define __com_sun_star_xml_Attribute_idl__ 
+ 
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml { 
+ 
+//============================================================================= 
+ 
+/**
+ * A struct to keep information of an element's attribute.
+ */
+struct Attribute
+{
+	/**
+	 * the attribute name
+	 */
+	string Name;
+
+	/**
+	 * the attribute namespace URL
+	 */
+	string NamespaceURL;
+	
+	/**
+	 * the attribute value
+	 */
+	string Value;
+};
+ 
+//============================================================================= 
+ 
+}; }; }; };  
+
+#endif 
--- offapi/com/sun/star/xml/makefile.mk	1 Dec 2006 17:19:40 -0000	1.13
+++ offapi/com/sun/star/xml/makefile.mk	12 Jul 2007 12:44:49 -0000
@@ -48,6 +48,7 @@
 IDLFILES=\
 	AttributeContainer.idl \
 	AttributeData.idl \
+	Attribute.idl \
 	ExportFilter.idl \
 	ImportFilter.idl \
 	NamespaceContainer.idl \
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/sax/FastToken.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,67 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: FastToken.idl,v $
+ *
+ *  $Revision: 1.1.2.1 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:32:03 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_sax_XFastToken_idl__ 
+#define __com_sun_star_xml_sax_XFastToken_idl__ 
+ 
+#ifndef __com_sun_star_uno_XInterface_idl__ 
+#include <com/sun/star/uno/XInterface.idl> 
+#endif 
+ 
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml {  module sax {  
+ 
+//============================================================================ 
+
+constants FastToken
+{ 
+	//------------------------------------------------------------------------- 
+		
+	/** specifies an unknown token.
+	 */
+	const long DONTKNOW = -1;
+
+	//------------------------------------------------------------------------- 
+
+	/** specifies the first namespace token
+	*/
+	const long NAMESPACE = 0x00010000;
+};
+
+//============================================================================= 
+ 
+}; }; }; }; };  
+ 
+#endif 
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/sax/XFastAttributeList.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,179 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFastAttributeList.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:33:12 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_sax_XFastAttributeList_idl__ 
+#define __com_sun_star_xml_sax_XFastAttributeList_idl__ 
+
+#ifndef __com_sun_star_uno_XInterface_idl__ 
+#include <com/sun/star/uno/XInterface.idl> 
+#endif 
+
+#ifndef __com_sun_star_xml_Attribute_idl__
+#include <com/sun/star/xml/Attribute.idl>
+#endif
+
+#ifndef __com_sun_star_xml_sax_SAXException_idl__
+#include <com/sun/star/xml/sax/SAXException.idl>
+#endif
+
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml {  module sax {  
+ 
+//============================================================================= 
+ 
+/** a container for the attributes of an xml element. 
+
+	<br>Attributes are seperated into known attributes and unknown attributes.
+	<p>Known attributes have a local name that is known to the <type>XFastTokenHandler</token>
+	registered at the <type>XFastParser</type> which created the sax event containing
+	this attributes. If an attribute also has a namespace, that must be registered
+	at the <type>XFastParser</type>, else this attribute is also unknown even if
+	the local name is known.
+ */
+interface XFastAttributeList: com::sun::star::uno::XInterface
+{
+	/** checks if an attribute is available.<br>
+
+		@param Token
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.<br>
+
+			If the attribute name has a namespace that was registered with the
+			<type>XFastParser</type>, Token contains the integer token of the
+			attributes local name from the <type>XFastTokenHandler</type> and
+			the integer token of the namespace combined with an arithmetic
+			<b>or</b> operation.
+
+		@returns
+			<TRUE/>, if the attribute is available
+	*/
+	boolean hasAttribute( [in] long Token );
+
+	/** retrieves the token of an attributes value.<br>
+
+		@param Token
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.<br>
+
+			If the attribute name has a namespace that was registered with the
+			<type>XFastParser</type>, Token contains the integer token of the
+			attributes local name from the <type>XFastTokenHandler</type> and
+			the integer token of the namespace combined with an arithmetic
+			<b>or</b> operation.
+
+		@returns
+			The integer token of the value from the attribute or <const>FastToken::Invalid</const>
+
+		@raises SAXEXception
+			if the attribute is not available
+
+	*/
+	long getValueToken( [in] long Token )
+		raises( SAXException );
+
+	/**retrieves the token of an attributes value.<br>
+
+		@param Token
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.<br>
+
+			If the attribute name has a namespace that was registered with the
+			<type>XFastParser</type>, Token contains the integer token of the
+			attributes local name from the <type>XFastTokenHandler</type> and
+			the integer token of the namespace combined with an arithmetic
+			<b>or</b> operation.
+
+		@param Default
+			This value will be returned if the attribute is not available
+
+		@returns
+			If the attribute is available it returns the integer token of the value
+			from the attribute or <const>FastToken::Invalid</const>.
+			If not the value of <param>Default</param> is returned.
+
+	*/
+	long getOptionalValueToken( [in] long Token, [in] long Default );
+
+	/** retrieves the value of an attributes.<br>
+
+		@param Token
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.<br>
+
+			If the attribute name has a namespace that was registered with the
+			<type>XFastParser</type>, Token contains the integer token of the
+			attributes local name from the <type>XFastTokenHandler</type> and
+			the integer token of the namespace combined with an arithmetic
+			<b>or</b> operation.
+
+		@returns
+			The string value from the attribute.
+
+		@raises SAXEXception
+			if the attribute is not available
+
+	*/
+	string getValue( [in] long Token )
+		raises( SAXException );
+
+	/** retrieves the value of an attributes.<br>
+
+		@param Token
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.<br>
+
+			If the attribute name has a namespace that was registered with the
+			<type>XFastParser</type>, Token contains the integer token of the
+			attributes local name from the <type>XFastTokenHandler</type> and
+			the integer token of the namespace combined with an arithmetic
+			<b>or</b> operation.
+
+		@returns
+			The string value from the attribute or an empty string if the
+			attribute is not available.
+	*/
+	string getOptionalValue( [in] long Token );
+
+	/** returns a sequence of attributes which names and or namespaces URLS
+		can not be translated to tokens.
+	*/
+	sequence< ::com::sun::star::xml::Attribute > getUnknownAttributes();
+};
+
+//============================================================================= 
+ 
+}; }; }; }; };  
+ 
+#endif 
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/sax/XFastContextHandler.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,169 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFastContextHandler.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:33:12 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_sax_XFastContextHandler_idl__ 
+#define __com_sun_star_xml_sax_XFastContextHandler_idl__ 
+ 
+#ifndef __com_sun_star_uno_XInterface_idl__ 
+#include <com/sun/star/uno/XInterface.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_SAXException_idl__ 
+#include <com/sun/star/xml/sax/SAXException.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_XFastAttributeList_idl__ 
+#include <com/sun/star/xml/sax/XFastAttributeList.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_XLocator_idl__ 
+#include <com/sun/star/xml/sax/XLocator.idl> 
+#endif 
+ 
+ 
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml {  module sax {  
+ 
+//============================================================================= 
+ 
+/** receives notification of sax document events from a
+	<type>XFastParser</type>.
+	
+	@see XFastDocumentHandler
+ */
+interface XFastContextHandler: com::sun::star::uno::XInterface
+{ 
+	//------------------------------------------------------------------------- 
+	 
+	/** receives notification of the beginning of an element .
+
+		@param Element
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.<br>
+
+			If the element has a namespace that was registered with the
+			<type>XFastParser</type>, <param>Element</param> contains the integer
+			token of the elements local name from the <type>XFastTokenHandler</type>
+			and the integer token of the namespace combined with an arithmetic
+			<b>or</b> operation.
+
+		@param Attribs
+			Contains a <type>XFastAttrbitueList</type> to access the attributes
+			from the element.
+
+	*/
+	void startFastElement( [in] long Element, [in] XFastAttributeList Attribs ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+
+	//------------------------------------------------------------------------- 
+
+	/** receives notification of the beginning of an unknown element .
+
+		@param Namespace
+			contains the namespace url (not the prefix!) of this element.
+		@param Name
+			contains the elements local name.
+		@param Attribs
+			Contains a <type>XFastAttrbitueList</type> to access the attributes
+			from the element.
+	 */
+	void startUnknownElement( [in] string Namespace, [in] string Name, [in] XFastAttributeList Attribs ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+
+	//------------------------------------------------------------------------- 
+
+	/** receives notification of the end of an known element.
+		@see startFastElement
+	 */
+	void endFastElement( [in] long Element ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+
+	//------------------------------------------------------------------------- 
+
+	/** receives notification of the end of an kown element.
+		@see startUnknownElement
+	 */
+	void endUnknownElement( [in] string Namespace, [in] string Name ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+ 
+	//------------------------------------------------------------------------- 
+	 
+	/** receives notification of the beginning of a known child element.
+
+		@param Element
+			contains the integer token from the <type>XFastTokenHandler</type>
+			registered at the <type>XFastParser</type>.
+
+			<br>If the element has a namespace that was registered with the
+			<type>XFastParser</type>, <param>Element</param> contains the
+			integer token of the elements local name from the
+			<type>XFastTokenHandler</type> and the integer token of the
+			namespace combined with an arithmetic <b>or</b> operation.
+
+		@param Attribs
+			Contains a <type>XFastAttrbitueList</type> to access the attributes
+			from the element.
+	 */
+	XFastContextHandler createFastChildContext( [in] long Element, [in] XFastAttributeList Attribs ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+
+	//------------------------------------------------------------------------- 
+	 
+	/** receives notification of the beginning of a unknown child element .
+
+		@param Namespace
+			contains the namespace url (not the prefix!) of this element.
+		@param Name
+			contains the elements local name.
+		@param Attribs
+			Contains a <type>XFastAttrbitueList</type> to access the attributes
+			the element.
+	 */
+	XFastContextHandler createUnknownChildContext( [in] string Namespace, [in] string Name, [in] XFastAttributeList Attribs ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+
+	//------------------------------------------------------------------------- 
+	 
+	/** receives notification of character data.
+	 */
+	void characters( [in] string aChars ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+  }; 
+ 
+//============================================================================= 
+ 
+}; }; }; }; };  
+ 
+#endif 
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/sax/XFastDocumentHandler.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,97 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFastDocumentHandler.idl,v $
+ *
+ *  $Revision: 1.1.2.3 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:33:12 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_sax_XFastDocumentHandler_idl__ 
+#define __com_sun_star_xml_sax_XFastDocumentHandler_idl__ 
+ 
+#ifndef __com_sun_star_uno_XInterface_idl__ 
+#include <com/sun/star/uno/XInterface.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_SAXException_idl__ 
+#include <com/sun/star/xml/sax/SAXException.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_XFastAttributeList_idl__ 
+#include <com/sun/star/xml/sax/XFastAttributeList.idl> 
+#endif 
+
+#ifndef __com_sun_star_xml_sax_XFastContextHandler_idl__ 
+#include <com/sun/star/xml/sax/XFastContextHandler.idl> 
+#endif 
+
+#ifndef __com_sun_star_xml_sax_XLocator_idl__ 
+#include <com/sun/star/xml/sax/XLocator.idl> 
+#endif 
+ 
+ 
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml {  module sax {  
+ 
+//============================================================================= 
+ 
+/** receives notification of sax document events from a
+	<type>XFastParser</type>
+ */
+interface XFastDocumentHandler: XFastContextHandler
+{ 
+	//------------------------------------------------------------------------- 
+	 
+	/** called by the parser when parsing of an xml stream is started.
+	 */
+	void startDocument() 
+			raises( com::sun::star::xml::sax::SAXException ); 
+ 
+	//------------------------------------------------------------------------- 
+	 
+	/** called by the parser after the last xml element of a stream is processed.
+	 */
+	void endDocument() 
+			raises( com::sun::star::xml::sax::SAXException ); 
+
+	//------------------------------------------------------------------------- 
+	 
+	/** receives an object for locating the origin of SAX document events.
+	 */
+	void setDocumentLocator( [in] com::sun::star::xml::sax::XLocator xLocator ) 
+			raises( com::sun::star::xml::sax::SAXException ); 
+ 
+}; 
+ 
+//============================================================================= 
+ 
+}; }; }; }; };  
+ 
+#endif 
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/sax/XFastParser.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,204 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFastParser.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:33:12 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_sax_XFastParser_idl__ 
+#define __com_sun_star_xml_sax_XFastParser_idl__ 
+ 
+#ifndef __com_sun_star_uno_XInterface_idl__ 
+#include <com/sun/star/uno/XInterface.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_InputSource_idl__ 
+#include <com/sun/star/xml/sax/InputSource.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_SAXException_idl__ 
+#include <com/sun/star/xml/sax/SAXException.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_io_IOException_idl__ 
+#include <com/sun/star/io/IOException.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_XFastDocumentHandler_idl__ 
+#include <com/sun/star/xml/sax/XFastDocumentHandler.idl> 
+#endif 
+
+#ifndef __com_sun_star_xml_sax_XFastTokenHandler_idl__ 
+#include <com/sun/star/xml/sax/XFastTokenHandler.idl> 
+#endif 
+
+#ifndef __com_sun_star_xml_sax_XErrorHandler_idl__ 
+#include <com/sun/star/xml/sax/XErrorHandler.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_XDTDHandler_idl__ 
+#include <com/sun/star/xml/sax/XDTDHandler.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_xml_sax_XEntityResolver_idl__ 
+#include <com/sun/star/xml/sax/XEntityResolver.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_lang_Locale_idl__ 
+#include <com/sun/star/lang/Locale.idl> 
+#endif 
+ 
+#ifndef __com_sun_star_lang_IllegalArgumentException_idl__ 
+#include <com/sun/star/lang/IllegalArgumentException.idl> 
+#endif 
+ 
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml {  module sax {  
+ 
+//============================================================================= 
+ 
+/** specifies a SAX parser that uses integer values for known xml names
+	(elements, attributes and attribute values). The parser also handles
+	namespaces and allows to have individual contexts for each xml element.
+
+	<p>Before parsing is possible you have to set your
+	<type>XFastDocumentHandler</type> using <member>setFastDocumentHandler</member>.
+	
+	<p>Parsing starts with calling <member>parseStream</member>. If the parser
+	finds a valid xml file with the given <type>InputSource</type>, it calls
+	<member>XFastDocumentHandler::startDocument</member> first.
+
+	<p>This parser generates either 'fast' events that use integer token
+	values for namespaces, elements and attributes or 'unknown' events for
+	elements that are unknown.
+
+	<p>A namespace is unknown if the namespace URL was not registered with
+	<member>registerNamespace</member>.
+
+	<p>An element is unknown if no <type>XFastTokenHandler</type> is set
+	or if the <type>XFastTokenHandler</type> does not return a valid
+	identifier for the elements local name. An element is also unknown if
+	the elements local name is known but it uses a namespace that is unknown.
+
+	<p>Setting a <type>XFastTokenHandler</type> with <member>setTokenHandler</member>
+	is optional, but without a <type>XFastTokenHandler</type> you will only
+	get unknown sax events. This can be usefull if you are only interested
+	in the namespace handling and/or the context feature.
+
+	<p>For each element the parser sends a create child element event to the
+	elements parent context by calling 
+	<member>XFastContextHandler::createFastChildContext</member> for known
+	elements or <member>XFastContextHandler::createUnknownChildContext</member>
+	for unknown elements.
+	<br>The parent context for the root element is the <type>XFastDocumentHandler</type>
+	itself.
+	
+	<p>If the parent context returns an empty reference, no further events for
+	the element and all of its childs are created.
+
+	<p>If a valid context is returned this context gets a start event by a call to
+	<member>XFastContextHandler::startFastElement</member> for known elements or
+	<member>XFastContextHandler::startUnknownElement</member> for unknown elements.
+
+	<p>After processing all its child elements the context gets an end event by a call to
+	<member>XFastContextHandler::endFastElement</member> for known elements or
+	<member>XFastContextHandler::endUnknownElement</member> for unknown elements.
+
+	<p>It is valid to return one instance of <type>XFastContextHandler</type> more
+	than once. It is even possible to only use the <type>XFastDocumentHandler</type>
+	by always returning a reference to itself for each create child context event.
+
+	<p>After the last element is processed the parser generates an end document
+	event at the <type>XFastDocumentHandler</type> by calling
+	<member>XFastDocumentHandler::endDocument</member>.
+
+	@see http://wiki.services.openoffice.org/wiki/FastParser
+*/
+interface XFastParser: com::sun::star::uno::XInterface
+{ 
+	//------------------------------------------------------------------------- 
+	/** parses an XML document from a stream. 
+		
+		<p>Set the desired handlers before calling this method.</p>
+	 */
+	void parseStream( [in] InputSource aInputSource ) 
+			raises( SAXException, com::sun::star::io::IOException ); 
+ 
+	//------------------------------------------------------------------------- 
+	
+	/** Application must register a document event handler to get
+		sax events for the parsed stream.
+	 */
+	void setFastDocumentHandler( [in] XFastDocumentHandler Handler ); 
+
+	//------------------------------------------------------------------------- 
+	
+	/** must be registered to translate known xml names to integer tokens.
+	 */
+	void setTokenHandler( [in] XFastTokenHandler Handler ); 
+
+	//------------------------------------------------------------------------- 
+
+	/** registers a known namespace url with the given integer token.<br>
+		@param NamespaceToken
+			an integer token that must be greater than FastToken::NAMESPACE.
+	 */
+	void registerNamespace( [in] string NamespaceURL, [in] long NamespaceToken )
+		raises( com::sun::star::lang::IllegalArgumentException ); 
+
+	//------------------------------------------------------------------------- 
+	/** allows an application to register an error event handler. 
+		
+		<p>Note that the error handler can throw an exception when an error or 
+		warning occurs.  Note that an exception is thrown by the parser when 
+		an unrecoverable (fatal) error occurs.</p>
+	 */
+	void setErrorHandler( [in] XErrorHandler Handler ); 
+ 
+	//------------------------------------------------------------------------- 
+	/** allows an application to register a DTD-Handler.
+	 */
+	void setEntityResolver( [in] XEntityResolver Resolver ); 
+ 
+	//------------------------------------------------------------------------- 
+	/** sets a locale specified for localization of warnings and error messages.
+		
+		<p>Set the language of the error messages. Useful when the parsing 
+		errors will be presented to the user.</p>
+	 */
+	void setLocale( [in] com::sun::star::lang::Locale locale ); 
+}; 
+ 
+//============================================================================= 
+ 
+}; }; }; }; };  
+ 
+#endif 
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ offapi/com/sun/star/xml/sax/XFastTokenHandler.idl	12 Jul 2007 12:44:49 -0000
@@ -0,0 +1,94 @@
+/*************************************************************************
+ *
+ *  OpenOffice.org - a multi-platform office productivity suite
+ *
+ *  $RCSfile: XFastTokenHandler.idl,v $
+ *
+ *  $Revision: 1.1.2.2 $
+ *
+ *  last change: $Author: cl $ $Date: 2007/03/01 17:33:12 $
+ *
+ *  The Contents of this file are made available subject to
+ *  the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ *    GNU Lesser General Public License Version 2.1
+ *    =============================================
+ *    Copyright 2005 by Sun Microsystems, Inc.
+ *    901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ *    This library is free software; you can redistribute it and/or
+ *    modify it under the terms of the GNU Lesser General Public
+ *    License version 2.1, as published by the Free Software Foundation.
+ *
+ *    This library is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ *    Lesser General Public License for more details.
+ *
+ *    You should have received a copy of the GNU Lesser General Public
+ *    License along with this library; if not, write to the Free Software
+ *    Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ *    MA  02111-1307  USA
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_xml_sax_XFastTokenHandler_idl__ 
+#define __com_sun_star_xml_sax_XFastTokenHandler_idl__ 
+ 
+#ifndef __com_sun_star_uno_XInterface_idl__ 
+#include <com/sun/star/uno/XInterface.idl> 
+#endif 
+ 
+//============================================================================= 
+ 
+module com {  module sun {  module star {  module xml {  module sax {  
+ 
+//============================================================================ 
+ 
+/** interface to translate xml strings to integer tokens.
+
+	<p>An instance of this interface can be registered at a <type>XFastParser</type>.
+	It should be able to translate all xml names (element local names,
+	attribute local names and constant attribute values) to integer tokens.
+
+	A token value must be greater or equal to zero and less than 
+	<const>FastToken::NAMESPACE</const>. If a string identifier is not known
+	to this instance, <const>FastToken::DONTKNOW</const> is returned.
+ */
+interface XFastTokenHandler: com::sun::star::uno::XInterface
+{ 
+	//------------------------------------------------------------------------- 
+
+	/**	returns a integer token for the given string identifier.
+
+		@returns
+			a unique integer token for the given String or <const>FastToken::DONTKNOW</const
+			if the identifier is not known to this instance.
+	*/
+	long getToken( [in] string Identifier );
+
+	//------------------------------------------------------------------------- 
+
+	/** returns a string identifier for the given integer token.
+	*/
+	string getIdentifier( [in] long Token );
+
+	//------------------------------------------------------------------------- 
+
+	/** returns a integer token for the given string
+
+		@param Identifier
+			the string given as a byte sequence encoded in UTF8
+
+		@returns
+			a unique integer token for the given String or <const>FastToken::DONTKNOW</const>
+			if the identifier is not known to this instance.
+	*/
+	long getTokenFromUTF8( [in] sequence< byte > Identifier );
+}; 
+
+//============================================================================ 
+
+}; }; }; }; };  
+ 
+#endif 
--- offapi/com/sun/star/xml/sax/makefile.mk	1 Dec 2006 17:21:41 -0000	1.6
+++ offapi/com/sun/star/xml/sax/makefile.mk	12 Jul 2007 12:44:49 -0000
@@ -58,6 +58,12 @@
 	XExtendedDocumentHandler.idl\
 	XLocator.idl\
 	XParser.idl\
+	XFastParser.idl\
+	XFastDocumentHandler.idl\
+	XFastContextHandler.idl\
+	XFastTokenHandler.idl\
+	XFastAttributeList.idl\
+	FastToken.idl
 
 # ------------------------------------------------------------------
 
