-
Notifications
You must be signed in to change notification settings - Fork 5
Labeled Property Graph Model
phyloDB rely on a graph data model which is represented in next Figure. This model is built from a subset of the concepts and properties defined in the TypOn ontology [1, 2], allowing the representation of the main entities in phylogenetic analyses as well as their relationships. Other entities such as users and projects are introduced to support user and project management, including authorization and data versioning.
- Properties:
- id (Unique, Mandatory, String) - Taxonomic unit identifier.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS (To: Locus) - Expresses which loci compose this taxonomic unit.
- CONTAINS_DETAILS (To: TaxonDetails) - Expresses which are the properties, by version, of this taxonomic unit.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then its the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- Properties:
- description (String) - Taxonomic unit description.
- Properties:
- id (Unique, Mandatory, String) - Locus identifier.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS (To: Allele) - Expresses which alleles compose this taxonomic unit.
- CONTAINS_DETAILS (To: LocusDetails) - Expresses which are the properties, by version, of this locus.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then its the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- Properties:
- description (String) - Locus description.
- Properties:
- id (Unique, Mandatory, String) - Allele identifier.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS_DETAILS (To: AlleleDetails) - Expresses which are the properties, by version, of this allele.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then its the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- CONTAINS_DETAILS (To: AlleleDetails) - Expresses which are the properties, by version, of this allele.
- Properties:
- sequence (String) - Allele sequence.
- Properties:
- id (Unique, Mandatory, String) - Schema identifier.
- type (Unique, Mandatory, String) - Schema type.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS_DETAILS (To: SchemaDetails) - Expresses which are the properties, by version, of this schema.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then it's the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- CONTAINS_DETAILS (To: SchemaDetails) - Expresses which are the properties, by version, of this schema.
- Restrictions:
- A schema must contain only loci of the same taxonomic unit.
- Type must be 'mlst', 'mlva' or 'snp'.
- Properties:
- description (String) - Schema description.
- Relations:
- HAS (To: Locus) - Expresses which loci compose this schema.
- Properties:
- part (Mandatory, Integer) - Expresses the order of the locus in the schema.
- version (Mandatory, Integer) - Expresses the version of the loci that composes this schema.
- Properties:
- HAS (To: Locus) - Expresses which loci compose this schema.
- Properties:
- id (Unique, Mandatory, String) - Dataset identifier.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS_DETAILS (To: DatasetDetails) - Expresses which are the properties, by version, of this dataset.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then it's the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- CONTAINS (To: Profile) - Expresses which allelic profiles exist in this dataset.
- CONTAINS (To: Isolate) - Expresses which isolates exist in this dataset.
- CONTAINS_DETAILS (To: DatasetDetails) - Expresses which are the properties, by version, of this dataset.
- Restrictions:
- A dataset must follow one schema.
- Properties:
- name (String) - Dataset name.
- Relations:
- HAS (To: Schema) - Expresses which is the schema that this dataset follows.
- Properties:
- version (Mandatory, Integer) - Expresses the version of the schema that composes this dataset.
- Properties:
- HAS (To: Schema) - Expresses which is the schema that this dataset follows.
- Properties:
- id (Unique, Mandatory, String) - Allelic profile identifier.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS_DETAILS (To: ProfileDetails) - Expresses which are the properties, by version, of this profile.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then it's the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- HAS (To: Coordinate) - Expresses which coordinate this profile has for a given visualization graph.
- Properties:
- inferenceId(Mandatory, String) - Inference identifier
- id(Mandatory, String) - Visualization identifier
- algorithm (Mandatory, String) - Algorithms used name.
- component(Mandatory, Integer) - Visualization component group.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Properties:
- DISTANCES (To: Profile) - Expresses the distance, inferred by an analysis, to another profile within a graph.
- Properties:
- id(Mandatory, String) - Inference identifier
- algorithm (Mandatory, String) - Algorithms used name.
- weight (Mandatory, Integer) - Weight value.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- fromVersion (Mandatory, Integer) - Version of from profile.
- toVersion (Mandatory, Integer) - Version of to profile.
- Properties:
- CONTAINS_DETAILS (To: ProfileDetails) - Expresses which are the properties, by version, of this profile.
- Restrictions:
- A profile can only have relationships with the alleles that belongs to the loci which composes the dataset that this profile belongs.
- A profile can only have relationships with the alleles that are public or belong to the same project.
- Properties:
- aka (String) - Allelic profile name.
- Relations:
- HAS (To: Allele) - Expresses which alleles define this profile.
- Properties:
- version (Mandatory, Integer) - Expresses the version of the allele that composes this profile.
- part (Mandatory, Integer) - Part of the schema that this allele defines.
- total (Mandatory, Integer) - Total of alleles needed to compose the schema for a profile.
- Properties:
- HAS (To: Allele) - Expresses which alleles define this profile.
- Properties:
- id (Unique, Mandatory, String) - Isolate identifier.
- deprecated (Mandatory, Boolean) - Deprecated flag.
- Relations:
- CONTAINS_DETAILS (To: IsolateDetails) - Expresses which are the properties, by version, of this isolate.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then it's the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- CONTAINS_DETAILS (To: IsolateDetails) - Expresses which are the properties, by version, of this isolate.
- Restrictions:
- An isolate can only have one profile.
- Properties:
- description (String) - Isolate description.
- Relations:
- HAS (To: Ancillary) - Expresses which ancillary details this isolate has.
- HAS (To: Profile) - Expresses which allelic profiles this isolate has.
- Properties:
- version (Mandatory, Integer) - Expresses the version of the profile that relates to this isolate.
- Properties:
- Properties:
- key (Mandatory, String) - Ancillary detail key.
- value (Mandatory, String) - Ancillary detail value.
- Restrictions:
- The key and value attribute must be unique as a set.
- Properties:
- x (Mandatory, String) - X axis value.
- y (Mandatory, String) - Y axis value.
- Properties:
- id (Unique, Mandatory, String) - Project identifier.
- Relations:
- CONTAINS_DETAILS (To: ProjectDetails) - Expresses which are the properties, by version, of this project.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then it's the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- CONTAINS (To: Allele) - Expresses which alleles this project has.
- CONTAINS (To: Dataset) - Expresses which datasets this project has.
- CONTAINS_DETAILS (To: ProjectDetails) - Expresses which are the properties, by version, of this project.
- Properties:
- description (String) - Project description.
- type (Mandatory, String) - Project type.
- name (Mandatory, String) - Project name.
- Relations:
- HAS (To: User) - Expresses which users have access to this project.
- Restrictions:
- Type must be 'public' or 'private'.
- Properties:
- id (Unique, Mandatory, UUID) - User identifier.
- Provider (Mandatory, String) - User identity provider.
- Relations:
- CONTAINS_DETAILS (To: UserDetails) - Expresses which are the properties, by version, of this user.
- Properties:
- from (Mandatory, Date) - Expresses the date that this detail was created.
- to (Date) - Expresses the date until this detail was the current version. If doesn't exist then it's the current detail.
- version (Mandatory, Integer) - Number of the version of this detail.
- Properties:
- CONTAINS_DETAILS (To: UserDetails) - Expresses which are the properties, by version, of this user.
- Properties:
- role (String) - User role.
- Restrictions:
- role must be either 'user' or 'admin'.
[1] J. Almeida, J. Tiple, M. Ramirez, J. Melo-Cristino, C. Vaz, A. P. Francisco, J. A. Carriço, An Ontology and a REST API for Sequence Based Microbial Typing Data, in: A. T. Freitas, A. Navarro (Eds.), Bioinformatics for Personalized Medicine, Springer Berlin Heidelberg, Berlin, Heidelberg, 2012, pp. 21– 28. [2] C. Vaz, A. P. Francisco, M. Silva, K. A. Jolley, J. E. Bray, H. Pouseele, J. Rothganger, M. Ramirez, J. A. Carriço, Typon: the microbial typing ontology, Journal of Biomedical Semantics 5 (1) (2014) 43. doi:10.1186/2041-1480-5-43.