updated javadoc to the most recent semantics, main difference: 
inheritance no longer automatically propagates annotations.
diff --git a/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNull.java b/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNull.java
index a6e01fa..3f07d5c 100644
--- a/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNull.java
+++ b/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNull.java
@@ -27,17 +27,19 @@
  * annotation can never have the value <code>null</code> at runtime.
  * <p>
  * This has two consequences:
- * <ul>
- * <li>An attempt to bind a <code>null</code> value to the entity is a compile time error.
- *     Diagnostics issued by the compiler should distinguish three situations:
- *     <ul>
- *     <li>Nullness of the value can be statically determined.</li>
- *     <li>Nullness can not definitely be determined, because different code branches yield different results.</li>
- *     <li>Nullness can not be determined, because other program elements are involved for which
- *         null annotations are lacking.</li>
- *     </ul></li>
+ * <ol>
  * <li>Dereferencing the entity is safe, i.e., no <code>NullPointerException</code> can occur at runtime.</li>
- * </ul>
+ * <li>An attempt to bind a <code>null</code> value to the entity is a compile time error.</li>
+ * </ol>
+ * For the second case diagnostics issued by the compiler should distinguish three situations:
+ * <ol>
+ * <li>Nullness of the value can be statically determined, the entity is definitely bound from either of:
+ *     <ul><li>the value <code>null</code>, or</li>
+ *         <li>an entity with a {@link Nullable @Nullable} type.</li></ul></li>
+ * <li>Nullness can not definitely be determined, because different code branches yield different results.</li>
+ * <li>Nullness can not be determined, because other program elements are involved for which
+ *     null annotations are lacking.</li>
+ * </ol>
  * </p>
  * @author stephan
  */
diff --git a/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNullByDefault.java b/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNullByDefault.java
index 2f0d844..ea6755d 100644
--- a/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNullByDefault.java
+++ b/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NonNullByDefault.java
@@ -24,19 +24,16 @@
  * <p>
  * This annotation can be applied to a package or a type in order to define that
  * all contained entities for which a null annotation is otherwise lacking
- * should be considered as @{@link NonNull}.
+ * should be considered as {@link NonNull @NonNull}.
  * <dl>
  * <dt>Interaction with inheritance</dt>
- * <dd>This annotation has lower precedence than null contract inheritance,
- * i.e., for a method with no explicit null annotations first inheritance
- * from the super-method (overridden or implemented) are considered.
- * Only if that search yields no null annotation the default defined using
- * <code>@NonNullByDefault</code> is applied.</dd>
+ * <dd>The rules regarding inheritance are applied <em>after</em> the applicable default
+ *     has been applied to all types lacking an annotation.</dd>
  * <dt>Nested defaults</dt>
  * <dd>If a <code>@NonNullByDefault</code>
- * annotation is used within the scope of a <code>@NullableByDefault</code>
- * annotation the inner most annotation defines the default applicable at 
- * any given position.</dd>
+ * annotation is used within the scope of a {@link NullableByDefault @NullableByDefault}
+ * annotation (or a project wide default setting) the inner most annotation defines the
+ * default applicable at any given position.</dd>
  * </dl>
  * Note that for applying an annotation to a package a file by the name
  * <code>package-info.java</code> is used.
diff --git a/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NullableByDefault.java b/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NullableByDefault.java
index 5e47006..9d2c61c 100644
--- a/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NullableByDefault.java
+++ b/contrib/jdt-null-annotations/src/org/eclipse/jdt/annotation/NullableByDefault.java
@@ -24,19 +24,16 @@
  * <p>
  * This annotation can be applied to a package or a type in order to define that
  * all contained entities for which a null annotation is otherwise lacking
- * should be considered as @{@link Nullable}.
+ * should be considered as {@link Nullable @Nullable}.
  * <dl>
  * <dt>Interaction with inheritance</dt>
- * <dd>This annotation has lower precedence than null contract inheritance,
- * i.e., for a method with no explicit null annotations first inheritance
- * from the super-method (overridden or implemented) are considered.
- * Only if that search yields no null annotation the default defined using
- * <code>@NullableByDefault</code> is applied.</dd>
+ * <dd>The rules regarding inheritance are applied <em>after</em> the applicable default
+ *     has been applied to all types lacking an annotation.</dd>
  * <dt>Nested defaults</dt>
  * <dd>If a <code>@NullableByDefault</code>
- * annotation is used within the scope of a <code>@NonNullByDefault</code>
- * annotation the inner most annotation defines the default applicable at 
- * any given position.</dd>
+ * annotation is used within the scope of a {@link NonNullByDefault @NonNullByDefault}
+ * annotation (or a project wide default setting) the inner most annotation defines the
+ * default applicable at any given position.</dd>
  * </dl>
  * Note that for applying an annotation to a package a file by the name
  * <code>package-info.java</code> is used.