/*
/*	(C)1992 Institute for New Generation Computer Technology
/*		$BG[I[$=$NB>$O(BCOPYRIGHT$B%U%!%$%k$r;2>H$7$F2<$5$$(B
/*		(Read COPYRIGHT for detailed information.)
 */
[̾]
	ID_CODEʰ켡
[]
	q_form : term
	       | 'and(' term ',' q_form ')'
	term   : field '=[' value ']'
	field  : 'id_code'
	       | 'molec_name'
	       | 'life_name'
	       | 'keywords'
	value  : string
	       | string ',' value
	string : '"' ank_char '"'
	       | '"' ank_char '*' '"'
[ﵭ]
	id_code"GUN001"⤷"AKI876"
	molec_name"ctocmo*"(Ƭ"ctocmo")
	keywords"acid"⤷"peputid"⤷"intron"ξ
		q_form : and(and(id_code=["GNU001","AKI876"],
			         molec_name=["ctocmo*"]),
                             keywords=["acid","peputid","intron"])
[̽񼰻ؼ]
	(pir_gen(id_code))
[̽]
	result : '{' '"' ank_char '"' '}'

[̾]
	PIR_GENʥ˼ pir_gen
[]
	q_form : term
	term   : field '=[' value ']'
	field  : 'id_code'
	value  : string
	       | string ',' value
	string : '"' ank_char '"'
[ﵭ]
	q_form : id_code=["GNU001","AKI876","CCT001"]
[̽񼰻ؼ]
	(pir_gen(id_code,type_seq,molec_name,life_name,alter_name,includes,
                 entry_date,seq_date,text_date,comment,keywords,weight,length,
                 sequence))
[̽]
	result      : '{' pir_gen '}'
	pir_gen     : id_code ',' type_seq ',' molec_name ',' life_name ','
		      alter_name ',' includes ',' 
		      entry_date ',' seq_date ',' text_date ','
		      comment ',' keywords ',' weight ',' length ',' sequence
	id_code     : string
	type_seq    : atom
	molec_name  : string
	life        : string
	alter_name  : list
	includeds   : list
	entry_date  : string
	seq_date    : string
	text_date   : string
	comment     : list
	keywords    : list
	weight      : numeric
	length      : numeric
	sequence    : string

	string      : 
		    | 'nil'
		    | '"' ank_char '"'
	list        : '[' stlist ']'
	stlist      | string
		    | string ',' stlist
[]
	{"CCCH",'Protein',"Cytochrome c","Chicken and turkey",[],[],nil,
	 "13-Jul-1981","30-Jun-1989",["Met preceding 1-Gly is removed after
          translation (in the chicken at least)."],["mitochondrion","electron
          transport","respiratory chain","oxidative phosphorylation","heme"],
         11579,104,"GDIEKGKKIFVQKCSQCHTVEKGGKHKTGPNLHGLFGRKTGQAEGFSYTDANKNKGIT
         WGEDTLMEYLENPKKYIPGTKMIFAGIKKKSERVDLIAYLKDATSK"}

[̾]
	PIR_FEAʥ˼ pir_fea
[]
	q_form : term
	term   : field '=[' value ']'
	field  : 'id_code'
	value  : string
	       | string ',' value
	string : '"' ank_char '"'
[ﵭ]
	q_form : id_code=["GNU001","AKI876","CCT001"]
[̽񼰻ؼ]
	(pir_fea(id_code,feature))
[̽]
	result      : '{' pir_fea '}'
	pir_fea     : id_code ',' feature
	id_code     : string
	feature     : '[' fea_list ']'
	fea_list    : fea_term
		    | fea_term ',' fea_list
	fea_term    : '{' pos ',' id_func ',' name_func ',' ext '}'
	pos         : '[' pos_list ']'
	pos_list    : pos_term
		    | pos_term ',' pos_list
	pos_term    : '"' numeric '"'
		    | '"' numeric '-' numeric '"' 
	id_func     : '"Active-site"'
		    | '"Binding-site"'
		    | '"Cleavage-site"'
		    | '"Inhibitory-site"'
		    | '"Modified-site"'
		    | '"Disulfide-bonds"'
		    | '"Thiolester-bonds"'
		    | '"Cross-links"'
		    | '"Domain"'
		    | '"Dupulication"'
		    | '"Peptide"'
		    | '"Protein"'
		    | '"Region"'
		    | '"Seq-comment"'
	name_func   : string
	ext	    : string
	string      : 
		    | 'nil'
		    | '"' ank_char '"'
[]
	{"CCAB",[{["1"],"Modified-site","acetylated amino end",nil},
		 {["22","25"],"Binding-site","heme (covalent)",nil},
		 {["26","88"],"Binding-site","heme iron (axial ligands)",nil},
		 {["80","94"],"Modified-site","epsilon-N-trimethyllysine",nil},
	   	 {["1"],"Seq-comment","n",nil},
		 {["111"],"Seq-comment","c",nil},
		 {["1-111"],"Seq-comment","part",nil}]}
