diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java
index a18e319..b0a3aea 100644
--- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java
+++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/AbstractScmMojo.java
@@ -60,6 +60,16 @@
 public abstract class AbstractScmMojo
     extends AbstractMojo
 {
+
+    protected static final String VERSION_TYPE_BRANCH = "branch";
+
+    protected static final String VERSION_TYPE_REVISION = "revision";
+
+    protected static final String VERSION_TYPE_TAG = "tag";
+
+    protected static final String[] VALID_VERSION_TYPES = { VERSION_TYPE_BRANCH,
+            VERSION_TYPE_REVISION, VERSION_TYPE_TAG };
+
     /**
      * The SCM connection URL.
      */
@@ -472,17 +482,17 @@
             return null;
         }
 
-        if ( "branch".equals( versionType ) )
+        if ( VERSION_TYPE_BRANCH.equals( versionType ) )
         {
             return new ScmBranch( version );
         }
 
-        if ( "tag".equals( versionType ) )
+        if ( VERSION_TYPE_TAG.equals( versionType ) )
         {
             return new ScmTag( version );
         }
 
-        if ( "revision".equals( versionType ) )
+        if ( VERSION_TYPE_REVISION.equals( versionType ) )
         {
             return new ScmRevision( version );
         }
diff --git a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java
index 1f777a2..8de8056 100644
--- a/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java
+++ b/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java
@@ -126,11 +126,11 @@
             ScmProvider provider = getScmManager().getProviderByRepository( repository );
 
             ScmVersion startRev =
-                getScmVersion( StringUtils.isEmpty( startScmVersionType ) ? "revision" : startScmVersionType,
-                               startScmVersion );
+                getScmVersion( StringUtils.isEmpty( startScmVersionType ) ? VERSION_TYPE_REVISION
+                               : startScmVersionType, startScmVersion );
             ScmVersion endRev =
-                getScmVersion( StringUtils.isEmpty( endScmVersionType ) ? "revision" : endScmVersionType,
-                               endScmVersion );
+                getScmVersion( StringUtils.isEmpty( endScmVersionType ) ? VERSION_TYPE_REVISION
+                               : endScmVersionType, endScmVersion );
 
             ChangeLogScmResult result;
             if ( startRev != null || endRev != null )
