###############################################################################
# Copyright (c) 2001, 2007 Oracle 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:
#     Oracle Corporation - initial API and implementation
###############################################################################
A.display-label=Link
A.description=This element allows the user to navigate the content of the document

BR.display-label=Line Break
BR.description=This element is used to enforce a line break

INPUT.BUTTON.display-label=Button
INPUT.BUTTON.description=An INPUT element with TYPE=SUBMIT represents an input option, typically a button, that instructs the user agent to submit the form

INPUT.CHECKBOX.display-label=Checkbox
INPUT.CHECKBOX.description=An INPUT element with TYPE=CHECKBOX represents a boolean choice. A set of such elements with the same name represents an n-of-many choice field

INPUT.HIDDEN.display-label=Hidden Field
INPUT.HIDDEN.description=An INPUT element with TYPE=HIDDEN represents a hidden field.The user does not interact with this field; instead, the VALUE attribute specifies the value of the field

INPUT.IMAGE.display-label=Image Button
INPUT.IMAGE.description=An INPUT element with TYPE=IMAGE specifies an image resource to display, and allows input of two form fields: the x and y coordinate of a pixel chosen from the image

INPUT.PASSWORD.display-label=Password Field
INPUT.PASSWORD.description=An INPUT element with TYPE=PASSWORD is a text field as above, except that the value is obscured as it is entered

INPUT.RADIO.display-label=Radio Button
INPUT.RADIO.description=An INPUT element with TYPE=RADIO represents a boolean choice. A set of such elements with the same name represents a 1-of-many choice field

INPUT.TEXT.display-label=Text Field 
INPUT.TEXT.description=The default vaule of the TYPE attribute is TEXT, indicating a single line text entry field

FORM.display-label=Form
FORM.description=The FORM element contains a sequence of input elements, along with document structuring elements

HR.display-label=Horizontal Rule
HR.description=The HR element is a divider between sections of text; typically a full width horizontal rule or equivalent graphic

IMG.display-label=Image
IMG.description=The IMG element refers to an image or icon via a hyperlink

SELECT.display-label=Select
SELECT.description=The SELECT element constrains the form field to an enumerated list of values

TABLE.display-label=Table
TABLE.description=HTML Tables are contained within a TABLE element. The TABLE element denotes the range of the table, and uses attribute to define properties of it

TEXTAREA.display-label=Text Area
TEXTAREA.description=The TEXTAREA element represents a multi-line text field
