// models.wrm - main file defining tree class structures
//
// This file is read only when starting a new database or when you select 
// "Read Models" or "Add Update File" from the main menu.
//
// all tags must appear in tags.wrm or systags.wrm
//
// Modified for AGsDB_1.0 on 2.14.94 by le
//

// ?Genus_Species added for AGsDB 2.14.94 by le

?Genus_Species	Name UNIQUE Text
		Map ?Map
		MultiMap ?MultiMap

?Map	Type UNIQUE Genetic  // this flag can be used to define subclasses
                    Cytogenetic // Chromosome could be Map, filtered Cytogenetic
                    Physical
	Genus_Species ?Genus_Species XREF Map
        Display Non_graphic  // Prevents a graphic display 
                Title UNIQUE ?Text
                Remark Text // Will appear in top right corner  
		Flipped // Then coordinates go upwards
                Unit   Text // i.e. kb, centiMorgan, MegaParsec
		Centre UNIQUE Float UNIQUE Float  // centre, width - else 0, 10
	    	Extent UNIQUE Float UNIQUE Float  // min, max - else min, max gene/locus
                Error_scale UNIQUE Float  // To position loci on x axis, default = 10
        Inherits  From_map ?Map 	  // To loaclly edit
		  Author Text             // login name of who edited it
		  Date Text
 	Main_Marker ANY       // Appear left of scroll bar
        Contains Locus ?Locus XREF Map
		 Marker_distance ?Text
                 YAC ?YAC XREF Map
                 Fragment ?Fragment XREF Map
                 Clone ?Clone XREF Map
                 Chrom_Band ?Chrom_Band XREF Map
                 Map ?Map XREF Map #map_location

?map_location UNIQUE Position UNIQUE Float #map_error
                     Multi_Position  Float #map_error
                     Ends Left UNIQUE Float #map_error
                          Right UNIQUE Float #map_error

?map_error Error UNIQUE Float

?MultiMap	Genus_Species ?Genus_Species XREF MultiMap
		Map ?Map
		Reference ?Paper
		Display	Centre UNIQUE Float UNIQUE Float
			Extent UNIQUE Float UNIQUE Float

?Clone  Genus_Species ?Genus_Species XREF Clone
	Position  Map ?Map XREF Clone #map_location  // position on vertical maps
        Inside    Links ?Fragment XREF Link
        Contains  Locus   ?Locus XREF Clone
	Gridded	  ?Clone_Grid
	Location  ?Colleague
	Hybridization_signal ?Text
	General_remark ?Text

?YAC    Location 	Position  UNIQUE Map ?Map XREF YAC #map_location
        Contains        Locus ?Locus XREF Inside_YAC
        Inside          Inside_Fragment ?Fragment XREF YAC
        Size UNIQUE Int Int // length , range in kb
        Status UNIQUE Chimeric
                      Non_Chimeric
       
?Fragment   Position  UNIQUE Map ?Map XREF Fragment #map_location
            Contains Locus ?Locus XREF Inside_Fragment Int // offset in fragment
                     Link ?Clone XREF Links Int
                     YAC ?YAC XREF Inside_Fragment Int 
            Length UNIQUE Int // kb
       
  
?Chrom_Band   	Type    Centromere
	              	p_Telomere	// Left end of chromosome
                      	q_Telomere	// Right end of chromosome
                Drawing Dark
                      	NOR
                      	Colour #Colour
		Position  UNIQUE Map ?Map XREF Chrom_Band #map_location
		Contains ?Chrom_Band XREF Contained_in
		Contained_in UNIQUE ?Chrom_Band XREF Contains
		Locus Inside ?Locus XREF Chrom_Band

?Motif	Site UNIQUE Text // AA or DNA or some more elaborate descriptor
	Oligo
	Restriction_Enzyme	Isoschizomers ?Motif XREF Isoschizomers REPEAT
		                Offset Int   
	        		Cleavage Text  // will show the cleavage points ex: G_ACGT'C
		                Overhang  Text // was Int
                		Company  Text
                                Paper   Text
                                Remark  Text

?GDB_id Refers_to ANY

?Enzyme Locus ?Locus XREF EC_enzyme

?OMIM   Title            UNIQUE      Text
        Document                     ?LongText
        Locus         ?Locus XREF OMIM_document
        KW                           ?Keyword
        CS                           ?Keyword
        Editing_Date     UNIQUE      Text
        Old_Num          UNIQUE      Text

?Probe  General Name ?Text
		Other_name ?Text 
                Locus ?Locus XREF Probe
                DNA_type Text
                Clone ?Clone
                Pick_me_to_call Text Text
                Location Text
                Type ?Keyword
                Species ?Keyword
                Polymorphism ?Keyword
                Availability Text
                Description  Text
		Annotation  Text
                Cosmid_clones ?Clone ?Keyword
        Vector_type Text
        Excision_Data  Text
        Polymorphism_Data Text
        Originator Text
        GenBank_ref ?Text
        ATCC_ref    ?Text
        EC_ref      ?Text
        HGML_ref    ?Text
        Reference ?Source XREF Probe
        Contact   ?Contact XREF Probe
        Paper     ?Paper
	Created Text
	Modified  Text
	Approved Text

?Source Name ?Text
        Address Text
        Probe ?Probe XREF Reference

?Reference Locus ?Locus XREF Reference

// ?Locus modified for AGsDB 1.14.94 by le

?Locus	Name		UNIQUE Text
	Other_name	Text
	Type		UNIQUE Text
	Current_symbol	UNIQUE Text
	Previous_symbol	UNIQUE Text
	Genus_Species	?Genus_Species XREF Locus
	Species_origin	?Text
	Biology		Niche ?Text
			Gene_product ?Text
			Function ?LongText
			Interaction ?Locus
			Allele ?Text
			Phenotype ?LongText
	Location	Map ?Map XREF Locus #map_location
			Chromosome ?Text
			Chromosome_arm ?Text
			Cytogenetic_location ?Text
			Marker_distance Text
			Syntenic_Group	?Text			
			Linkage_Group	?Text
			Assign_mode	Text
			Linkage ?Text
			Main_Marker ?Map XREF Main_Marker
			Inside  Inside_YAC  ?YAC XREF Locus
			Inside_Fragment ?Fragment XREF Locus
			Chrom_Band ?Chrom_Band XREF Locus
	Homologs	Homolog ?Locus
                        Homolog_chromosome ?Text
                        Homolog_cytogenetic_location ?Text
	GDB		GDB_id		UNIQUE ?GDB_id XREF Refers_to
			Annotation	Text
			Polymorphism	UNIQUE Text
			Max_heterozygosity	UNIQUE Float
			Add_date	UNIQUE Text
			Modification_date	UNIQUE Text
			Approval_date	UNIQUE Text
	Links_to	Probe          ?Probe    XREF Locus
                	Sequence       ?Sequence XREF Locus
                	Clone          ?Clone    XREF Locus
	                OMIM_document  ?OMIM     XREF Locus
	       	        EC_enzyme      ?Enzyme   XREF Locus
			GRIN	       ?GRIN
			Swiss_Prot	SP_name ?Text
					SP_AC ?Text
					EC ?Text
			EMBL		EMBL_name ?Text
					EMBL_AC ?Text
			PIR		PIR_name ?Text
					PIR_AC ?Text
			Genbank		GB_name ?Text
					GB_AC ?Text			
			PDB		PDB_name ?Text
	Positive_clone	?Clone
	Remark		?Text
	Abstract	?LongText
	Marker_distance_ref ?Paper
	Reference	?Paper
	Data_source	Text

?Author Full_name Text
	Laboratory ?Laboratory XREF Staff
        Address Mail Text
                E_mail Text
                Phone Text
		Fax   Text
        Paper ?Paper
	Image ?Image XREF Author

?Journal Paper ?Paper XREF Journal

?Paper  Reference       Title UNIQUE ?Text
                        Journal UNIQUE ?Journal XREF Paper
			Book_Title ?Text
			Editor ?Text
			Chapter ?Text
			Publisher UNIQUE Text
                        Unpublished
			Contained_in ?Paper XREF Contains
                        Year UNIQUE Text
                        Volume UNIQUE Text Text
                        Page  UNIQUE  Text UNIQUE Text
			Pages UNIQUE Text
			Medline_ID  UNIQUE Int
        Author ?Author XREF Paper
        Abstract ?LongText
	Type UNIQUE Text
	Contains ?Paper XREF Contained_in
        Image ?Image XREF Paper
        Refers_to	ANY
        Keyword ?Keyword
	Remark  Text

?Image  Author ?Author XREF Image
	Paper  ?Paper  XREF Image
	Pick_me_to_call  UNIQUE Text Text   // A program name followed by a file name

?Contact  GDB_id  ?GDB_id  XREF Refers_to
          Name  Text
          Address Text
          Email   Text
          Probe  ?Probe XREF Contact

?Sequence Title UNIQUE ?Text
	  Other_name ?Text	// for repeats
	  Type UNIQUE DNA UNIQUE ?DNA UNIQUE Int	// Int is the length
		      Peptide UNIQUE ?AA
          RNA			// if this tag is set display AUGC
	  Structure  Length UNIQUE Int
		     From	Source UNIQUE ?Sequence
				Source_Exons Int UNIQUE Int // start at 1
	                        Assembled_into ?Sequence
		     Subsequence ?Sequence XREF Source UNIQUE Int UNIQUE Int
		     Assembled_from ?Sequence XREF Assembled_into UNIQUE Int UNIQUE Int
	  Library	?Library Text Text // ID  Accession_number
	  Origin  From_Library ?Library
		  From_Author ?Author
		  From_Laboratory ?Laboratory
		  Date Text
		  Genus_Species ?Genus_Species XREF Sequence
	  Visible	cDNA 
			Genomic_Canonical UNIQUE Float // from the project: order
			Matching_Genomic ?Sequence XREF Matching_cDNA
			Matching_cDNA ?Sequence XREF Matching_Genomic
			Corresponding_DNA ?Sequence XREF Corresponding_peptide
			Corresponding_peptide ?Sequence XREF Corresponding_DNA
		  	Clone ?Clone XREF Sequence 
          	        Locus ?Locus XREF Sequence
		        Related_Sequence ?Sequence XREF Related_Sequence
			Keyword ?Keyword
	  		Remark ?Text
			DB_remark ?Text
			Brief_identification ?Text
	  		Reference ?Paper XREF Sequence
			Foreign_Reference ?Text
			DB_searched ?Library Int // version
			Expression_construct ?Clone
	  Properties    Pseudogene Text
			Transposon Text
			Coding	CDS UNIQUE Int UNIQUE Int
				CDS_predicted_by ?Method Float // score of method
				Precursor
			Transcript	End_not_found
				 	Start_not_found Int // Int is frame of base 1
					mRNA	Processed_mRNA
						Unprocessed_mRNA
					tRNA Text
					rRNA Text
					snRNA Text
			Status UNIQUE	Shotgun
					Contiguous
					Finished
	  Repeats	Inverted	Int UNIQUE Int #Match
			Tandem		Int UNIQUE Int #Match
			Direct		Int UNIQUE Int #Match
          Assembly_tags Comment Int Int Text
                        Compression Int Int Text
                        Stop Int Int Text
                        Assembly_repeat Int Int Text
                        Cosmid_vector Int Int Text
                        Alu_segment Int Int Text
                        Sequencing_vector Int Int Text
                        Cloning_vector Int Int Text
                        Oligo Int Int Text
			A_Repeat Int Int Text
	  Features	TSL_site Int UNIQUE Int Text // Trans-spliced leader
			TSL Int UNIQUE Int Text
			Possible_exon Int UNIQUE Int UNIQUE Int ?Method UNIQUE Float // 3rd Int is frame
			promoter Int UNIQUE Int ?Text
			polyA_site Int UNIQUE Int Text
			polyA_signal Int UNIQUE Int Text  // AATAA
			misc_signal Int UNIQUE Int ?Text
			misc_feature Int UNIQUE Int ?Text
			repeat_region Int UNIQUE Int Text
			repeat_unit Int UNIQUE Int Text
			mutation Int UNIQUE Int ?Text
			sig_peptide Int UNIQUE Int Text
			mat_peptide Int UNIQUE Int Text
			old_sequence Int UNIQUE Int Text
			modified_base Int UNIQUE Int Text
			TATA_signal Int UNIQUE Int Text
	  Similarity	Homol ?Sequence XREF Homol ?Method Float Int UNIQUE Int Int UNIQUE Int

?Species Sequence ?Sequence XREF Species	// much more to do here

?Match	Percent_Identity UNIQUE Int
	Score ?Method UNIQUE Float
	N_gaps UNIQUE Int
	Loop UNIQUE Int UNIQUE Int	// rel start, stop
	Unit_Length UNIQUE Int

?Library	Name Text // Full name
		Contents ?Text // Description of material included

?Method	Function ?Text	// what does it do?
	Variant_of UNIQUE ?Method XREF Variant
	Variant ?Method
	Version	Text
	Parameters 	Float_Params UNIQUE Text Float REPEAT 
			Int_Params UNIQUE Text Int REPEAT
			Text_Params UNIQUE Text Text REPEAT
	Min_score UNIQUE Float	// used in plotting
	Remark ?Text
	Reference ?Paper XREF Search_Method

// ?Colleague, ?Strain and ?Clone_Grid added for AGsDB 2.14.94 by le

?Colleague      Publishes_as ?Author
                Address Mail Text
                        Phone Text
                        Fax Text
                        E_mail Text
			URL Text

?Strain  Genotype	?Text
	 Genus_Species	?Genus_Species XREF Strain
         Gene		?Locus XREF Strain
         Location	?Laboratory  XREF Strain #Lab_Location
	 Translocation  ?Text
	 Other_stock_#	?Text
	 Origin		?Text
         Remark		?Text

?Clone_Grid Genus_Species ?Genus_Species XREF Clone_Grid
	    Title   ?Text
            Layout  Columns Int
                    Lines_at        Int Int // x, y spacing
                    Space_at        Int Int // x, y spacing
                    No_stagger      // default is with alternate lines staggered
                    A1_labelling    // label spaced blocks a-h down LHS, 1-12 across top
	    Row Int UNIQUE ?Clone XREF Gridded REPEAT

// Added for GRIN data in AGsDB 2.14.94 by le

?GRIN	PI_# ?Text
	Genus_Species ?Genus_Species XREF GRIN
	Collection ?Text
	Texas_#	UNIQUE Text
	Race ?Text