Share via


Library.Dsl Overview

To help illustrate the generated API, the Library sample includes a real-world ___domain model, in which people can come to a library to read or to check out books. The library offers circulating books (which people can check out) and reference books (which people can read only in the library). If a person checks out a circulating book, the person must return it by a specific date. If the person does not return the book by that date, the person owes the library a fine.

In the following illustration, the library, person, and book objects represent ___domain classes in the ___domain model. The reference book ___domain class and the circulating book ___domain class are derived from the book ___domain class. Each ___domain class has one or more ___domain relationships with other ___domain classes. In this case, the library and person ___domain classes share a relationship, and the library and books ___domain classes share another relationship.

Diagram of the Library Domain Model

Library Overview

The Library ___domain model contains the following ___domain classes:

  • Library

  • Book

  • CirculationBook (derived from Book)

  • ReferenceBook (derived from Book)

  • Person

The Library ___domain model contains the following ___domain relationships:

  • LibraryHasMembers

  • LibraryHasBooks

  • LibraryHasCirculationBooks (derived from LibraryHasBooks)

  • LibraryHasReferenceBooks (derived from LibraryHasBooks)

  • PersonChecksOutBooks

See Also

Tasks

Walkthrough: Creating a Generated API

Concepts

Functionality of the Generated API

Other Resources

Domain-Specific Language Tools Glossary

Change History

Date

History

Reason

July 2008

Rewrote and refactored project.

Content bug fix.