vcf: is an individual INFO field with missing value valid
Regarding § 1.6.1.8 "INFO", the case where a record INFO field value is missing/unknown seems to be undefined, e.g.,AF=.. Is this a valid INFO field, or is it supposed to be omitted?
Intuitively, I wouldn't expect this to be allowed, given INFO fields are not required to be present.
Presence of an INFO (sub)field such as FOO=. provides information: absence of FOO suggests that FOO processing has not been done at all for that variant record, but FOO=. would be a statement that the processing has been done but the result is inconclusive/unknown. So I would expect this to be allowed.
Furthermore §6.3.3 contains an example of an info field AC=. and numerous example files under test/vcf in this repository contain …;AA=.;…. The discussion on #419 takes it for granted that this is valid in INFO.
So IMHO it is certain that individual INFO subfields with missing values are allowed in VCF, but this should be explicitly clarified in §1.6.1's description of INFO subfields.
As a general rule of thumb, if some combination of defined VCF syntax is not explicitly prohibited then IMHO you should assume that it is allowed.
Thanks for the clarification.
I found that this case was previously omitted in https://github.com/samtools/hts-specs/pull/496 due to the same confusion, so I agree it should be defined in the spec.