#213 Incorrect evaluation of "at least one" existence check

Version 5.10
David Rothenberg

Currently the "at_least_one_exists" ExistenceEnumeration value does not properly support a case where no items are collected. The evaluation for returning false should be switched from "1 or more does not exist items" to "0 or more does not exist items" to account for this.


    • status: open --> closed-invalid
    • Group: --> Version 5.10
  • I think this was originally a language issue[1], and was thought to therefore be a bug in ovaldi since it implements the language. But actually, if no items are found, the collected object flag is "does not exist", and ovaldi takes a different code path where it doesn't count up the items. If check_existence="none_exist" or "any_exist", the result set to true, otherwise it is set to false. So this particular problem doesn't affect ovaldi. The language issue still needs to be corrected though.

    There is code which implements the tables in OVAL spec section, which could be updated when the language issue is fixed, but regardless, not all parts of that code are used.

    1. https://github.com/OVALProject/Language/issues/82