BACKGROUND

This specification relates to a database for storing data defining molecules and relationships between molecules.

A molecule can refer to a group of bonded atoms. Examples of molecules include deoxyribonucleic acid (DNA) molecules, ribonucleic acid (RNA) molecules, xeno nucleic acid (XNA) molecules, protein molecules, peptide molecules, antibody molecules, drug molecules, antibody-drug conjugate molecules, carbohydrate molecules, and lipid molecules.

A database can electronically store data representing molecules and relationships between molecules, e.g., in one or more computer clusters or in cloud storage.

SUMMARY

This specification describes a molecular database management system implemented as computer programs on one or more computers in one or more locations.

The molecular database management system manages a molecular database that stores: (i) a set of molecule components (which can also be referred to as “molecule entities”), and (ii) a set of component links. Each molecule component includes data defining a respective molecule. Each component link references a respective pair of molecule components and includes a validation status that defines whether the pair of molecule components have a valid containment relationship.

Each component link can be associated with a respective validation criterion that defines a criterion for evaluating whether the pair of molecule components referenced by the component link have a valid containment relationship. For example, a validation criterion can define that a first molecule component has a valid containment relationship with a second molecule component if a molecule represented by the first molecule component is included in a molecule represented by the second molecule component.

Particular embodiments of the subject matter described in this specification can be implemented so as to realize one or more of the following advantages.

The molecular database described in this specification can efficiently represent complex networks of relationships between molecules in a set of molecules stored in the molecular database. In particular, the molecular database can represent connections between pairs of molecules using component links, where the type of relationship represented by a component link is defined by an adjustable validation criterion that is specific to the component link. Each component link includes a validation status that defines the validity of the relationship represented by the component link. The validation status of component links can adaptively toggle between “valid” and “invalid” states as the molecular data stored in the database dynamically changes.

The molecular database management system described in this specification can leverage the rich representational capacity of component links to maintain the consistency of data stored in the molecular database. In particular, the system tracks and updates the validation status of component links in the molecular database as the data stored in the molecular database changes over time, e.g., in response to user requests, and as molecular data is loaded into and removed from the database. In response to determining that the validation status of a component link has become invalid as a result of a modification to a molecule component referenced by the component link, the system can propagate the modification to the molecule component through the database to restore the consistency of the molecular data.

The system can maintain certain component links in an invalid state, e.g., because access control conditions implemented to maintain the integrity of the molecular data prevent the system from propagating certain modifications. The system can notify users regarding invalid component links, e.g., by way of a user interface, and prompt users to resolve issues preventing the component links from being restored to valid states. By allowing component links to assume invalid states, the system enables the molecular database to recover from errors and inconsistencies without discarding information (e.g., by deleting invalid connections) or compromising data integrity (e.g., by allowing modifications to propagate uncontrolled through the molecular database).

The details of one or more embodiments of the subject matter of this specification are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.

