Data model

We built Pandit Project with the open-source Drupal content management system. Here we share some structural information about the database and the website. No technical skill or prior knowledge is required to understand this information.

We try to reflect in a structured manner some of the knowledge in the domain of Indic texts. This data modeling process is an on-going work in which we formalize the information that scholars may have regarding objects in the domain (such as people, works, manuscripts). During this process, we make an effort to balance the desire to represent the domain as accurately as possible and keep the structure simple for practical reasons.

The primary piece of data is an entity type, and it represents a category of objects in the domain (such as Person type, Work type, and Manuscript type). The secondary piece of data is a field inside an entity type, and it represents a property that the entity type may have (a person's year of birth, a work's structure, a manuscript's condition). A field of an entity type can also represent a relationship between an entity of this type to another entity of the same type or another type (a person's site of birth, a work's discipline, a manuscript's works contained in it). In the next pages we describe the entity types and the fields in detail.

Data model diagram

We visualize the entity types and the relationships among them using a class diagram. The notation used is a simplified UML where a rectangle represent a type and an arrow represents a reference to another type. We render the diagrams using the online tool yUML. You can re-render the diagram yourself with the script given in the Relationships tab in our configuration spreadsheet. The script can also help you understand the essence of the relationship because it might be difficult to read the relationships' names in the diagram itself.

The current diagram

Class diagram

The initial diagram

Over the years, we have added new entity types and new relationships among the types. In the beginning, we only had three entity types and much fewer relationships. Here how it looked like:

Class diagram