Confusion regarding dependencies
As the definition of the 2NF is:


  A functional dependency on part of any candidate key is a violation of 2NF. In addition to the primary key, the relation may contain other candidate keys; it is necessary to establish that no non-prime attributes have part-key dependencies on any of these candidate keys.


This schema is not in 2NF.