The syntax is:
template
using ValueType = typename std::iterator_traits::value_type;
as with your second one.
Source:
http://www2.research.att.com/~bs/C++0xFAQ.html#template-alias
Their example is:
template
using int_exact = typename int_exact_traits::type; // define alias for convenient notation