/*******************************************************************************
 * Copyright (c) 2007, 2008 IBM Corporation and Others
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    Tatsuya ISHIHARA - initial API and implementation
 *******************************************************************************/
package org.eclipse.actf.model.dom.odf.text;

/**
 * TextConstants defines the constant values used by text namespace of ODF DOM API
 */
public final class TextConstants {
	static public final String TEXT_NAMESPACE_URI = "urn:oasis:names:tc:opendocument:xmlns:text:1.0";

	static public final String ELEMENT_A = "a";

	static public final String ELEMENT_ALPHABETICAL_INDEX = "alphabetical-index";

	static public final String ELEMENT_ALPHABETICAL_INDEX_SOURCE = "alphabetical-index-source";

	static public final String ELEMENT_BOOKMARK = "bookmark";

	static public final String ELEMENT_H = "h";

	static public final String ELEMENT_INDEX_BODY = "index-body";

	static public final String ELEMENT_INDEX_TITLE = "index-title";

	static public final String ELEMENT_LIST = "list";

	static public final String ELEMENT_LIST_ITEM = "list-item";

	static public final String ELEMENT_LIST_LEVEL_STYLE_BULLET = "list-level-style-bullet";

	static public final String ELEMENT_LIST_LEVEL_STYLE_NUMBER = "list-level-style-number";

	static public final String ELEMENT_LIST_STYLE = "list-style";

	static public final String ELEMENT_LIST_HEADER = "list-header";

	static public final String ELEMENT_P = "p";

	static public final String ELEMENT_S = "s";

	static public final String ELEMENT_SECTION = "section";

	static public final String ELEMENT_SPAN = "span";

	static public final String ELEMENT_SEQUENCE = "sequence";

	static public final String ELEMENT_TAB = "tab";

	static public final String ELEMENT_TABLE_OF_CONTENT = "table-of-content";

	static public final String ELEMENT_TABLE_OF_CONTENT_SOURCE = "table-of-content-source";

	static public final String ELEMENT_TRACKED_CHANGES = "tracked-changes";

	static public final String ELEMENT_CHANGE = "change";

	static public final String ELEMENT_CHANGE_START = "change-start";

	static public final String ELEMENT_CHANGE_END = "change-end";

	static public final String ELEMENT_PAGE_NUMBER = "page-number";

	static public final String ATTR_NAME = "name";

	static public final String ATTR_ID = "id";

	static public final String ATTR_STYLE_NAME = "style-name";

	static public final String ATTR_LINE_BREAK = "line-break";

	static public final String ATTR_OUTLINE_LEVEL = "outline-level";

	static public final String ATTR_RESTART_NUMBERING = "restart-numbering";

	static public final String ATTR_START_VALUE = "start-value";

	static public final String ATTR_IS_LIST_HEADER = "is-list-header";

	static public final String ATTR_C = "c";

	static public final String ATTR_TAB_REF = "tab-ref";

	static public final String ATTR_LEVEL = "level";

	static public final String ATTR_FORMULA = "formula";

	static public final String ATTR_DISPLAY = "display";

	static public final String ATTR_DISPLAY_VALUE_NONE = "none";
}