Provided by: libbson-doc_2.2.1-1_all 

SYNOPSIS
#include <bson/bson-types.h>
typedef enum {
BSON_VALIDATE_NONE = 0,
BSON_VALIDATE_UTF8 = (1 << 0),
BSON_VALIDATE_DOLLAR_KEYS = (1 << 1),
BSON_VALIDATE_DOT_KEYS = (1 << 2),
BSON_VALIDATE_UTF8_ALLOW_NULL = (1 << 3),
BSON_VALIDATE_EMPTY_KEYS = (1 << 4),
BSON_VALIDATE_CORRUPT = (1 << 5),
} bson_validate_flags_t;
DESCRIPTION
bson_validate_flags_t is a set of binary flags which may be combined to specify a level of BSON document
validation.
A value of 0, false, or BSON_VALIDATE_NONE equivalently requests the minimum applicable level of
validation.
In the context of validation APIs bson_validate() <>, bson_validate_with_error() <>, and
bson_validate_with_error_and_offset() <> the minimum validation still guarantees that a document can be
successfully traversed by bson_iter_visit_all() <>.
Higher level APIs using this type may have different minimum validation levels. For example, libmongoc
functions that take bson_validate_flags_t use 0 to mean the document contents are not visited and
malformed headers will not be detected by the client.
Each defined flag aside from BSON_VALIDATE_NONE describes an optional validation feature that may be
enabled, alone or in combination with other features:
• BSON_VALIDATE_NONE Minimum level of validation; in libbson, validates element headers.
• BSON_VALIDATE_UTF8 All keys and string values are checked for invalid UTF-8.
• BSON_VALIDATE_UTF8_ALLOW_NULL String values are allowed to have embedded NULL bytes. This has no effect
unless BSON_VALIDATE_UTF8 is also passed.
• BSON_VALIDATE_DOLLAR_KEYS Prohibit keys that start with $ outside of a "DBRef" subdocument.
• BSON_VALIDATE_DOT_KEYS Prohibit keys that contain . anywhere in the string.
• BSON_VALIDATE_EMPTY_KEYS Prohibit zero-length keys.
• BSON_VALIDATE_CORRUPT is not a control flag, but is used as an error code when a validation routine
encounters corrupt BSON data.
See also:
bson_validate() <>, bson_validate_with_error() <>, bson_validate_with_error_and_offset() <>.
bson_visitor_t <> can be used for custom validation, Example Custom Validation <#example-custom-validation>.
Author
MongoDB, Inc
Copyright
2009-present, MongoDB, Inc.
2.2.1 Dec 11, 2025 BSON_VALIDATE_FLAGS_T(3)