anchor.diff:  * [tck-testable]#Only [classname]`ConstraintValidator` implementations targeting annotated elements are considered.#
   * [tck-testable]#Primitive types are considered equivalent to their respective primitive wrapper class.#
   * A [classname]`ConstraintValidator<A, U>` is said to be _compliant_ with [classname]`T` if [classname]`T` is a subtype of [classname]`U` (according to the link:$$http://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.10$$[Java Language Specification 3rd edition chapter 4.10 Subtyping]). Note that [classname]`T` is a subtype of [classname]`U` if [classname]`T` = [classname]`U`.
  -* [tck-testable]#If no [classname]`ConstraintValidator` compliant with [classname]`T` is found amongst the [classname]``ConstraintValidator``s listed by the constraint [classname]`A`, an [classname]`UnexpectedTypeException` is raised.#
  +* [tck-testable]#If no [classname]`ConstraintValidator` compliant with [classname]`T` is found among the [classname]``ConstraintValidator``s listed by the constraint [classname]`A`, an [classname]`UnexpectedTypeException` is raised.#
   * [tck-testable]#A [classname]`ConstraintValidator<A, U>` compliant with [classname]`T` is considered _strictly more specific_ than a [classname]`ConstraintValidator<A, V>` compliant with [classname]`T` if [classname]`U` is a strict subtype of [classname]`V`. [classname]`U` is a strict subtype of [classname]`V` if [classname]`U` is a subtype of [classname]`V` and [classname]`U` != [classname]`V` (according to the link:$$http://docs.oracle.com/javase/specs/jls/se8/html/jls-4.html#jls-4.10$$[Java Language Specification 3rd edition chapter 4.10 Subtyping]).#
   * A [classname]`ConstraintValidator<A, U>` compliant with [classname]`T` is considered maximally specific if no other [classname]`ConstraintValidator<A, V>` compliant with [classname]`T` is strictly more specific than [classname]`ConstraintValidator<A, U>`.
   * [tck-testable]#If more than one maximally specific [classname]`ConstraintValidator` is found, an [classname]`UnexpectedTypeException` is raised.#
  
positive.code: * A `ValueExtractor<T>` is said to be _type-compliant_ with `C`, if `C` is a subtype of `T`
  (according to the http://java.sun.com/docs/books/jls/third_edition/html/typesValues.html#4.10[Java Language Specification 3rd edition chapter 4.10 Subtyping]).
  Note that `C` is a subtype of `T` if `C` = `T`.
  * A `ValueExtractor` implementation is said to be _container-element-compliant_ with `C`, if `C` is a generic container type and the value extractor implementation handles a type parameter that maps to the constrained type argument
  * If no `ValueExtractor` type-compliant and container-element-compliant with `C` is found among the available value extractors, a `ConstraintDeclarationException` is raised.
  * A `ValueExtractor<U>` type-compliant with `C` is considered _strictly more specific_ than a `ValueExtractor<V>` compliant with `C` if `U` is a strict subtype of `V`.
  `U` is a strict subtype of `V` if `U` is a subtype of `V` and `U` != `V`.
  
negative.code: 
  When detecting a constraint given as a _declaration annotation_ and not as a _type annotation_ (i.e. it is given on field, parameter etc. and not given on an a type argument of a generic type), the applicable value extractor, if any, is determined as follows:
  
  * If the constraint carries the `Unwrapping.Skip` payload, no value extractor is applied.
  * If the constraint carries the `Unwrapping.Unwrap` payload and there is exactly one maximally-specific type-compliant value extractor, this extractor is applied;
  if there is no type-compliant extractor or multiple maximally-specific type-compliant extractors exist, a `ConstraintDeclarationException` is raised.
  * If the constraint carries neither the `Unwrapping.Unwrap` nor the `Unwrapping.Skip` payload:
  ** If there is exactly one maximally-specific type-compliant value extractor marked with `@UnwrapByDefault`, this extractor is applied;
  ** Otherwise, no value extractor is applied.
  
  [[constraintdeclarationvalidationprocess-validationroutine-algorithm-examples]]
  ===== Examples
  