airr-community / airr-standards

AIRR Community Data Standards
https://docs.airr-community.org
Creative Commons Attribution 4.0 International
35 stars 23 forks source link

Validate AIRR objects against AIRR validation 'levels' #723

Open jday1 opened 10 months ago

jday1 commented 10 months ago

MiAIRR has 3 levels of compliance.

- essential
- important
- defined

And I would argue, implied is a 4th level which is none. I.e. the AIRR object is not MiAIRR Compliant.

I want to introduce logic to check an AIRR object against each of the 4 levels of compliance which does not currently exist.

I.e. the end goal is to have a validate_object function which looks like

def validate_object(self, obj, missing=True, nonairr=True, context=None, miairr_compliance_level="essential"):

This would allow a user to validate the compliance level of their AIRR object.

The first step in this for Synteny is to allow the case where MiAIRR compliance is not met. This is done is PR https://github.com/airr-community/airr-standards/pull/724