In the context of object-oriented programming, what is the requirement for a specification object when it must contain exactly one field?
A) The specification object can contain multiple fields as long as one of them is a primary key.
B) The specification object must contain exactly one field to ensure a single, unambiguous specification.
C) The specification object must contain exactly one field, but this field can be of any data type.
D) The specification object should contain at least one field and can have additional optional fields.