// LibrarySystem.cd // Created by Cristina Videira Lopes on 12/20/94. // // This file contains the class dictionary for a simple Library System. // LibrarySystem = List(Book) List(User) [ List(Operation)] . Book = "book:" Title Author Publisher Year Subject ISBN List(Copy). Title = DemString . Author = "by" DemString . Publisher =

DemString . Year = DemNumber . Subject = DemString . ISBN = "ISBN" DemNumber . Copy = "copy" DemNumber [ User ] . User = "user:" DemNumber DemString DemString Address Phones Status. Address = "address:" DemNumber DemString ["#" DemNumber] DemString DemString DemNumber . Phones = "phones:" [ HomePhone ] [ WorkPhone ] [ Fax ] . Phone : HomePhone | WorkPhone | Fax *common* DemNumber "-" DemNumber . HomePhone = "home" . WorkPhone = "work" . Fax = "fax" . Status = "status:" DemNumber List(CheckedOut). CheckedOut = Book Copy . Operation : Exit | ShowBooks | SearchBook | ShowUsers | SearchUser | CheckBook | Invalid *common* DemNumber. CheckBook : CheckOut | CheckIn *common*. Exit = "Exit" . ShowBooks = "Show books" . SearchBook = "Search book" . ShowUsers = "Show users" . SearchUser = "Search user" . CheckOut = "Check out" . CheckIn = "Check in" . Invalid = . // Generic List(S) ~ "(" { S } ")" .