{"action":"created","issue":{"url":"https://api.github.com/repos/tripal/tripal/issues/732","repository_url":"https://api.github.com/repos/tripal/tripal","labels_url":"https://api.github.com/repos/tripal/tripal/issues/732/labels{/name}","comments_url":"https://api.github.com/repos/tripal/tripal/issues/732/comments","events_url":"https://api.github.com/repos/tripal/tripal/issues/732/events","html_url":"https://github.com/tripal/tripal/issues/732","id":376118027,"node_id":"MDU6SXNzdWUzNzYxMTgwMjc=","number":732,"title":"Gene page improvement: child feature field","user":{"login":"bradfordcondon","id":7063154,"node_id":"MDQ6VXNlcjcwNjMxNTQ=","avatar_url":"https://avatars2.githubusercontent.com/u/7063154?v=4","gravatar_id":"","url":"https://api.github.com/users/bradfordcondon","html_url":"https://github.com/bradfordcondon","followers_url":"https://api.github.com/users/bradfordcondon/followers","following_url":"https://api.github.com/users/bradfordcondon/following{/other_user}","gists_url":"https://api.github.com/users/bradfordcondon/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfordcondon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfordcondon/subscriptions","organizations_url":"https://api.github.com/users/bradfordcondon/orgs","repos_url":"https://api.github.com/users/bradfordcondon/repos","events_url":"https://api.github.com/users/bradfordcondon/events{/privacy}","received_events_url":"https://api.github.com/users/bradfordcondon/received_events","type":"User","site_admin":false},"labels":[{"id":951704767,"node_id":"MDU6TGFiZWw5NTE3MDQ3Njc=","url":"https://api.github.com/repos/tripal/tripal/labels/Discuss%20@%20User's%20Meeting","name":"Discuss @ User's Meeting","color":"006b75","default":false},{"id":586556530,"node_id":"MDU6TGFiZWw1ODY1NTY1MzA=","url":"https://api.github.com/repos/tripal/tripal/labels/discussion","name":"discussion","color":"006b75","default":false},{"id":261706547,"node_id":"MDU6TGFiZWwyNjE3MDY1NDc=","url":"https://api.github.com/repos/tripal/tripal/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":{"login":"bradfordcondon","id":7063154,"node_id":"MDQ6VXNlcjcwNjMxNTQ=","avatar_url":"https://avatars2.githubusercontent.com/u/7063154?v=4","gravatar_id":"","url":"https://api.github.com/users/bradfordcondon","html_url":"https://github.com/bradfordcondon","followers_url":"https://api.github.com/users/bradfordcondon/followers","following_url":"https://api.github.com/users/bradfordcondon/following{/other_user}","gists_url":"https://api.github.com/users/bradfordcondon/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfordcondon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfordcondon/subscriptions","organizations_url":"https://api.github.com/users/bradfordcondon/orgs","repos_url":"https://api.github.com/users/bradfordcondon/repos","events_url":"https://api.github.com/users/bradfordcondon/events{/privacy}","received_events_url":"https://api.github.com/users/bradfordcondon/received_events","type":"User","site_admin":false},"assignees":[{"login":"bradfordcondon","id":7063154,"node_id":"MDQ6VXNlcjcwNjMxNTQ=","avatar_url":"https://avatars2.githubusercontent.com/u/7063154?v=4","gravatar_id":"","url":"https://api.github.com/users/bradfordcondon","html_url":"https://github.com/bradfordcondon","followers_url":"https://api.github.com/users/bradfordcondon/followers","following_url":"https://api.github.com/users/bradfordcondon/following{/other_user}","gists_url":"https://api.github.com/users/bradfordcondon/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfordcondon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfordcondon/subscriptions","organizations_url":"https://api.github.com/users/bradfordcondon/orgs","repos_url":"https://api.github.com/users/bradfordcondon/repos","events_url":"https://api.github.com/users/bradfordcondon/events{/privacy}","received_events_url":"https://api.github.com/users/bradfordcondon/received_events","type":"User","site_admin":false}],"milestone":null,"comments":8,"created_at":"2018-10-31T19:07:06Z","updated_at":"2018-11-15T16:52:00Z","closed_at":null,"author_association":"MEMBER","body":"## Feature Request/Discussion\r\nThis issue is a splinter from #100 .  It's a feature request as @laceysanderson and I agree that having better gene pages is a **very desirable thing**. \r\n\r\n### Description\r\n\r\nGene pages aren't great out of the box, and fields just arent designed to work with a typical gene setup.  What do I mean by that?  In short, **Genes need to access child feature information** and they dont, or they do in limited ways.\r\n\r\nLets consider three fields.  I have a vanilla gene here at \r\nhttp://167.99.232.220/gene/185\r\nI loaded FASTA sequences for scaffolds, mRNA, CDS, and proteins.  NONE of this information is available on the gene page!  Neither would annotations associated these feature types (unless we loaded them associating via the parent gene via regexp.).\r\n\r\n\r\n#### Field 1 - transcripts\r\n\r\n[Transcripts](https://github.com/tripal/tripal/blob/7.x-3.x/tripal_chado/includes/TripalFields/so__transcript/so__transcript.inc)\r\nThe transcript field on the gene page doesnt provide sequences, or any information other than location.\r\n\r\n\r\n#### Field 2 - sequence \r\n\r\n[Sequences](https://github.com/tripal/tripal/blob/7.x-3.x/tripal_chado/includes/TripalFields/data__sequence/data__sequence.inc) . Per tripal's general philosophy, the sequence field only look as the targeted feature, not related features.  Because I didnt load in the gene FASTA, theres nothing to display, even though i loaded in 4 other feature type fastas, plus the GFF. I thould be able to infer the gene sequence via the GFF, just for starters.\r\n\r\n#### Field 3 - protein sequence\r\n[Field code](https://github.com/tripal/tripal/tree/7.x-3.x/tripal_chado/includes/TripalFields/data__protein_sequence)\r\nThere are protein sequences associated with this gene, but **indirectly** via the mrna -> CDS.    The protein sequences field therefore does not find them.\r\n\r\n\r\n\r\n# Solution\r\n\r\nSome considerations...\r\n* I'd like the solution to work for all feature types, if possible.  Meaning, if im on feature X, it should find and display all features linked to it, nomatter how indirectly.  The field config might allow excluding display of certain SO terms if thast too much.\r\n* Solution should be fast.  We are iterating through each feature_relationship.  I dont want a suite of fields doing that independently and redundantly.  So, we're probably either working on one mega field that displays all child-feature info, or, developing a shared architecture so that it only gets called once per page and cached.\r\n* Sites will want access to, at a minimum, the following info from all children:\r\n  - annotations (feature_cvterm, also blast data)\r\n  - properties  (featureprops)\r\n  - sequences \r\n   -  coordinate info (featureloc)\r\n\r\nPoint two sounds to me very similar to cvtermpath for features.  Cvtermpath is a nightmare, BUT for features its much easier to prevent infinite loops, we arent dealing with stanzas, etc.\r\n\r\nPoint three makes it clear that we are talking about multilpe fields, since displaying annotations AND sequences in the same place is a bit much.\r\n"},"comment":{"url":"https://api.github.com/repos/tripal/tripal/issues/comments/439110028","html_url":"https://github.com/tripal/tripal/issues/732#issuecomment-439110028","issue_url":"https://api.github.com/repos/tripal/tripal/issues/732","id":439110028,"node_id":"MDEyOklzc3VlQ29tbWVudDQzOTExMDAyOA==","user":{"login":"laceysanderson","id":1566301,"node_id":"MDQ6VXNlcjE1NjYzMDE=","avatar_url":"https://avatars3.githubusercontent.com/u/1566301?v=4","gravatar_id":"","url":"https://api.github.com/users/laceysanderson","html_url":"https://github.com/laceysanderson","followers_url":"https://api.github.com/users/laceysanderson/followers","following_url":"https://api.github.com/users/laceysanderson/following{/other_user}","gists_url":"https://api.github.com/users/laceysanderson/gists{/gist_id}","starred_url":"https://api.github.com/users/laceysanderson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/laceysanderson/subscriptions","organizations_url":"https://api.github.com/users/laceysanderson/orgs","repos_url":"https://api.github.com/users/laceysanderson/repos","events_url":"https://api.github.com/users/laceysanderson/events{/privacy}","received_events_url":"https://api.github.com/users/laceysanderson/received_events","type":"User","site_admin":false},"created_at":"2018-11-15T16:52:00Z","updated_at":"2018-11-15T16:52:00Z","author_association":"MEMBER","body":"I'll up my priority on the relationship field. I've made lots of changes in there and don't want us to run into major conflicts 😬 "}}
{"actor":{"display_login":"laceysanderson"}}