A subclass of ArrayField which supports an embedded Document collection. Invalid elements will be dropped from the collection during validation rather than failing for the field entirely.
The data type of each element in this array
The initially provided options which configure the data field
The field name of this DataField instance. This is assigned by SchemaField#initialize.
A reference to the parent schema to which this DataField belongs. This is assigned by SchemaField#initialize.
A reference to the DataModel subclass of the embedded document element
The DataSchema of the contained Document model.
A dot-separated string representation of the field path within the parent schema.
The Collection implementation to use when initializing the collection.
Default parameters for this field type
Migrate this field's candidate source data.
Candidate source data of the root model
The value of this field within the source data
Return the embedded document(s) as a Collection.
The parent document.
Coerce source data to ensure that it conforms to the correct data type for the field. Data coercion operations should be simple and synchronous as these are applied whenever a DataModel is constructed. For one-off cleaning of user-provided input the sanitize method should be used.
The initial value
The cast value
Attempt to retrieve a valid initial value for the DataField.
The source data object for which an initial value is required
A valid initial value
Validate a candidate input for this field, ensuring it meets the field requirements. A validation failure can be provided as a raised Error (with a string message), by returning false, or by returning a DataModelValidationFailure instance. A validator which returns true denotes that the result is certainly valid and further validations are unnecessary.
The initial value
Returns a DataModelValidationFailure if a validation failure occurred.
Special validation rules which supersede regular field validation. This validator screens for certain values which are otherwise incompatible with this field like null or undefined.
The candidate value
A boolean to indicate with certainty whether the value is valid. Otherwise, return void.