Welcome to the Alloy demo. The links on the left will provide you with a variety of examples to look at. This demo's interface should provide a good idea of how Alloy's look and feel will appear. This is just the first glipmse at the full functionality of the web application to come.
Alloy is a web utility for bioinformaticians and geneticists. It can be used in a variety of ways and provides
a number of functional components:
Data populating Alloy will include pedigree, marker and genotype data generously donated by the University of Miami division of cardiology's ongoing population genetics studies. All private demographic information will be withheld from the database, and will instead be replaced by automatically generated information.
Alloy is a Sentient product.
- Pedigree Drawing: Using Flash technology to facilitate the drawing process, Alloy creates a seamless interface for entering family structures. The intuitive system makes Pedigree illustration easier than ever!
- Marker Data Management: Keeping track of your lab's marker data can be a daunting task. Alloy provides a entry mechanism for gene markers and their respective rs numbers.
- Genotype Data Management: Add patient data as it comes in from the lab! Alloy will automatically check your data to make sure that patient's marker information is comprehensive and correctly formatted using its fully integrated WBCOP interface!
Data populating Alloy will include pedigree, marker and genotype data generously donated by the University of Miami division of cardiology's ongoing population genetics studies. All private demographic information will be withheld from the database, and will instead be replaced by automatically generated information.
A copy of the Alloy sample database can be generated from rack040 by following these instructions:
- Head to the /home/teeb directory on rack040.
- Set up the sample database by executing the command
{ alloy_setup.sh }
the above file will generate all the tables and sample data necessary to run basic queries. If you happen to be someone grading this project, please kindly use the batch command on the filealloy_drop.sqlto reset the tables as I may change a few more things before the week is up. - To run and examine a set of sample queries that will be used for applications within Alloy, run the batch command
{ db2 -tvf alloy_sample.sql > alloy_sample.out }
These commands are sorted by section within the .sql file. For example, the login section is the first of the samples given, the first division of sql queries in the .sql file are written specifically for that section. - Finally, when reading the results from instruction 3., make sure to look at the corresponding page examples given in the links provided.
Project 'Duke Population Genetics' - Individuals
| Name | Age | Pedigree Name, | Genotype Data on File? | Link to Genotype Data |
|---|---|---|---|---|
| Anna Bello | 34 | Marcus-Bello Family | Yes | Received on 4/5/06 |
| Christopher Marcus | 32 | Marcus-Bello Family | Yes | Received on 5/26/06 |
| Maria Bello | 67 | Marcus-Bello Family | Yes | Received on 5/27/06 |
| Andrew Barker Sr. | 23 | Barker Family | No | N/A |
| Andrew Barker Jr. | 23 | Barker Family | Yes | Received on 4/23/06 |
Duke Population Genetics - Marcus-Bello Family

Marker Set
| Marker rs # | Affected Gene | Major Allele | Minor Allele | Den Dunnen Notation |
|---|---|---|---|---|
| rs12345 | ABC23 | C | T | dendunnen1 |
| rs12346 | ABD23 | C | A | dendunnen2 |
| rs12347 | ABE24 | G | T | dendunnen3 |
| rs12348 | ABF25 | A | C | dendunnen4 |
| ... | ... | ... | ... | ... |
Duke Population Genetics - Genotype Results
| Individual ID | Marker ID | Wild Type / Mutant | Zygosity |
|---|---|---|---|
| Anna Bello | rs12345 | Wild Type | N/A |
| Christopher Marcus | rs12345 | Wild Type | N/A |
| Maria Bello | rs12345 | Mutant | Hetero |
| ... | ... | ... | ... |
Milestone 2 |
I Additions |
As of milestone 2, Alloy's production dataset has been installed on db2. In converting between the University of Miami's format and Alloy's, the following changes were made to make information consistent: |
A Genotype Information |
1 For zygosity and mutation type values, the following constants have been implemented. Homozygosity is denoted "ho" while heterozygosity is denoted "he". A mutation resulting in an ammino acid change is denoted "am" while a mutation resulting in a nucleotide change is denoted "nu." Unknown values are denoted "un" for both. |
II Changes |
Schema Changes: |
A The "Genotypes" table has been split into two tables, "Mutations" and "Normal". This change was made for several reasons |
1 The "Normal" table provides a separate table to explicitly mark the exons a particular individual has had 'cleared', or marked as not having any mutations. |
2 The cost of a schema that uses special notation to indicate that either the results of a genotyping test have been 'cleared' or are 'unknown' is much greater than simply splitting the information into two tables explicitly for known mutations and cleared exons and assuming all other information to be unknown. The two new tables can also still be referenced against the existing "Markers" and "Genes" tables. The revised E/R diagram will be available online. |
B The "Affects" table has had the field "Amino Acid" added. |
C Tables including the field "Exon" have been changed to varchars instead of ints, since exons may include sub-sections (eg "2c") or may be given in ranges ("4-6"). |
III Production Dataset Scripts |
A set of utilities used to parse data sent directly by the University of Miami. The source code for these utilities can be found on rack040 under teeb/alloy/m2/utils. While the option of performing data conversions on rack040's Java utility was available, due to the private nature of patient data, the conversion took place entirely on my computer and had all the private demographic information removed from the .dat files. |
The same import methods used for sample code in milestone 1 was used to import the data directly into db2. For details, see Milestone 1. |
Testing the production dataset can be done by running the command 'db2 -tvf alloy_production.sql > alloy_production.out' . Notice that the information contained in the tables Users, WorkingOn, and Projects has remained relatively the same while data unrelated to site users has been updated to match the production dataset. |
IV Platform |
Alloy will use rack040's JSP service. |
Alpha version will run using AJAX powered by the ContentLoader javascript class as a very basic prototype for server-client interaction. |
Coming very very soon: Sample Queries on the Production Dataset Through the Platform |
To see the production dataset in action, run 'ant deploy' in the alloy directory. localhost—alloy will link you directly to the demo page with some built in queries for viewing. Notice the use of the ContentLoader to asynchronously interact with the server. |
Remember to undeploy! |

Ferrous is an addition to Alloy that will allow different research organizations producing useful services to share and share alike. The service will be particularly useful to groups with:
- highly specialized research goals.
- innovative software and bioinformatics solutions.
- open source development philosophies.
- limitations on resources, manpower, or time.



Milestone 2
1 For zygosity and mutation type values, the following constants have been implemented. Homozygosity is denoted "ho" while heterozygosity is denoted "he". A mutation resulting in an ammino acid change is denoted "am" while a mutation resulting in a nucleotide change is denoted "nu." Unknown values are denoted "un" for both.