Description
Boolean fields are meant to represent a binary value, but the absence of the field can add a third state to consider, making the field actually ternary (true, false, absent).
Alternately we could represent this binary value by the presence or absence of a specific tag in tags
.
Of course tags
is largely meant to let people add free form tags to their event stream, without needing them to be documented formally. But that doesn't prevent us from documenting some commonly tags, just like we're documenting field names & types.
This idea came up in elastic/beats#7991, discussing whether we should have a boolean field log.truncated
or a tag truncated
.
If we think using tags as "true" binary booleans should be the preferred approach:
- we could document this convention in the "ECS Conventions" of the readme
- and add a list of "official" tags we suggest people consider using.
At the time of writing this issue, there are no boolean fields in ECS.