<?php
/*******************************************************************************
 * Copyright (c) 2007 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:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/

// XML constants for the element tag names
define("ELEMENT_COMPANY", "company");
define("ELEMENT_CONTACT", "contact");
define("ELEMENT_EMAIL", "email");
define("ELEMENT_INFO", "info");
define("ELEMENT_IPZILLA", "ipzilla");
define("ELEMENT_LEGAL", "legal");
define("ELEMENT_LICENSE", "license");
define("ELEMENT_LOCATION", "location");
define("ELEMENT_NAME", "name");
define("ELEMENT_NOTE", "note");
define("ELEMENT_NOTES", "notes");
define("ELEMENT_ORIGIN", "origin");
define("ELEMENT_PACKAGE", "package");
define("ELEMENT_PROJECT", "project");
define("ELEMENT_REFERENCE", "reference");
define("ELEMENT_REPOSITORY", "repository");
define("ELEMENT_TAG", "tag");

// XML constants for the element attribute key names
define("ATTRIBUTE_BUG_ID", "bug_id");
define("ATTRIBUTE_ID", "id");
define("ATTRIBUTE_STATUS", "status");
define("ATTRIBUTE_VERSION", "version");

// XML constants for the element attribute values
define("VALUE_STATUS_DONE", "done");

define("STATUS_DONE", 1);
?>