Using forms is about allowing the API to describe to the client what the client needs to send back in its request. What the form has is beyond this part of the tutorial but at this stage the simple answer is that the guidelines of HTML semantics are used. Rather this tutorial describes how we wire up the rules of what a form contains.

edit-form is a PUTcreate-form is a POSTsearch is POST (because it is just a create)submit may be present on a form and should be used for submission when presentself of the form should never be usedself of the originating resource can be used when submit on the form is not presentsubmitRemember, that the designer of the API is
edit-form on collection (you add/remove items to a collection rather than update the collection per se)create-form on a collection itemcreate-form on singleton (the edit-form will have attributes that allow adding/removing)