diff --git a/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/AllTagConstants.java b/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/AllTagConstants.java
index 23a6fd2..3d10490 100644
--- a/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/AllTagConstants.java
+++ b/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/AllTagConstants.java
@@ -28,6 +28,7 @@
         DcfTagConstants,
         DngTagConstants,
         ExifTagConstants,
+        GdalLibraryTagConstants,
         GpsTagConstants,
         HylaFaxTagConstants,
         MicrosoftTagConstants,
@@ -48,6 +49,7 @@
                     DcfTagConstants.ALL_DCF_TAGS,
                     DngTagConstants.ALL_DNG_TAGS,
                     ExifTagConstants.ALL_EXIF_TAGS,
+                    GdalLibraryTagConstants.ALL_GDAL_LIBRARY_TAGS,
                     GpsTagConstants.ALL_GPS_TAGS,
                     HylaFaxTagConstants.ALL_HYLAFAX_TAGS,
                     MicrosoftTagConstants.ALL_MICROSOFT_TAGS,
diff --git a/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/ExifTagConstants.java b/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/ExifTagConstants.java
index 06fbd12..d29007a 100644
--- a/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/ExifTagConstants.java
+++ b/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/ExifTagConstants.java
@@ -493,12 +493,6 @@
     public static final TagInfoAscii EXIF_TAG_IMAGE_UNIQUE_ID = new TagInfoAscii(
             "Image Unique ID", 0xa420, 1,
             TiffDirectoryType.EXIF_DIRECTORY_EXIF_IFD);
-    public static final TagInfoAscii EXIF_TAG_GDALMETADATA = new TagInfoAscii(
-            "GDALMetadata", 0xa480, -1,
-            TiffDirectoryType.EXIF_DIRECTORY_UNKNOWN);
-    public static final TagInfoAscii EXIF_TAG_GDALNO_DATA = new TagInfoAscii(
-            "GDALNo Data", 0xa481, -1,
-            TiffDirectoryType.EXIF_DIRECTORY_UNKNOWN);
     public static final TagInfoRational EXIF_TAG_GAMMA = new TagInfoRational("Gamma", 0xa500,
             1, TiffDirectoryType.EXIF_DIRECTORY_EXIF_IFD);
     public static final TagInfoUnknown EXIF_TAG_ANNOTATIONS = new TagInfoUnknown(
@@ -615,7 +609,7 @@
                     EXIF_TAG_CONTRAST_1, EXIF_TAG_SATURATION_1, EXIF_TAG_SHARPNESS_1,
                     EXIF_TAG_DEVICE_SETTING_DESCRIPTION,
                     EXIF_TAG_SUBJECT_DISTANCE_RANGE, EXIF_TAG_IMAGE_UNIQUE_ID,
-                    EXIF_TAG_GDALMETADATA, EXIF_TAG_GDALNO_DATA, EXIF_TAG_GAMMA,
+                    EXIF_TAG_GAMMA,
                     EXIF_TAG_ANNOTATIONS, EXIF_TAG_PRINT_IM,
                     EXIF_TAG_DNG_ADOBE_DATA, EXIF_TAG_DNG_PENTAX_DATA,
                     EXIF_TAG_OFFSET_SCHEMA, EXIF_TAG_OWNER_NAME,
diff --git a/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/GdalLibraryTagConstants.java b/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/GdalLibraryTagConstants.java
new file mode 100644
index 0000000..40f5c16
--- /dev/null
+++ b/src/main/java/org/apache/commons/sanselan/formats/tiff/constants/GdalLibraryTagConstants.java
@@ -0,0 +1,30 @@
+package org.apache.commons.sanselan.formats.tiff.constants;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.commons.sanselan.formats.tiff.taginfos.TagInfo;
+import org.apache.commons.sanselan.formats.tiff.taginfos.TagInfoAscii;
+
+/**
+ * GDAL library.
+ * <BR>
+ * http://www.awaresystems.be/imaging/tiff/tifftags/gdal_metadata.html
+ * <BR>
+ * http://www.awaresystems.be/imaging/tiff/tifftags/gdal_nodata.html
+ */
+public interface GdalLibraryTagConstants {
+    public static final TagInfoAscii EXIF_TAG_GDALMETADATA = new TagInfoAscii(
+            "GDALMetadata", 0xa480, -1,
+            TiffDirectoryType.EXIF_DIRECTORY_UNKNOWN);
+    
+    public static final TagInfoAscii EXIF_TAG_GDALNO_DATA = new TagInfoAscii(
+            "GDALNo Data", 0xa481, -1,
+            TiffDirectoryType.EXIF_DIRECTORY_UNKNOWN);
+
+    public static final List<TagInfo> ALL_GDAL_LIBRARY_TAGS =
+            Collections.unmodifiableList(Arrays.asList(new TagInfo[] {
+                    EXIF_TAG_GDALMETADATA,
+                    EXIF_TAG_GDALNO_DATA}));
+}
diff --git a/src/test/java/org/apache/commons/sanselan/formats/tiff/TiffTagIntegrityTest.java b/src/test/java/org/apache/commons/sanselan/formats/tiff/TiffTagIntegrityTest.java
index 379056b..fa7d1c4 100644
--- a/src/test/java/org/apache/commons/sanselan/formats/tiff/TiffTagIntegrityTest.java
+++ b/src/test/java/org/apache/commons/sanselan/formats/tiff/TiffTagIntegrityTest.java
@@ -26,6 +26,7 @@
 import org.apache.commons.sanselan.formats.tiff.constants.DcfTagConstants;
 import org.apache.commons.sanselan.formats.tiff.constants.DngTagConstants;
 import org.apache.commons.sanselan.formats.tiff.constants.ExifTagConstants;
+import org.apache.commons.sanselan.formats.tiff.constants.GdalLibraryTagConstants;
 import org.apache.commons.sanselan.formats.tiff.constants.GpsTagConstants;
 import org.apache.commons.sanselan.formats.tiff.constants.MicrosoftHdPhotoTagConstants;
 import org.apache.commons.sanselan.formats.tiff.constants.MicrosoftTagConstants;
@@ -46,6 +47,7 @@
         verifyFields(DcfTagConstants.class, DcfTagConstants.ALL_DCF_TAGS);
         verifyFields(DngTagConstants.class, DngTagConstants.ALL_DNG_TAGS);
         verifyFields(ExifTagConstants.class, ExifTagConstants.ALL_EXIF_TAGS);
+        verifyFields(GdalLibraryTagConstants.class, GdalLibraryTagConstants.ALL_GDAL_LIBRARY_TAGS);
         verifyFields(GpsTagConstants.class, GpsTagConstants.ALL_GPS_TAGS);
         verifyFields(MolecularDynamicsGelTagConstants.class, MolecularDynamicsGelTagConstants.ALL_MOLECULAR_DYNAMICS_GEL_TAGS);
         verifyFields(MicrosoftTagConstants.class, MicrosoftTagConstants.ALL_MICROSOFT_TAGS);
