Martel.Re("bp|aa") + blank_space + Martel.Opt(residue_type + blank_space) + data_file_division + blank_space + date + Martel.AnyEol()) # definition line # DEFINITION Genomic sequence for Arabidopsis thaliana BAC T25K16 from # chromosome I, complete sequence. definition_block = Std.description_block( Martel.Str("DEFINITION ") + Std.description(Martel.UntilEol()) + Martel.AnyEol() + Martel.Rep(Martel.Str(" ") + Std.description(Martel.UntilEol()) + Martel.AnyEol()) ) # accession line # ACCESSION AC007323 accession = Martel.Group("accession", Martel.Re("[\w]+")) accession_block = Martel.Group("accession_block", Martel.Str("ACCESSION") + Martel.Rep1(blank_space + Martel.Rep1(accession + Martel.Opt(Martel.Str(" ")) +
Martel.Group("date_updated", date) + \ Martel.Str(" (Rel. ") + \ Martel.Digits("release_updated") + \ Martel.Str(", Last updated, Version ") + \ Martel.Digits("version_number") + \ Martel.Str(")") + \ Martel.AnyEol() DT_block = DT_created_line + DT_updated_line ## DE - description (>=1 per entry) DE_line = Martel.Str("DE ") + \ Std.description(Martel.UntilEol("description")) + \ Martel.AnyEol() DE_block = Std.description_block(Martel.Group("description_block", Martel.Rep1(DE_line))) ## KW - keyword (>=1 per entry) KW_line = Martel.Str("KW ") + \ Martel.ToEol("keyword_data") KW_block = Martel.Rep1(KW_line) ## OS - organism species (>=1 per entry) OS_block = sprot38.OS_block ## OC - organism classification (>=1 per entry) OC_block = sprot38.OC_block ## OG - organelle (0 or 1 per entry) OG_block = sprot38.OG_block