package Ġbi oc Ċ Ċ import Ġjava . util . ArrayList Ċ import Ġjava . util . HashMap Ċ Ċ /** Ċ Ġ* ĠRelationship Ġbetween Ġmultiple Ġ[ Bio C Annotation ] s Ġand Ġpossibly Ġother Ċ Ġ* Ġ` Bio C Relation ` s . Ċ Ġ*/ Ċ class ĠBio C Relation Ġ: ĠIterable < Bio C Node ?> Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUsed Ġto Ġrefer Ġto Ġthis Ġrelation Ġin Ġother Ġrelationships . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġi D : ĠString ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠInformation Ġof Ġrelation . ĠImplemented Ġexamples Ġinclude Ġabbre viation Ġlong ĊĠĠĠĠ Ġ* Ġforms Ġand Ġshort Ġforms Ġand Ġprotein Ġevents . ĊĠĠĠĠ Ġ*/ ĊĠĠ Ġvar Ġinf ons : ĠMutable Map < String , ĠString > ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠDescri bes Ġhow Ġthe Ġreferenced Ġannotated Ġobject Ġor Ġother Ġrelation ĊĠĠĠĠ Ġ* Ġparticip ates Ġin Ġthe Ġcurrent Ġrelationship . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġvar Ġnodes : ĠMutable List < Bio C Node > ĊĊĠĠĠ Ġconstructor () Ġ{ ĊĠĠĠĠĠĠĠ Ġi D Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġinf ons Ġ= ĠHashMap () ĊĠĠĠĠĠĠĠ Ġnodes Ġ= ĠArrayList () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( relation : ĠBio C Relation ) Ġ{ ĊĠĠĠĠĠĠĠ Ġi D Ġ= Ġrelation . i D ĊĠĠĠĠĠĠĠ Ġinf ons Ġ= ĠHashMap ( relation . inf ons ) ĊĠĠĠĠĠĠĠ Ġnodes Ġ= ĠArrayList ( relation . nodes ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġclear Inf ons () Ġ{ ĊĠĠĠĠĠĠĠ Ġinf ons . clear () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Inf on ( key : ĠString ): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinf ons [ key ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġput Inf on ( key : ĠString , Ġvalue : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinf ons [ key ] Ġ= Ġvalue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġremove Inf on ( key : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinf ons . remove ( key ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Node ( node : ĠBio C Node ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnodes . add ( node ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Node ( ref Id : ĠString , Ġrole : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġadd Node ( Bio C Node ( ref Id , Ġrole )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġs Ġ= Ġ" id : Ġ" Ġ+ Ġi D ĊĠĠĠĠĠĠĠ Ġs Ġ+= Ġ"\ n " ĊĠĠĠĠĠĠĠ Ġs Ġ+= Ġ" inf ons : Ġ$ inf ons " ĊĠĠĠĠĠĠĠ Ġs Ġ+= Ġ"\ n " ĊĠĠĠĠĠĠĠ Ġs Ġ+= Ġ" nodes : Ġ$ nodes " ĊĠĠĠĠĠĠĠ Ġs Ġ+= Ġ"\ n " ĊĠĠĠĠĠĠĠ Ġreturn Ġs ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġiterator (): ĠMutable Iterator < Bio C Node > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnodes . iterator () ĊĠĠĠ Ġ} Ċ }