diff --git a/core/api/src/main/java/org/onosproject/net/behaviour/ExtensionTreatmentResolver.java b/core/api/src/main/java/org/onosproject/net/behaviour/ExtensionTreatmentResolver.java
index 85f0216..8ca05af 100644
--- a/core/api/src/main/java/org/onosproject/net/behaviour/ExtensionTreatmentResolver.java
+++ b/core/api/src/main/java/org/onosproject/net/behaviour/ExtensionTreatmentResolver.java
@@ -22,13 +22,13 @@
 import org.onosproject.net.flow.instructions.ExtensionTreatmentType;
 
 /**
- * Provides access to the extension implemented by this driver.
+ * Provides access to the extension treatments implemented by this driver.
  */
 @Beta
 public interface ExtensionTreatmentResolver extends HandlerBehaviour {
 
     /**
-     * Gets an extension instruction instance of the specified type, if supported
+     * Gets an extension treatment instance of the specified type, if supported
      * by the driver.
      *
      * @param type type of extension to get
diff --git a/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatment.java b/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatment.java
index 35a2d12..3df152e 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatment.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatment.java
@@ -19,12 +19,12 @@
 import org.onosproject.net.flow.Extension;
 
 /**
- * An extenstion for the treatment API.
+ * An extension for the treatment API.
  */
 public interface ExtensionTreatment extends Extension {
 
     /**
-     * Gets the type of the extension instruction.
+     * Gets the type of the treatment extension.
      *
      * @return type
      */
diff --git a/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatmentType.java b/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatmentType.java
index 9715fc0..1ba5897 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatmentType.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/instructions/ExtensionTreatmentType.java
@@ -32,11 +32,10 @@
      * These numbers have no impact on the actual OF type id.
      */
     public enum ExtensionTreatmentTypes {
-        // TODO fix type numbers to include experimenter id
         NICIRA_SET_TUNNEL_DST(0),
         NICIRA_RESUBMIT(1),
-        NICIRA_SET_NSH_SPI(32),
         NICIRA_RESUBMIT_TABLE(14),
+        NICIRA_SET_NSH_SPI(32),
         NICIRA_SET_NSH_SI(33),
         NICIRA_SET_NSH_CH1(34),
         NICIRA_SET_NSH_CH2(35),
@@ -46,7 +45,7 @@
         private ExtensionTreatmentType type;
 
         /**
-         * Creates a new named extension instruction type.
+         * Creates a new named extension treatment type.
          *
          * @param type type code
          */
