Updated the implementation of the definition fragment to be polymorphic as in the notes.