-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add adc-api-optional to AIRR extension attributes #747
Conversation
This is a minor definition change, the bulk of the other changes (removing adc-api-optional from the AIRR Spec files) are already in master. I will merge and close this shortly unless anyone raises a concern. |
Hi @bcorrie , I might have missed some discussion about this, but I notice that the fields are names In our "gentleman's agreement" we used names without the There are two situations, one is with queries, so ADC queries on those fields need to use those names. For VDJServer that means either 1) reload all the rearrangement data with the proper names, or 2) put in a hack in that translates those field names when constructing the query. So 2) is not too bad, if I need to then I will. The other situation is with the output. This means that the Rearrangement TSV should have column names |
Don't your remember #258 and #295 - just those issue and pull request numbers give me nightmares 8-) They were named that way to differentiate the fields as specific to the ADC API and that it was clear they were not part of the AIRR file standard. They are "convenience" fields to help us query repositories efficiently.
In looking at it, possibly. The reason for the naming was at least partially driven by the time the fields were actually in the AIRR schemas (e.g. airr_schema.yaml). Although they had the adc-api-optional AIRR attribute, it was considered that these terms were "polluting" the AIRR spec itself. Personally I didn't agree - see the issues as to why - but we eventually agreed and we moved them to the ADC API spec instead. Since they are now in the ADC API spec, we can change them back to the basic names if we want. The one benefit I see is having them named slightly differently makes it clear that they are NOT AIRR Standard fields, they are ADC API fields.
We have such a mapping built in to all of our components, so this is easy for us to do. That is how we deal with spec changes over time. We have mappings for all fields - and yes it is horribly ugly and cumbersome to maintain, but it works (https://github.com/sfu-ireceptor/config). It is a good thing the AIRR Spec changes so slowly 8-)
Actually according to the Rearrangement TSV spec, these fields are not part of the spec. They are in the ADC API only. Since there is no |
Hmm, I just checked and the iReceptor Gateway is querying repositories for v_subgroup, not adc_v_subgroup. That is because there is an error in our config for this field, but this means that the Gateway is still adhering to our "agreement" - which is why it never broke when we went to ADC API v1..2 (which has adc_v_subgroup) 8-) So I would vote for reverting back to |
@schristley made the change - if no objections I will merge... |
Great! Yes, that definitely makes my life easier. No objections, looks good. |
Closes #658