# /**
#  * Copyright (c) 2002-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:
#  *   IBM - Initial API and implementation
#  */

# NLS_MESSAGEFORMAT_VAR

pluginName = EMF Extended Library Edit Example
providerName = Eclipse Modeling Project

_UI_CreateChild_text = {0}
_UI_CreateChild_text2 = {1} {0}
_UI_CreateChild_text3 = {1}
_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.

_UI_PropertyDescriptor_description = The {0} of the {1}

_UI_Book_type = Book
_UI_Library_type = Library
_UI_Writer_type = Writer
_UI_Item_type = Item
_UI_Lendable_type = Lendable
_UI_CirculatingItem_type = Circulating Item
_UI_Periodical_type = Periodical
_UI_AudioVisualItem_type = Audio Visual Item
_UI_BookOnTape_type = Book On Tape
_UI_VideoCassette_type = Video Cassette
_UI_Borrower_type = Borrower
_UI_Person_type = Person
_UI_Employee_type = Employee
_UI_Addressable_type = Addressable
_UI_Unknown_type = Object

_UI_Unknown_datatype= Value

_UI_Book_title_feature = Title
_UI_Book_pages_feature = Pages
_UI_Book_category_feature = Category
_UI_Book_author_feature = Author
_UI_Library_name_feature = Name
_UI_Library_writers_feature = Writers
_UI_Library_employees_feature = Employees
_UI_Library_borrowers_feature = Borrowers
_UI_Library_stock_feature = Stock
_UI_Library_books_feature = Books
_UI_Library_branches_feature = Branches
_UI_Library_parentBranch_feature = Parent Branch
_UI_Library_people_feature = People
_UI_Writer_name_feature = Name
_UI_Writer_books_feature = Books
_UI_Item_publicationDate_feature = Publication Date
_UI_Lendable_copies_feature = Copies
_UI_Lendable_borrowers_feature = Borrowers
_UI_Periodical_title_feature = Title
_UI_Periodical_issuesPerYear_feature = Issues Per Year
_UI_AudioVisualItem_title_feature = Title
_UI_AudioVisualItem_minutesLength_feature = Minutes Length
_UI_AudioVisualItem_damaged_feature = Damaged
_UI_BookOnTape_reader_feature = Reader
_UI_BookOnTape_author_feature = Author
_UI_VideoCassette_cast_feature = Cast
_UI_Borrower_borrowed_feature = Borrowed
_UI_Person_firstName_feature = First Name
_UI_Person_lastName_feature = Last Name
_UI_Employee_manager_feature = Manager
_UI_Addressable_address_feature = Address
_UI_Unknown_feature = Unspecified

_UI_BookCategory_Mystery_literal = Mystery
_UI_BookCategory_ScienceFiction_literal = ScienceFiction
_UI_BookCategory_Biography_literal = Biography
