@abc.abstractmethod<EOL><INDENT>def create_proficiency(self, proficiency_form):<DEDENT>
return<EOL>
Creates a new ``Proficiency``.

        A new form should be requested for each create transaction.

        :param proficiency_form: the form for this ``Proficiency``
        :type proficiency_form: ``osid.learning.ProficiencyForm``
        :return: the new ``Proficiency``
        :rtype: ``osid.learning.Proficiency``
        :raise: ``IllegalState`` -- ``proficiency_form`` already used in a create transaction
        :raise: ``InvalidArgument`` -- one or more of the form elements is invalid
        :raise: ``NullArgument`` -- ``proficiency_form`` is ``null``
        :raise: ``OperationFailed`` -- unable to complete request
        :raise: ``PermissionDenied`` -- authorization failure
        :raise: ``Unsupported`` -- ``proficiency_form`` did not originate from ``get_proficiency_form_for_create()``

        *compliance: mandatory -- This method must be implemented.*