diff --git a/isis/CMakeLists.txt b/isis/CMakeLists.txt
index b63ba5dec2..318d3933f0 100644
--- a/isis/CMakeLists.txt
+++ b/isis/CMakeLists.txt
@@ -506,7 +506,8 @@ add_dependencies(isis3 incs)
# directory. (As above - may need to be updated)
add_custom_target(appdata ALL COMMAND ${CMAKE_COMMAND} -E copy_if_different
${CMAKE_SOURCE_DIR}/appdata/serialnumbers/*.trn ${CMAKE_SOURCE_DIR}/appdata/translations/*.trn
- ${CMAKE_SOURCE_DIR}/src/*/apps/*/*.trn
+ ${CMAKE_SOURCE_DIR}/appdata/translations/*.typ ${CMAKE_SOURCE_DIR}/src/*/apps/*/*.typ
+ ${CMAKE_SOURCE_DIR}/src/*/apps/*/*.trn ${CMAKE_SOURCE_DIR}/src/*/apps/*/*.pft
${CMAKE_BINARY_DIR}/appdata/translations)
add_dependencies(isis3 appdata)
diff --git a/isis/appdata/images/icons/3d-glasses-icon.png b/isis/appdata/images/icons/3d-glasses-icon.png
new file mode 100644
index 0000000000..0fafc03b93
Binary files /dev/null and b/isis/appdata/images/icons/3d-glasses-icon.png differ
diff --git a/isis/appdata/images/icons/HILLBLU_molecola.png b/isis/appdata/images/icons/HILLBLU_molecola.png
new file mode 100644
index 0000000000..8271f86dad
Binary files /dev/null and b/isis/appdata/images/icons/HILLBLU_molecola.png differ
diff --git a/isis/appdata/images/icons/add.png b/isis/appdata/images/icons/add.png
new file mode 100644
index 0000000000..ddfa551f32
Binary files /dev/null and b/isis/appdata/images/icons/add.png differ
diff --git a/isis/appdata/images/icons/add_large.png b/isis/appdata/images/icons/add_large.png
new file mode 100644
index 0000000000..6c5d448352
Binary files /dev/null and b/isis/appdata/images/icons/add_large.png differ
diff --git a/isis/appdata/images/icons/applications-system.png b/isis/appdata/images/icons/applications-system.png
new file mode 100644
index 0000000000..4d9a9dc4a3
Binary files /dev/null and b/isis/appdata/images/icons/applications-system.png differ
diff --git a/isis/appdata/images/icons/archive-insert-directory.png b/isis/appdata/images/icons/archive-insert-directory.png
new file mode 100644
index 0000000000..5c65232f2a
Binary files /dev/null and b/isis/appdata/images/icons/archive-insert-directory.png differ
diff --git a/isis/appdata/images/icons/back.png b/isis/appdata/images/icons/back.png
new file mode 100644
index 0000000000..8f897a05cd
Binary files /dev/null and b/isis/appdata/images/icons/back.png differ
diff --git a/isis/appdata/images/icons/blink.png b/isis/appdata/images/icons/blink.png
new file mode 100644
index 0000000000..276a12afbe
Binary files /dev/null and b/isis/appdata/images/icons/blink.png differ
diff --git a/isis/appdata/images/icons/blinkAdvance.png b/isis/appdata/images/icons/blinkAdvance.png
new file mode 100644
index 0000000000..b2d6171d63
Binary files /dev/null and b/isis/appdata/images/icons/blinkAdvance.png differ
diff --git a/isis/appdata/images/icons/blinkReverse.png b/isis/appdata/images/icons/blinkReverse.png
new file mode 100644
index 0000000000..1aaf6f3c09
Binary files /dev/null and b/isis/appdata/images/icons/blinkReverse.png differ
diff --git a/isis/appdata/images/icons/blinkStart.png b/isis/appdata/images/icons/blinkStart.png
new file mode 100644
index 0000000000..5711238d08
Binary files /dev/null and b/isis/appdata/images/icons/blinkStart.png differ
diff --git a/isis/appdata/images/icons/blinkStop.png b/isis/appdata/images/icons/blinkStop.png
new file mode 100644
index 0000000000..3f615766bb
Binary files /dev/null and b/isis/appdata/images/icons/blinkStop.png differ
diff --git a/isis/appdata/images/icons/button_cancel.png b/isis/appdata/images/icons/button_cancel.png
new file mode 100644
index 0000000000..8ae7294c33
Binary files /dev/null and b/isis/appdata/images/icons/button_cancel.png differ
diff --git a/isis/appdata/images/icons/button_ok.png b/isis/appdata/images/icons/button_ok.png
new file mode 100644
index 0000000000..bdb2a0e70f
Binary files /dev/null and b/isis/appdata/images/icons/button_ok.png differ
diff --git a/isis/appdata/images/icons/camera-photo.png b/isis/appdata/images/icons/camera-photo.png
new file mode 100644
index 0000000000..2faad6b637
Binary files /dev/null and b/isis/appdata/images/icons/camera-photo.png differ
diff --git a/isis/appdata/images/icons/camera.png b/isis/appdata/images/icons/camera.png
new file mode 100644
index 0000000000..928723e451
Binary files /dev/null and b/isis/appdata/images/icons/camera.png differ
diff --git a/isis/appdata/images/icons/color_line.png b/isis/appdata/images/icons/color_line.png
new file mode 100644
index 0000000000..519be63457
Binary files /dev/null and b/isis/appdata/images/icons/color_line.png differ
diff --git a/isis/appdata/images/icons/colorize.png b/isis/appdata/images/icons/colorize.png
new file mode 100644
index 0000000000..c1f6d41ca6
Binary files /dev/null and b/isis/appdata/images/icons/colorize.png differ
diff --git a/isis/appdata/images/icons/contexthelp.png b/isis/appdata/images/icons/contexthelp.png
new file mode 100644
index 0000000000..b6655009b5
Binary files /dev/null and b/isis/appdata/images/icons/contexthelp.png differ
diff --git a/isis/appdata/images/icons/copy_bands.png b/isis/appdata/images/icons/copy_bands.png
new file mode 100644
index 0000000000..34ad256cbf
Binary files /dev/null and b/isis/appdata/images/icons/copy_bands.png differ
diff --git a/isis/appdata/images/icons/copy_stretch.png b/isis/appdata/images/icons/copy_stretch.png
new file mode 100644
index 0000000000..163c10fb9c
Binary files /dev/null and b/isis/appdata/images/icons/copy_stretch.png differ
diff --git a/isis/appdata/images/icons/document-save-as.png b/isis/appdata/images/icons/document-save-as.png
new file mode 100644
index 0000000000..9695a56424
Binary files /dev/null and b/isis/appdata/images/icons/document-save-as.png differ
diff --git a/isis/appdata/images/icons/document-save.png b/isis/appdata/images/icons/document-save.png
new file mode 100644
index 0000000000..7fa489c0fe
Binary files /dev/null and b/isis/appdata/images/icons/document-save.png differ
diff --git a/isis/appdata/images/icons/down.png b/isis/appdata/images/icons/down.png
new file mode 100644
index 0000000000..720657a28f
Binary files /dev/null and b/isis/appdata/images/icons/down.png differ
diff --git a/isis/appdata/images/icons/edit.png b/isis/appdata/images/icons/edit.png
new file mode 100644
index 0000000000..fa8b063f9b
Binary files /dev/null and b/isis/appdata/images/icons/edit.png differ
diff --git a/isis/appdata/images/icons/editcopy.png b/isis/appdata/images/icons/editcopy.png
new file mode 100644
index 0000000000..31dc2509be
Binary files /dev/null and b/isis/appdata/images/icons/editcopy.png differ
diff --git a/isis/appdata/images/icons/editdelete.png b/isis/appdata/images/icons/editdelete.png
new file mode 100644
index 0000000000..8ae7294c33
Binary files /dev/null and b/isis/appdata/images/icons/editdelete.png differ
diff --git a/isis/appdata/images/icons/editpaste.png b/isis/appdata/images/icons/editpaste.png
new file mode 100644
index 0000000000..d0b97ef553
Binary files /dev/null and b/isis/appdata/images/icons/editpaste.png differ
diff --git a/isis/appdata/images/icons/exec.png b/isis/appdata/images/icons/exec.png
new file mode 100644
index 0000000000..ec4ae03c92
Binary files /dev/null and b/isis/appdata/images/icons/exec.png differ
diff --git a/isis/appdata/images/icons/exit.png b/isis/appdata/images/icons/exit.png
new file mode 100644
index 0000000000..7aa1ec8adc
Binary files /dev/null and b/isis/appdata/images/icons/exit.png differ
diff --git a/isis/appdata/images/icons/fileclose.png b/isis/appdata/images/icons/fileclose.png
new file mode 100644
index 0000000000..9fab553b97
Binary files /dev/null and b/isis/appdata/images/icons/fileclose.png differ
diff --git a/isis/appdata/images/icons/fileexport.png b/isis/appdata/images/icons/fileexport.png
new file mode 100644
index 0000000000..eff38ff032
Binary files /dev/null and b/isis/appdata/images/icons/fileexport.png differ
diff --git a/isis/appdata/images/icons/filefind.png b/isis/appdata/images/icons/filefind.png
new file mode 100644
index 0000000000..55aada44c5
Binary files /dev/null and b/isis/appdata/images/icons/filefind.png differ
diff --git a/isis/appdata/images/icons/filenew.png b/isis/appdata/images/icons/filenew.png
new file mode 100644
index 0000000000..9c9cafb2c4
Binary files /dev/null and b/isis/appdata/images/icons/filenew.png differ
diff --git a/isis/appdata/images/icons/fileopen.png b/isis/appdata/images/icons/fileopen.png
new file mode 100644
index 0000000000..9ece2e24bc
Binary files /dev/null and b/isis/appdata/images/icons/fileopen.png differ
diff --git a/isis/appdata/images/icons/fileprint.png b/isis/appdata/images/icons/fileprint.png
new file mode 100644
index 0000000000..fa5141dea5
Binary files /dev/null and b/isis/appdata/images/icons/fileprint.png differ
diff --git a/isis/appdata/images/icons/filesave.png b/isis/appdata/images/icons/filesave.png
new file mode 100644
index 0000000000..3e27f3b18b
Binary files /dev/null and b/isis/appdata/images/icons/filesave.png differ
diff --git a/isis/appdata/images/icons/filesaveas.png b/isis/appdata/images/icons/filesaveas.png
new file mode 100644
index 0000000000..dd33f5d4ed
Binary files /dev/null and b/isis/appdata/images/icons/filesaveas.png differ
diff --git a/isis/appdata/images/icons/find.png b/isis/appdata/images/icons/find.png
new file mode 100644
index 0000000000..a87f339558
Binary files /dev/null and b/isis/appdata/images/icons/find.png differ
diff --git a/isis/appdata/images/icons/folder-activities.png b/isis/appdata/images/icons/folder-activities.png
new file mode 100644
index 0000000000..5e88b26bcc
Binary files /dev/null and b/isis/appdata/images/icons/folder-activities.png differ
diff --git a/isis/appdata/images/icons/folder-image.png b/isis/appdata/images/icons/folder-image.png
new file mode 100644
index 0000000000..034551af88
Binary files /dev/null and b/isis/appdata/images/icons/folder-image.png differ
diff --git a/isis/appdata/images/icons/folder-orange.png b/isis/appdata/images/icons/folder-orange.png
new file mode 100644
index 0000000000..5446d18c09
Binary files /dev/null and b/isis/appdata/images/icons/folder-orange.png differ
diff --git a/isis/appdata/images/icons/folder-red.png b/isis/appdata/images/icons/folder-red.png
new file mode 100644
index 0000000000..53954faaac
Binary files /dev/null and b/isis/appdata/images/icons/folder-red.png differ
diff --git a/isis/appdata/images/icons/folder-remote.png b/isis/appdata/images/icons/folder-remote.png
new file mode 100644
index 0000000000..c986596c9d
Binary files /dev/null and b/isis/appdata/images/icons/folder-remote.png differ
diff --git a/isis/appdata/images/icons/folder.png b/isis/appdata/images/icons/folder.png
new file mode 100644
index 0000000000..df05cf1d6f
Binary files /dev/null and b/isis/appdata/images/icons/folder.png differ
diff --git a/isis/appdata/images/icons/forward.png b/isis/appdata/images/icons/forward.png
new file mode 100644
index 0000000000..9a662a19a7
Binary files /dev/null and b/isis/appdata/images/icons/forward.png differ
diff --git a/isis/appdata/images/icons/frame_query.png b/isis/appdata/images/icons/frame_query.png
new file mode 100644
index 0000000000..686e758e42
Binary files /dev/null and b/isis/appdata/images/icons/frame_query.png differ
diff --git a/isis/appdata/images/icons/get-hot-new-stuff.png b/isis/appdata/images/icons/get-hot-new-stuff.png
new file mode 100644
index 0000000000..aaedc5cee6
Binary files /dev/null and b/isis/appdata/images/icons/get-hot-new-stuff.png differ
diff --git a/isis/appdata/images/icons/global_stretch.png b/isis/appdata/images/icons/global_stretch.png
new file mode 100644
index 0000000000..139497abc8
Binary files /dev/null and b/isis/appdata/images/icons/global_stretch.png differ
diff --git a/isis/appdata/images/icons/goto.png b/isis/appdata/images/icons/goto.png
new file mode 100644
index 0000000000..77503d42bb
Binary files /dev/null and b/isis/appdata/images/icons/goto.png differ
diff --git a/isis/appdata/images/icons/gray.png b/isis/appdata/images/icons/gray.png
new file mode 100644
index 0000000000..83d20a0695
Binary files /dev/null and b/isis/appdata/images/icons/gray.png differ
diff --git a/isis/appdata/images/icons/grid.png b/isis/appdata/images/icons/grid.png
new file mode 100644
index 0000000000..42048cc499
Binary files /dev/null and b/isis/appdata/images/icons/grid.png differ
diff --git a/isis/appdata/images/icons/guiClearLog.png b/isis/appdata/images/icons/guiClearLog.png
new file mode 100644
index 0000000000..880453fca9
Binary files /dev/null and b/isis/appdata/images/icons/guiClearLog.png differ
diff --git a/isis/appdata/images/icons/guiExit.png b/isis/appdata/images/icons/guiExit.png
new file mode 100644
index 0000000000..7cb985935f
Binary files /dev/null and b/isis/appdata/images/icons/guiExit.png differ
diff --git a/isis/appdata/images/icons/guiNextHistory.png b/isis/appdata/images/icons/guiNextHistory.png
new file mode 100644
index 0000000000..720657a28f
Binary files /dev/null and b/isis/appdata/images/icons/guiNextHistory.png differ
diff --git a/isis/appdata/images/icons/guiPrevHistory.png b/isis/appdata/images/icons/guiPrevHistory.png
new file mode 100644
index 0000000000..efa12d018a
Binary files /dev/null and b/isis/appdata/images/icons/guiPrevHistory.png differ
diff --git a/isis/appdata/images/icons/guiReset.png b/isis/appdata/images/icons/guiReset.png
new file mode 100644
index 0000000000..57034cc548
Binary files /dev/null and b/isis/appdata/images/icons/guiReset.png differ
diff --git a/isis/appdata/images/icons/guiRun.png b/isis/appdata/images/icons/guiRun.png
new file mode 100644
index 0000000000..4f4b72cd98
Binary files /dev/null and b/isis/appdata/images/icons/guiRun.png differ
diff --git a/isis/appdata/images/icons/guiSaveLog.png b/isis/appdata/images/icons/guiSaveLog.png
new file mode 100644
index 0000000000..dd33f5d4ed
Binary files /dev/null and b/isis/appdata/images/icons/guiSaveLog.png differ
diff --git a/isis/appdata/images/icons/guiStop.png b/isis/appdata/images/icons/guiStop.png
new file mode 100644
index 0000000000..0ee4d3b6c2
Binary files /dev/null and b/isis/appdata/images/icons/guiStop.png differ
diff --git a/isis/appdata/images/icons/help-contents.png b/isis/appdata/images/icons/help-contents.png
new file mode 100644
index 0000000000..6631abc97d
Binary files /dev/null and b/isis/appdata/images/icons/help-contents.png differ
diff --git a/isis/appdata/images/icons/histogram.png b/isis/appdata/images/icons/histogram.png
new file mode 100644
index 0000000000..3900d49426
Binary files /dev/null and b/isis/appdata/images/icons/histogram.png differ
diff --git a/isis/appdata/images/icons/ice.png b/isis/appdata/images/icons/ice.png
new file mode 100644
index 0000000000..c136f3323a
Binary files /dev/null and b/isis/appdata/images/icons/ice.png differ
diff --git a/isis/appdata/images/icons/info.png b/isis/appdata/images/icons/info.png
new file mode 100644
index 0000000000..49de2f89d3
Binary files /dev/null and b/isis/appdata/images/icons/info.png differ
diff --git a/isis/appdata/images/icons/kchart.png b/isis/appdata/images/icons/kchart.png
new file mode 100644
index 0000000000..1b614d287b
Binary files /dev/null and b/isis/appdata/images/icons/kchart.png differ
diff --git a/isis/appdata/images/icons/labels.png b/isis/appdata/images/icons/labels.png
new file mode 100644
index 0000000000..6231f0965c
Binary files /dev/null and b/isis/appdata/images/icons/labels.png differ
diff --git a/isis/appdata/images/icons/license.txt b/isis/appdata/images/icons/license.txt
new file mode 100644
index 0000000000..f8aecf92d2
--- /dev/null
+++ b/isis/appdata/images/icons/license.txt
@@ -0,0 +1,11 @@
+Most of the icons have been adapted from the oxygen theme are under the LGPLv3 license. The original svg files are located in the svg directory.
+
+For more information, please see: http://www.kde.org/
+
+A copy of the LGPLv3 license is available at licenses/lgpl-3.0.txt
+
+The following files are Copyright (c) U.S. Geological Survey (2012):
+ ographic.png
+
+All images beginning with "nasa_" have been adapted from images provided by NASA. You can review NASA's Media Usage Guidelines at:
+ https://www.nasa.gov/multimedia/guidelines/index.html
\ No newline at end of file
diff --git a/isis/appdata/images/icons/licenses/ATTRIBUTES.txt b/isis/appdata/images/icons/licenses/ATTRIBUTES.txt
new file mode 100644
index 0000000000..36b9df3370
--- /dev/null
+++ b/isis/appdata/images/icons/licenses/ATTRIBUTES.txt
@@ -0,0 +1,2 @@
+3d-glasses-icon.png attributed to Fatcow Web Hosting under CC Attribution 4.0 (http://creativecommons.org/licenses/by/4.0/)
+HILLBLU_molecula.png attributed to Hill (Wikimedia Commons) under CC Attribution 3.0 Unported (https://creativecommons.org/licenses/by/3.0/)
\ No newline at end of file
diff --git a/isis/appdata/images/icons/licenses/lgpl-3.0.txt b/isis/appdata/images/icons/licenses/lgpl-3.0.txt
new file mode 100644
index 0000000000..fb6d90b9fb
--- /dev/null
+++ b/isis/appdata/images/icons/licenses/lgpl-3.0.txt
@@ -0,0 +1,166 @@
+GNU LESSER GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc.
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+
+ This version of the GNU Lesser General Public License incorporates
+the terms and conditions of version 3 of the GNU General Public
+License, supplemented by the additional permissions listed below.
+
+ 0. Additional Definitions.
+
+ As used herein, "this License" refers to version 3 of the GNU Lesser
+General Public License, and the "GNU GPL" refers to version 3 of the GNU
+General Public License.
+
+ "The Library" refers to a covered work governed by this License,
+other than an Application or a Combined Work as defined below.
+
+ An "Application" is any work that makes use of an interface provided
+by the Library, but which is not otherwise based on the Library.
+Defining a subclass of a class defined by the Library is deemed a mode
+of using an interface provided by the Library.
+
+ A "Combined Work" is a work produced by combining or linking an
+Application with the Library. The particular version of the Library
+with which the Combined Work was made is also called the "Linked
+Version".
+
+ The "Minimal Corresponding Source" for a Combined Work means the
+Corresponding Source for the Combined Work, excluding any source code
+for portions of the Combined Work that, considered in isolation, are
+based on the Application, and not on the Linked Version.
+
+ The "Corresponding Application Code" for a Combined Work means the
+object code and/or source code for the Application, including any data
+and utility programs needed for reproducing the Combined Work from the
+Application, but excluding the System Libraries of the Combined Work.
+
+ 1. Exception to Section 3 of the GNU GPL.
+
+ You may convey a covered work under sections 3 and 4 of this License
+without being bound by section 3 of the GNU GPL.
+
+ 2. Conveying Modified Versions.
+
+ If you modify a copy of the Library, and, in your modifications, a
+facility refers to a function or data to be supplied by an Application
+that uses the facility (other than as an argument passed when the
+facility is invoked), then you may convey a copy of the modified
+version:
+
+ a) under this License, provided that you make a good faith effort to
+ ensure that, in the event an Application does not supply the
+ function or data, the facility still operates, and performs
+ whatever part of its purpose remains meaningful, or
+
+ b) under the GNU GPL, with none of the additional permissions of
+ this License applicable to that copy.
+
+ 3. Object Code Incorporating Material from Library Header Files.
+
+ The object code form of an Application may incorporate material from
+a header file that is part of the Library. You may convey such object
+code under terms of your choice, provided that, if the incorporated
+material is not limited to numerical parameters, data structure
+layouts and accessors, or small macros, inline functions and templates
+(ten or fewer lines in length), you do both of the following:
+
+ a) Give prominent notice with each copy of the object code that the
+ Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the object code with a copy of the GNU GPL and this license
+ document.
+
+ 4. Combined Works.
+
+ You may convey a Combined Work under terms of your choice that,
+taken together, effectively do not restrict modification of the
+portions of the Library contained in the Combined Work and reverse
+engineering for debugging such modifications, if you also do each of
+the following:
+
+ a) Give prominent notice with each copy of the Combined Work that
+ the Library is used in it and that the Library and its use are
+ covered by this License.
+
+ b) Accompany the Combined Work with a copy of the GNU GPL and this license
+ document.
+
+ c) For a Combined Work that displays copyright notices during
+ execution, include the copyright notice for the Library among
+ these notices, as well as a reference directing the user to the
+ copies of the GNU GPL and this license document.
+
+ d) Do one of the following:
+
+ 0) Convey the Minimal Corresponding Source under the terms of this
+ License, and the Corresponding Application Code in a form
+ suitable for, and under terms that permit, the user to
+ recombine or relink the Application with a modified version of
+ the Linked Version to produce a modified Combined Work, in the
+ manner specified by section 6 of the GNU GPL for conveying
+ Corresponding Source.
+
+ 1) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (a) uses at run time
+ a copy of the Library already present on the user's computer
+ system, and (b) will operate properly with a modified version
+ of the Library that is interface-compatible with the Linked
+ Version.
+
+ e) Provide Installation Information, but only if you would otherwise
+ be required to provide such information under section 6 of the
+ GNU GPL, and only to the extent that such information is
+ necessary to install and execute a modified version of the
+ Combined Work produced by recombining or relinking the
+ Application with a modified version of the Linked Version. (If
+ you use option 4d0, the Installation Information must accompany
+ the Minimal Corresponding Source and Corresponding Application
+ Code. If you use option 4d1, you must provide the Installation
+ Information in the manner specified by section 6 of the GNU GPL
+ for conveying Corresponding Source.)
+
+ 5. Combined Libraries.
+
+ You may place library facilities that are a work based on the
+Library side by side in a single library together with other library
+facilities that are not Applications and are not covered by this
+License, and convey such a combined library under terms of your
+choice, if you do both of the following:
+
+ a) Accompany the combined library with a copy of the same work based
+ on the Library, uncombined with any other library facilities,
+ conveyed under the terms of this License.
+
+ b) Give prominent notice with the combined library that part of it
+ is a work based on the Library, and explaining where to find the
+ accompanying uncombined form of the same work.
+
+ 6. Revised Versions of the GNU Lesser General Public License.
+
+ The Free Software Foundation may publish revised and/or new versions
+of the GNU Lesser General Public License from time to time. Such new
+versions will be similar in spirit to the present version, but may
+differ in detail to address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Library as you received it specifies that a certain numbered version
+of the GNU Lesser General Public License "or any later version"
+applies to it, you have the option of following the terms and
+conditions either of that published version or of any later version
+published by the Free Software Foundation. If the Library as you
+received it does not specify a version number of the GNU Lesser
+General Public License, you may choose any version of the GNU Lesser
+General Public License ever published by the Free Software Foundation.
+
+ If the Library as you received it specifies that a proxy can decide
+whether future versions of the GNU Lesser General Public License shall
+apply, that proxy's public statement of acceptance of any version is
+permanent authorization for you to choose that version for the
+Library.
+
diff --git a/isis/appdata/images/icons/linefit.png b/isis/appdata/images/icons/linefit.png
new file mode 100644
index 0000000000..213d1ad570
Binary files /dev/null and b/isis/appdata/images/icons/linefit.png differ
diff --git a/isis/appdata/images/icons/link.png b/isis/appdata/images/icons/link.png
new file mode 100644
index 0000000000..13bc07ff8d
Binary files /dev/null and b/isis/appdata/images/icons/link.png differ
diff --git a/isis/appdata/images/icons/link_valid.png b/isis/appdata/images/icons/link_valid.png
new file mode 100644
index 0000000000..961097fefd
Binary files /dev/null and b/isis/appdata/images/icons/link_valid.png differ
diff --git a/isis/appdata/images/icons/linked.png b/isis/appdata/images/icons/linked.png
new file mode 100644
index 0000000000..13bc07ff8d
Binary files /dev/null and b/isis/appdata/images/icons/linked.png differ
diff --git a/isis/appdata/images/icons/mActionExportMapServer.png b/isis/appdata/images/icons/mActionExportMapServer.png
new file mode 100644
index 0000000000..e0e4543735
Binary files /dev/null and b/isis/appdata/images/icons/mActionExportMapServer.png differ
diff --git a/isis/appdata/images/icons/mActionFileSave.png b/isis/appdata/images/icons/mActionFileSave.png
new file mode 100644
index 0000000000..3e27f3b18b
Binary files /dev/null and b/isis/appdata/images/icons/mActionFileSave.png differ
diff --git a/isis/appdata/images/icons/mActionFileSaveAs.png b/isis/appdata/images/icons/mActionFileSaveAs.png
new file mode 100644
index 0000000000..dd33f5d4ed
Binary files /dev/null and b/isis/appdata/images/icons/mActionFileSaveAs.png differ
diff --git a/isis/appdata/images/icons/mActionHelpContents.png b/isis/appdata/images/icons/mActionHelpContents.png
new file mode 100644
index 0000000000..ba242e5262
Binary files /dev/null and b/isis/appdata/images/icons/mActionHelpContents.png differ
diff --git a/isis/appdata/images/icons/mActionLabel.png b/isis/appdata/images/icons/mActionLabel.png
new file mode 100644
index 0000000000..6e61bbd9a3
Binary files /dev/null and b/isis/appdata/images/icons/mActionLabel.png differ
diff --git a/isis/appdata/images/icons/mActionMoveVertex.png b/isis/appdata/images/icons/mActionMoveVertex.png
new file mode 100644
index 0000000000..d1b8d6169e
Binary files /dev/null and b/isis/appdata/images/icons/mActionMoveVertex.png differ
diff --git a/isis/appdata/images/icons/mActionSelect.png b/isis/appdata/images/icons/mActionSelect.png
new file mode 100644
index 0000000000..5a2385c640
Binary files /dev/null and b/isis/appdata/images/icons/mActionSelect.png differ
diff --git a/isis/appdata/images/icons/measure.png b/isis/appdata/images/icons/measure.png
new file mode 100644
index 0000000000..9807b87e72
Binary files /dev/null and b/isis/appdata/images/icons/measure.png differ
diff --git a/isis/appdata/images/icons/mouse.png b/isis/appdata/images/icons/mouse.png
new file mode 100644
index 0000000000..427f4c6c62
Binary files /dev/null and b/isis/appdata/images/icons/mouse.png differ
diff --git a/isis/appdata/images/icons/move.png b/isis/appdata/images/icons/move.png
new file mode 100644
index 0000000000..92c0d2d263
Binary files /dev/null and b/isis/appdata/images/icons/move.png differ
diff --git a/isis/appdata/images/icons/nasa_enceladus.png b/isis/appdata/images/icons/nasa_enceladus.png
new file mode 100644
index 0000000000..11b21c8da5
Binary files /dev/null and b/isis/appdata/images/icons/nasa_enceladus.png differ
diff --git a/isis/appdata/images/icons/nasa_europa.png b/isis/appdata/images/icons/nasa_europa.png
new file mode 100644
index 0000000000..b19c7ff320
Binary files /dev/null and b/isis/appdata/images/icons/nasa_europa.png differ
diff --git a/isis/appdata/images/icons/nasa_mars.png b/isis/appdata/images/icons/nasa_mars.png
new file mode 100644
index 0000000000..8043235234
Binary files /dev/null and b/isis/appdata/images/icons/nasa_mars.png differ
diff --git a/isis/appdata/images/icons/nasa_titan.png b/isis/appdata/images/icons/nasa_titan.png
new file mode 100644
index 0000000000..199a02d4bf
Binary files /dev/null and b/isis/appdata/images/icons/nasa_titan.png differ
diff --git a/isis/appdata/images/icons/network-server-database.png b/isis/appdata/images/icons/network-server-database.png
new file mode 100644
index 0000000000..9f5d23f77f
Binary files /dev/null and b/isis/appdata/images/icons/network-server-database.png differ
diff --git a/isis/appdata/images/icons/nomenclature.png b/isis/appdata/images/icons/nomenclature.png
new file mode 100644
index 0000000000..10def86dbb
Binary files /dev/null and b/isis/appdata/images/icons/nomenclature.png differ
diff --git a/isis/appdata/images/icons/office-chart-pie.png b/isis/appdata/images/icons/office-chart-pie.png
new file mode 100644
index 0000000000..008a22e4c3
Binary files /dev/null and b/isis/appdata/images/icons/office-chart-pie.png differ
diff --git a/isis/appdata/images/icons/ographic.png b/isis/appdata/images/icons/ographic.png
new file mode 100644
index 0000000000..8f75c7b2e3
Binary files /dev/null and b/isis/appdata/images/icons/ographic.png differ
diff --git a/isis/appdata/images/icons/openList.png b/isis/appdata/images/icons/openList.png
new file mode 100644
index 0000000000..ba242e5262
Binary files /dev/null and b/isis/appdata/images/icons/openList.png differ
diff --git a/isis/appdata/images/icons/plot.png b/isis/appdata/images/icons/plot.png
new file mode 100644
index 0000000000..5a65064bbc
Binary files /dev/null and b/isis/appdata/images/icons/plot.png differ
diff --git a/isis/appdata/images/icons/plot_clear.png b/isis/appdata/images/icons/plot_clear.png
new file mode 100644
index 0000000000..091390a610
Binary files /dev/null and b/isis/appdata/images/icons/plot_clear.png differ
diff --git a/isis/appdata/images/icons/plot_configure.png b/isis/appdata/images/icons/plot_configure.png
new file mode 100644
index 0000000000..044cdf7335
Binary files /dev/null and b/isis/appdata/images/icons/plot_configure.png differ
diff --git a/isis/appdata/images/icons/plot_copy.png b/isis/appdata/images/icons/plot_copy.png
new file mode 100644
index 0000000000..73b0b281be
Binary files /dev/null and b/isis/appdata/images/icons/plot_copy.png differ
diff --git a/isis/appdata/images/icons/plot_grid.png b/isis/appdata/images/icons/plot_grid.png
new file mode 100644
index 0000000000..4001b35caf
Binary files /dev/null and b/isis/appdata/images/icons/plot_grid.png differ
diff --git a/isis/appdata/images/icons/plot_hideCurves.png b/isis/appdata/images/icons/plot_hideCurves.png
new file mode 100644
index 0000000000..2c73bd57f8
Binary files /dev/null and b/isis/appdata/images/icons/plot_hideCurves.png differ
diff --git a/isis/appdata/images/icons/plot_markers.png b/isis/appdata/images/icons/plot_markers.png
new file mode 100644
index 0000000000..f8cac1d3cc
Binary files /dev/null and b/isis/appdata/images/icons/plot_markers.png differ
diff --git a/isis/appdata/images/icons/plot_renameLabels.png b/isis/appdata/images/icons/plot_renameLabels.png
new file mode 100644
index 0000000000..f02cb1a66d
Binary files /dev/null and b/isis/appdata/images/icons/plot_renameLabels.png differ
diff --git a/isis/appdata/images/icons/plot_renameLables.png b/isis/appdata/images/icons/plot_renameLables.png
new file mode 100644
index 0000000000..dd35912a7d
Binary files /dev/null and b/isis/appdata/images/icons/plot_renameLables.png differ
diff --git a/isis/appdata/images/icons/plot_resetscale.png b/isis/appdata/images/icons/plot_resetscale.png
new file mode 100644
index 0000000000..d1ce46ef2f
Binary files /dev/null and b/isis/appdata/images/icons/plot_resetscale.png differ
diff --git a/isis/appdata/images/icons/plot_setScale.png b/isis/appdata/images/icons/plot_setScale.png
new file mode 100644
index 0000000000..4c2bf24265
Binary files /dev/null and b/isis/appdata/images/icons/plot_setScale.png differ
diff --git a/isis/appdata/images/icons/plot_showCurves.png b/isis/appdata/images/icons/plot_showCurves.png
new file mode 100644
index 0000000000..d8ffb46715
Binary files /dev/null and b/isis/appdata/images/icons/plot_showCurves.png differ
diff --git a/isis/appdata/images/icons/plot_switchBackgrd.png b/isis/appdata/images/icons/plot_switchBackgrd.png
new file mode 100644
index 0000000000..688b71196a
Binary files /dev/null and b/isis/appdata/images/icons/plot_switchBackgrd.png differ
diff --git a/isis/appdata/images/icons/plot_table.png b/isis/appdata/images/icons/plot_table.png
new file mode 100644
index 0000000000..80df188ae5
Binary files /dev/null and b/isis/appdata/images/icons/plot_table.png differ
diff --git a/isis/appdata/images/icons/preferences-desktop-launch-feedback.png b/isis/appdata/images/icons/preferences-desktop-launch-feedback.png
new file mode 100644
index 0000000000..8a80d44686
Binary files /dev/null and b/isis/appdata/images/icons/preferences-desktop-launch-feedback.png differ
diff --git a/isis/appdata/images/icons/preferences-plugin.png b/isis/appdata/images/icons/preferences-plugin.png
new file mode 100644
index 0000000000..5c8af7d213
Binary files /dev/null and b/isis/appdata/images/icons/preferences-plugin.png differ
diff --git a/isis/appdata/images/icons/qmos_area.png b/isis/appdata/images/icons/qmos_area.png
new file mode 100644
index 0000000000..2cd4bf4e2c
Binary files /dev/null and b/isis/appdata/images/icons/qmos_area.png differ
diff --git a/isis/appdata/images/icons/quickopen.png b/isis/appdata/images/icons/quickopen.png
new file mode 100644
index 0000000000..813a1ce088
Binary files /dev/null and b/isis/appdata/images/icons/quickopen.png differ
diff --git a/isis/appdata/images/icons/qview_NoWarning.png b/isis/appdata/images/icons/qview_NoWarning.png
new file mode 100644
index 0000000000..19dcf363dd
Binary files /dev/null and b/isis/appdata/images/icons/qview_NoWarning.png differ
diff --git a/isis/appdata/images/icons/qview_Warning.png b/isis/appdata/images/icons/qview_Warning.png
new file mode 100644
index 0000000000..098e275302
Binary files /dev/null and b/isis/appdata/images/icons/qview_Warning.png differ
diff --git a/isis/appdata/images/icons/qview_angle.png b/isis/appdata/images/icons/qview_angle.png
new file mode 100644
index 0000000000..99ab069cb0
Binary files /dev/null and b/isis/appdata/images/icons/qview_angle.png differ
diff --git a/isis/appdata/images/icons/qview_circle.png b/isis/appdata/images/icons/qview_circle.png
new file mode 100644
index 0000000000..3792c572f2
Binary files /dev/null and b/isis/appdata/images/icons/qview_circle.png differ
diff --git a/isis/appdata/images/icons/qview_ellipse.png b/isis/appdata/images/icons/qview_ellipse.png
new file mode 100644
index 0000000000..192204e7f3
Binary files /dev/null and b/isis/appdata/images/icons/qview_ellipse.png differ
diff --git a/isis/appdata/images/icons/qview_line.png b/isis/appdata/images/icons/qview_line.png
new file mode 100644
index 0000000000..6cc2070fc3
Binary files /dev/null and b/isis/appdata/images/icons/qview_line.png differ
diff --git a/isis/appdata/images/icons/qview_polygon.png b/isis/appdata/images/icons/qview_polygon.png
new file mode 100644
index 0000000000..7f8def5b06
Binary files /dev/null and b/isis/appdata/images/icons/qview_polygon.png differ
diff --git a/isis/appdata/images/icons/qview_rectangle.png b/isis/appdata/images/icons/qview_rectangle.png
new file mode 100644
index 0000000000..99a113be77
Binary files /dev/null and b/isis/appdata/images/icons/qview_rectangle.png differ
diff --git a/isis/appdata/images/icons/qview_rotated_rectangle.png b/isis/appdata/images/icons/qview_rotated_rectangle.png
new file mode 100644
index 0000000000..034d500574
Binary files /dev/null and b/isis/appdata/images/icons/qview_rotated_rectangle.png differ
diff --git a/isis/appdata/images/icons/qview_segmentedline.png b/isis/appdata/images/icons/qview_segmentedline.png
new file mode 100644
index 0000000000..394b0cdf0f
Binary files /dev/null and b/isis/appdata/images/icons/qview_segmentedline.png differ
diff --git a/isis/appdata/images/icons/rating.png b/isis/appdata/images/icons/rating.png
new file mode 100644
index 0000000000..488baf2b51
Binary files /dev/null and b/isis/appdata/images/icons/rating.png differ
diff --git a/isis/appdata/images/icons/redDot.png b/isis/appdata/images/icons/redDot.png
new file mode 100644
index 0000000000..11eba54c73
Binary files /dev/null and b/isis/appdata/images/icons/redDot.png differ
diff --git a/isis/appdata/images/icons/redo.png b/isis/appdata/images/icons/redo.png
new file mode 100644
index 0000000000..9280ed7231
Binary files /dev/null and b/isis/appdata/images/icons/redo.png differ
diff --git a/isis/appdata/images/icons/regional_stretch-2.png b/isis/appdata/images/icons/regional_stretch-2.png
new file mode 100644
index 0000000000..6d70d36842
Binary files /dev/null and b/isis/appdata/images/icons/regional_stretch-2.png differ
diff --git a/isis/appdata/images/icons/reload.png b/isis/appdata/images/icons/reload.png
new file mode 100644
index 0000000000..ca7f2fb8ea
Binary files /dev/null and b/isis/appdata/images/icons/reload.png differ
diff --git a/isis/appdata/images/icons/rgb.png b/isis/appdata/images/icons/rgb.png
new file mode 100644
index 0000000000..6229d0b232
Binary files /dev/null and b/isis/appdata/images/icons/rgb.png differ
diff --git a/isis/appdata/images/icons/savechips.png b/isis/appdata/images/icons/savechips.png
new file mode 100644
index 0000000000..880453fca9
Binary files /dev/null and b/isis/appdata/images/icons/savechips.png differ
diff --git a/isis/appdata/images/icons/scatterplot.png b/isis/appdata/images/icons/scatterplot.png
new file mode 100644
index 0000000000..219aa3ff8c
Binary files /dev/null and b/isis/appdata/images/icons/scatterplot.png differ
diff --git a/isis/appdata/images/icons/scatterplotalarming.png b/isis/appdata/images/icons/scatterplotalarming.png
new file mode 100644
index 0000000000..9b8faa373f
Binary files /dev/null and b/isis/appdata/images/icons/scatterplotalarming.png differ
diff --git a/isis/appdata/images/icons/scatterplotcontour.png b/isis/appdata/images/icons/scatterplotcontour.png
new file mode 100644
index 0000000000..e570240654
Binary files /dev/null and b/isis/appdata/images/icons/scatterplotcontour.png differ
diff --git a/isis/appdata/images/icons/sort.png b/isis/appdata/images/icons/sort.png
new file mode 100644
index 0000000000..0b6ff1795e
Binary files /dev/null and b/isis/appdata/images/icons/sort.png differ
diff --git a/isis/appdata/images/icons/spatial_plot.png b/isis/appdata/images/icons/spatial_plot.png
new file mode 100644
index 0000000000..642d39c055
Binary files /dev/null and b/isis/appdata/images/icons/spatial_plot.png differ
diff --git a/isis/appdata/images/icons/spectral_plot.png b/isis/appdata/images/icons/spectral_plot.png
new file mode 100644
index 0000000000..747557b15e
Binary files /dev/null and b/isis/appdata/images/icons/spectral_plot.png differ
diff --git a/isis/appdata/images/icons/statistics.png b/isis/appdata/images/icons/statistics.png
new file mode 100644
index 0000000000..1b43d98593
Binary files /dev/null and b/isis/appdata/images/icons/statistics.png differ
diff --git a/isis/appdata/images/icons/stock_draw-connector-with-arrows.png b/isis/appdata/images/icons/stock_draw-connector-with-arrows.png
new file mode 100644
index 0000000000..a9dbaf37c2
Binary files /dev/null and b/isis/appdata/images/icons/stock_draw-connector-with-arrows.png differ
diff --git a/isis/appdata/images/icons/stretch_global.png b/isis/appdata/images/icons/stretch_global.png
new file mode 100644
index 0000000000..f44dc3a0c6
Binary files /dev/null and b/isis/appdata/images/icons/stretch_global.png differ
diff --git a/isis/appdata/images/icons/sunshadow.png b/isis/appdata/images/icons/sunshadow.png
new file mode 100644
index 0000000000..ca0f7941e4
Binary files /dev/null and b/isis/appdata/images/icons/sunshadow.png differ
diff --git a/isis/appdata/images/icons/svg/application-exit.svgz b/isis/appdata/images/icons/svg/application-exit.svgz
new file mode 100644
index 0000000000..fda43f1b07
Binary files /dev/null and b/isis/appdata/images/icons/svg/application-exit.svgz differ
diff --git a/isis/appdata/images/icons/svg/applications-education-miscellaneous.svgz b/isis/appdata/images/icons/svg/applications-education-miscellaneous.svgz
new file mode 100644
index 0000000000..107877b3f6
Binary files /dev/null and b/isis/appdata/images/icons/svg/applications-education-miscellaneous.svgz differ
diff --git a/isis/appdata/images/icons/svg/applications-graphics.svgz b/isis/appdata/images/icons/svg/applications-graphics.svgz
new file mode 100644
index 0000000000..6576e0d33e
Binary files /dev/null and b/isis/appdata/images/icons/svg/applications-graphics.svgz differ
diff --git a/isis/appdata/images/icons/svg/applications-internet.svgz b/isis/appdata/images/icons/svg/applications-internet.svgz
new file mode 100644
index 0000000000..5b5b088125
Binary files /dev/null and b/isis/appdata/images/icons/svg/applications-internet.svgz differ
diff --git a/isis/appdata/images/icons/svg/applications-system.svgz b/isis/appdata/images/icons/svg/applications-system.svgz
new file mode 100644
index 0000000000..b29f3f72aa
Binary files /dev/null and b/isis/appdata/images/icons/svg/applications-system.svgz differ
diff --git a/isis/appdata/images/icons/svg/archive-extract.svgz b/isis/appdata/images/icons/svg/archive-extract.svgz
new file mode 100644
index 0000000000..3f0de14279
Binary files /dev/null and b/isis/appdata/images/icons/svg/archive-extract.svgz differ
diff --git a/isis/appdata/images/icons/svg/archive-insert-directory.svgz b/isis/appdata/images/icons/svg/archive-insert-directory.svgz
new file mode 100755
index 0000000000..4d125b8a7b
Binary files /dev/null and b/isis/appdata/images/icons/svg/archive-insert-directory.svgz differ
diff --git a/isis/appdata/images/icons/svg/back.svgz b/isis/appdata/images/icons/svg/back.svgz
new file mode 100644
index 0000000000..4ec58d07bd
Binary files /dev/null and b/isis/appdata/images/icons/svg/back.svgz differ
diff --git a/isis/appdata/images/icons/svg/blockdevice.svgz b/isis/appdata/images/icons/svg/blockdevice.svgz
new file mode 100644
index 0000000000..ea3d15696a
Binary files /dev/null and b/isis/appdata/images/icons/svg/blockdevice.svgz differ
diff --git a/isis/appdata/images/icons/svg/camera-photo.svgz b/isis/appdata/images/icons/svg/camera-photo.svgz
new file mode 100644
index 0000000000..955b476581
Binary files /dev/null and b/isis/appdata/images/icons/svg/camera-photo.svgz differ
diff --git a/isis/appdata/images/icons/svg/configure.svgz b/isis/appdata/images/icons/svg/configure.svgz
new file mode 100644
index 0000000000..4057e8d5c0
Binary files /dev/null and b/isis/appdata/images/icons/svg/configure.svgz differ
diff --git a/isis/appdata/images/icons/svg/contents2.svgz b/isis/appdata/images/icons/svg/contents2.svgz
new file mode 100644
index 0000000000..5b0c8f1e71
Binary files /dev/null and b/isis/appdata/images/icons/svg/contents2.svgz differ
diff --git a/isis/appdata/images/icons/svg/dialog-cancel.svgz b/isis/appdata/images/icons/svg/dialog-cancel.svgz
new file mode 100644
index 0000000000..34669ea594
Binary files /dev/null and b/isis/appdata/images/icons/svg/dialog-cancel.svgz differ
diff --git a/isis/appdata/images/icons/svg/dialog-ok-apply.svgz b/isis/appdata/images/icons/svg/dialog-ok-apply.svgz
new file mode 100644
index 0000000000..e62b4d0afe
Binary files /dev/null and b/isis/appdata/images/icons/svg/dialog-ok-apply.svgz differ
diff --git a/isis/appdata/images/icons/svg/dialog-warning.svgz b/isis/appdata/images/icons/svg/dialog-warning.svgz
new file mode 100644
index 0000000000..94faed909f
Binary files /dev/null and b/isis/appdata/images/icons/svg/dialog-warning.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-edit.svgz b/isis/appdata/images/icons/svg/document-edit.svgz
new file mode 100644
index 0000000000..ba96fde00b
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-edit.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-new.svgz b/isis/appdata/images/icons/svg/document-new.svgz
new file mode 100644
index 0000000000..8b08bf781d
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-new.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-open.svgz b/isis/appdata/images/icons/svg/document-open.svgz
new file mode 100644
index 0000000000..0f271f93aa
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-open.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-preview.svgz b/isis/appdata/images/icons/svg/document-preview.svgz
new file mode 100644
index 0000000000..5981786971
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-preview.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-print.svgz b/isis/appdata/images/icons/svg/document-print.svgz
new file mode 100644
index 0000000000..b63ee16bba
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-print.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-save-as.svgz b/isis/appdata/images/icons/svg/document-save-as.svgz
new file mode 100644
index 0000000000..5fdefb8f08
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-save-as.svgz differ
diff --git a/isis/appdata/images/icons/svg/document-save.svgz b/isis/appdata/images/icons/svg/document-save.svgz
new file mode 100644
index 0000000000..248589ba2d
Binary files /dev/null and b/isis/appdata/images/icons/svg/document-save.svgz differ
diff --git a/isis/appdata/images/icons/svg/down.svgz b/isis/appdata/images/icons/svg/down.svgz
new file mode 100644
index 0000000000..db6124913b
Binary files /dev/null and b/isis/appdata/images/icons/svg/down.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-arrow-back.svgz b/isis/appdata/images/icons/svg/draw-arrow-back.svgz
new file mode 100644
index 0000000000..37caf29fec
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-arrow-back.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-arrow-forward.svgz b/isis/appdata/images/icons/svg/draw-arrow-forward.svgz
new file mode 100644
index 0000000000..f6fdb3169d
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-arrow-forward.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-circle.svgz b/isis/appdata/images/icons/svg/draw-circle.svgz
new file mode 100644
index 0000000000..efea62eb1c
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-circle.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-ellipse.svgz b/isis/appdata/images/icons/svg/draw-ellipse.svgz
new file mode 100644
index 0000000000..2a7978f574
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-ellipse.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-freehand.svgz b/isis/appdata/images/icons/svg/draw-freehand.svgz
new file mode 100644
index 0000000000..0f048b7c12
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-freehand.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-polyline.svgz b/isis/appdata/images/icons/svg/draw-polyline.svgz
new file mode 100644
index 0000000000..a5c78245b3
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-polyline.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-rectangle.svgz b/isis/appdata/images/icons/svg/draw-rectangle.svgz
new file mode 100644
index 0000000000..8ba2f254ef
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-rectangle.svgz differ
diff --git a/isis/appdata/images/icons/svg/draw-triangle3.svgz b/isis/appdata/images/icons/svg/draw-triangle3.svgz
new file mode 100644
index 0000000000..59e6d75bb5
Binary files /dev/null and b/isis/appdata/images/icons/svg/draw-triangle3.svgz differ
diff --git a/isis/appdata/images/icons/svg/edit-copy.svgz b/isis/appdata/images/icons/svg/edit-copy.svgz
new file mode 100644
index 0000000000..5ced6bffcb
Binary files /dev/null and b/isis/appdata/images/icons/svg/edit-copy.svgz differ
diff --git a/isis/appdata/images/icons/svg/edit-delete.svgz b/isis/appdata/images/icons/svg/edit-delete.svgz
new file mode 100644
index 0000000000..73b61b5318
Binary files /dev/null and b/isis/appdata/images/icons/svg/edit-delete.svgz differ
diff --git a/isis/appdata/images/icons/svg/edit-find.svgz b/isis/appdata/images/icons/svg/edit-find.svgz
new file mode 100644
index 0000000000..caf3626f34
Binary files /dev/null and b/isis/appdata/images/icons/svg/edit-find.svgz differ
diff --git a/isis/appdata/images/icons/svg/edit-paste.svgz b/isis/appdata/images/icons/svg/edit-paste.svgz
new file mode 100644
index 0000000000..0f20e5de15
Binary files /dev/null and b/isis/appdata/images/icons/svg/edit-paste.svgz differ
diff --git a/isis/appdata/images/icons/svg/edit-select.svgz b/isis/appdata/images/icons/svg/edit-select.svgz
new file mode 100644
index 0000000000..1f17362961
Binary files /dev/null and b/isis/appdata/images/icons/svg/edit-select.svgz differ
diff --git a/isis/appdata/images/icons/svg/fileclose.svgz b/isis/appdata/images/icons/svg/fileclose.svgz
new file mode 100644
index 0000000000..dfc014ee5e
Binary files /dev/null and b/isis/appdata/images/icons/svg/fileclose.svgz differ
diff --git a/isis/appdata/images/icons/svg/fill-color.svgz b/isis/appdata/images/icons/svg/fill-color.svgz
new file mode 100644
index 0000000000..efc4ad4abe
Binary files /dev/null and b/isis/appdata/images/icons/svg/fill-color.svgz differ
diff --git a/isis/appdata/images/icons/svg/folder-activities.svgz b/isis/appdata/images/icons/svg/folder-activities.svgz
new file mode 100644
index 0000000000..a1fb24d978
Binary files /dev/null and b/isis/appdata/images/icons/svg/folder-activities.svgz differ
diff --git a/isis/appdata/images/icons/svg/folder-image.svgz b/isis/appdata/images/icons/svg/folder-image.svgz
new file mode 100644
index 0000000000..a9c3a0c1fc
Binary files /dev/null and b/isis/appdata/images/icons/svg/folder-image.svgz differ
diff --git a/isis/appdata/images/icons/svg/folder-orange.svgz b/isis/appdata/images/icons/svg/folder-orange.svgz
new file mode 100644
index 0000000000..ccf6d2b6ac
Binary files /dev/null and b/isis/appdata/images/icons/svg/folder-orange.svgz differ
diff --git a/isis/appdata/images/icons/svg/folder-red.svgz b/isis/appdata/images/icons/svg/folder-red.svgz
new file mode 100644
index 0000000000..4b650bfd6d
Binary files /dev/null and b/isis/appdata/images/icons/svg/folder-red.svgz differ
diff --git a/isis/appdata/images/icons/svg/folder-remote.svgz b/isis/appdata/images/icons/svg/folder-remote.svgz
new file mode 100644
index 0000000000..4a457dc87d
Binary files /dev/null and b/isis/appdata/images/icons/svg/folder-remote.svgz differ
diff --git a/isis/appdata/images/icons/svg/folder.svgz b/isis/appdata/images/icons/svg/folder.svgz
new file mode 100644
index 0000000000..dadafd678c
Binary files /dev/null and b/isis/appdata/images/icons/svg/folder.svgz differ
diff --git a/isis/appdata/images/icons/svg/forward.svgz b/isis/appdata/images/icons/svg/forward.svgz
new file mode 100644
index 0000000000..8759b4f64e
Binary files /dev/null and b/isis/appdata/images/icons/svg/forward.svgz differ
diff --git a/isis/appdata/images/icons/svg/get-hot-new-stuff.svgz b/isis/appdata/images/icons/svg/get-hot-new-stuff.svgz
new file mode 100644
index 0000000000..b776917c72
Binary files /dev/null and b/isis/appdata/images/icons/svg/get-hot-new-stuff.svgz differ
diff --git a/isis/appdata/images/icons/svg/help-contents.svgz b/isis/appdata/images/icons/svg/help-contents.svgz
new file mode 100644
index 0000000000..bedd9357c4
Binary files /dev/null and b/isis/appdata/images/icons/svg/help-contents.svgz differ
diff --git a/isis/appdata/images/icons/svg/input-mouse.svgz b/isis/appdata/images/icons/svg/input-mouse.svgz
new file mode 100644
index 0000000000..d0b09295ad
Binary files /dev/null and b/isis/appdata/images/icons/svg/input-mouse.svgz differ
diff --git a/isis/appdata/images/icons/svg/kchart.svgz b/isis/appdata/images/icons/svg/kchart.svgz
new file mode 100644
index 0000000000..fd65f6aa48
Binary files /dev/null and b/isis/appdata/images/icons/svg/kchart.svgz differ
diff --git a/isis/appdata/images/icons/svg/layer-visible-on.svgz b/isis/appdata/images/icons/svg/layer-visible-on.svgz
new file mode 100644
index 0000000000..e1f1ce0e50
Binary files /dev/null and b/isis/appdata/images/icons/svg/layer-visible-on.svgz differ
diff --git a/isis/appdata/images/icons/svg/list-add.svgz b/isis/appdata/images/icons/svg/list-add.svgz
new file mode 100644
index 0000000000..30e4989370
Binary files /dev/null and b/isis/appdata/images/icons/svg/list-add.svgz differ
diff --git a/isis/appdata/images/icons/svg/mail-attachment.svgz b/isis/appdata/images/icons/svg/mail-attachment.svgz
new file mode 100644
index 0000000000..6c72fd09e7
Binary files /dev/null and b/isis/appdata/images/icons/svg/mail-attachment.svgz differ
diff --git a/isis/appdata/images/icons/svg/mail-reply-sender.svgz b/isis/appdata/images/icons/svg/mail-reply-sender.svgz
new file mode 100644
index 0000000000..c6196b0c9d
Binary files /dev/null and b/isis/appdata/images/icons/svg/mail-reply-sender.svgz differ
diff --git a/isis/appdata/images/icons/svg/mail-tagged.svgz b/isis/appdata/images/icons/svg/mail-tagged.svgz
new file mode 100644
index 0000000000..ba01257b2a
Binary files /dev/null and b/isis/appdata/images/icons/svg/mail-tagged.svgz differ
diff --git a/isis/appdata/images/icons/svg/media-playback-start.svgz b/isis/appdata/images/icons/svg/media-playback-start.svgz
new file mode 100644
index 0000000000..74fb62464d
Binary files /dev/null and b/isis/appdata/images/icons/svg/media-playback-start.svgz differ
diff --git a/isis/appdata/images/icons/svg/media-playback-stop.svgz b/isis/appdata/images/icons/svg/media-playback-stop.svgz
new file mode 100644
index 0000000000..696c667eec
Binary files /dev/null and b/isis/appdata/images/icons/svg/media-playback-stop.svgz differ
diff --git a/isis/appdata/images/icons/svg/media-seek-backward.svgz b/isis/appdata/images/icons/svg/media-seek-backward.svgz
new file mode 100644
index 0000000000..4db5d5c723
Binary files /dev/null and b/isis/appdata/images/icons/svg/media-seek-backward.svgz differ
diff --git a/isis/appdata/images/icons/svg/media-seek-forward.svgz b/isis/appdata/images/icons/svg/media-seek-forward.svgz
new file mode 100644
index 0000000000..71a2260cbc
Binary files /dev/null and b/isis/appdata/images/icons/svg/media-seek-forward.svgz differ
diff --git a/isis/appdata/images/icons/svg/network-connect.svgz b/isis/appdata/images/icons/svg/network-connect.svgz
new file mode 100644
index 0000000000..564e2d9655
Binary files /dev/null and b/isis/appdata/images/icons/svg/network-connect.svgz differ
diff --git a/isis/appdata/images/icons/svg/network-disconnect.svgz b/isis/appdata/images/icons/svg/network-disconnect.svgz
new file mode 100644
index 0000000000..f4c6628f31
Binary files /dev/null and b/isis/appdata/images/icons/svg/network-disconnect.svgz differ
diff --git a/isis/appdata/images/icons/svg/network-server-database.svgz b/isis/appdata/images/icons/svg/network-server-database.svgz
new file mode 100644
index 0000000000..664f4e530b
Binary files /dev/null and b/isis/appdata/images/icons/svg/network-server-database.svgz differ
diff --git a/isis/appdata/images/icons/svg/office-chart-line.svgz b/isis/appdata/images/icons/svg/office-chart-line.svgz
new file mode 100644
index 0000000000..11e16548e6
Binary files /dev/null and b/isis/appdata/images/icons/svg/office-chart-line.svgz differ
diff --git a/isis/appdata/images/icons/svg/office-chart-pie.svgz b/isis/appdata/images/icons/svg/office-chart-pie.svgz
new file mode 100755
index 0000000000..ef1471cc9d
Binary files /dev/null and b/isis/appdata/images/icons/svg/office-chart-pie.svgz differ
diff --git a/isis/appdata/images/icons/svg/preferences-desktop-launch-feedback.svgz b/isis/appdata/images/icons/svg/preferences-desktop-launch-feedback.svgz
new file mode 100644
index 0000000000..28aea323b4
Binary files /dev/null and b/isis/appdata/images/icons/svg/preferences-desktop-launch-feedback.svgz differ
diff --git a/isis/appdata/images/icons/svg/preferences-plugin.svgz b/isis/appdata/images/icons/svg/preferences-plugin.svgz
new file mode 100644
index 0000000000..3a952a23bd
Binary files /dev/null and b/isis/appdata/images/icons/svg/preferences-plugin.svgz differ
diff --git a/isis/appdata/images/icons/svg/process-stop.svgz b/isis/appdata/images/icons/svg/process-stop.svgz
new file mode 100644
index 0000000000..9f4246a1d0
Binary files /dev/null and b/isis/appdata/images/icons/svg/process-stop.svgz differ
diff --git a/isis/appdata/images/icons/svg/project-open.svgz b/isis/appdata/images/icons/svg/project-open.svgz
new file mode 100644
index 0000000000..71044a55bd
Binary files /dev/null and b/isis/appdata/images/icons/svg/project-open.svgz differ
diff --git a/isis/appdata/images/icons/svg/quickopen.svgz b/isis/appdata/images/icons/svg/quickopen.svgz
new file mode 100644
index 0000000000..a155627c5f
Binary files /dev/null and b/isis/appdata/images/icons/svg/quickopen.svgz differ
diff --git a/isis/appdata/images/icons/svg/rating.svgz b/isis/appdata/images/icons/svg/rating.svgz
new file mode 100644
index 0000000000..4b188a445a
Binary files /dev/null and b/isis/appdata/images/icons/svg/rating.svgz differ
diff --git a/isis/appdata/images/icons/svg/reload.svgz b/isis/appdata/images/icons/svg/reload.svgz
new file mode 100644
index 0000000000..b171400114
Binary files /dev/null and b/isis/appdata/images/icons/svg/reload.svgz differ
diff --git a/isis/appdata/images/icons/svg/system-help.svgz b/isis/appdata/images/icons/svg/system-help.svgz
new file mode 100644
index 0000000000..4089a61156
Binary files /dev/null and b/isis/appdata/images/icons/svg/system-help.svgz differ
diff --git a/isis/appdata/images/icons/svg/transform-crop.svgz b/isis/appdata/images/icons/svg/transform-crop.svgz
new file mode 100644
index 0000000000..b6a0a820f1
Binary files /dev/null and b/isis/appdata/images/icons/svg/transform-crop.svgz differ
diff --git a/isis/appdata/images/icons/svg/transform-move.svgz b/isis/appdata/images/icons/svg/transform-move.svgz
new file mode 100644
index 0000000000..082700fc99
Binary files /dev/null and b/isis/appdata/images/icons/svg/transform-move.svgz differ
diff --git a/isis/appdata/images/icons/svg/up.svgz b/isis/appdata/images/icons/svg/up.svgz
new file mode 100644
index 0000000000..3811f8d421
Binary files /dev/null and b/isis/appdata/images/icons/svg/up.svgz differ
diff --git a/isis/appdata/images/icons/svg/user-online.svgz b/isis/appdata/images/icons/svg/user-online.svgz
new file mode 100644
index 0000000000..0e790d0b3d
Binary files /dev/null and b/isis/appdata/images/icons/svg/user-online.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-close.svgz b/isis/appdata/images/icons/svg/view-close.svgz
new file mode 100644
index 0000000000..d6216e98e2
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-close.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-form-table.svgz b/isis/appdata/images/icons/svg/view-form-table.svgz
new file mode 100644
index 0000000000..59244eb7c0
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-form-table.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-fullscreen.svgz b/isis/appdata/images/icons/svg/view-fullscreen.svgz
new file mode 100644
index 0000000000..0314f56457
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-fullscreen.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-list-text.svgz b/isis/appdata/images/icons/svg/view-list-text.svgz
new file mode 100644
index 0000000000..53914652c1
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-list-text.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-list-tree.svgz b/isis/appdata/images/icons/svg/view-list-tree.svgz
new file mode 100644
index 0000000000..c94b6c02c3
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-list-tree.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-object-histogram-linear.svgz b/isis/appdata/images/icons/svg/view-object-histogram-linear.svgz
new file mode 100644
index 0000000000..92376f75cc
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-object-histogram-linear.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-preview.svgz b/isis/appdata/images/icons/svg/view-preview.svgz
new file mode 100644
index 0000000000..536df4cd8a
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-preview.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-sort-ascending.svgz b/isis/appdata/images/icons/svg/view-sort-ascending.svgz
new file mode 100644
index 0000000000..4e7d8e2b23
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-sort-ascending.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-split-top-bottom.svgz b/isis/appdata/images/icons/svg/view-split-top-bottom.svgz
new file mode 100644
index 0000000000..4588a09060
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-split-top-bottom.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-statistics.svgz b/isis/appdata/images/icons/svg/view-statistics.svgz
new file mode 100644
index 0000000000..f9d3c9ccc0
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-statistics.svgz differ
diff --git a/isis/appdata/images/icons/svg/view-web-browser-dom-tree.svgz b/isis/appdata/images/icons/svg/view-web-browser-dom-tree.svgz
new file mode 100644
index 0000000000..e6d0b7ce8f
Binary files /dev/null and b/isis/appdata/images/icons/svg/view-web-browser-dom-tree.svgz differ
diff --git a/isis/appdata/images/icons/svg/weather-clear-night.svgz b/isis/appdata/images/icons/svg/weather-clear-night.svgz
new file mode 100644
index 0000000000..f3163c3bb9
Binary files /dev/null and b/isis/appdata/images/icons/svg/weather-clear-night.svgz differ
diff --git a/isis/appdata/images/icons/svg/weather-clear.svgz b/isis/appdata/images/icons/svg/weather-clear.svgz
new file mode 100644
index 0000000000..be91f368a5
Binary files /dev/null and b/isis/appdata/images/icons/svg/weather-clear.svgz differ
diff --git a/isis/appdata/images/icons/svg/weather-freezing-rain.svgz b/isis/appdata/images/icons/svg/weather-freezing-rain.svgz
new file mode 100644
index 0000000000..5bca8ce033
Binary files /dev/null and b/isis/appdata/images/icons/svg/weather-freezing-rain.svgz differ
diff --git a/isis/appdata/images/icons/svg/window-duplicate.svgz b/isis/appdata/images/icons/svg/window-duplicate.svgz
new file mode 100644
index 0000000000..2b886c1230
Binary files /dev/null and b/isis/appdata/images/icons/svg/window-duplicate.svgz differ
diff --git a/isis/appdata/images/icons/svg/window-new.svgz b/isis/appdata/images/icons/svg/window-new.svgz
new file mode 100644
index 0000000000..02ff2fdad6
Binary files /dev/null and b/isis/appdata/images/icons/svg/window-new.svgz differ
diff --git a/isis/appdata/images/icons/svg/zoom-in.svgz b/isis/appdata/images/icons/svg/zoom-in.svgz
new file mode 100644
index 0000000000..b670e12468
Binary files /dev/null and b/isis/appdata/images/icons/svg/zoom-in.svgz differ
diff --git a/isis/appdata/images/icons/svg/zoom-original.svgz b/isis/appdata/images/icons/svg/zoom-original.svgz
new file mode 100644
index 0000000000..8eb8564a88
Binary files /dev/null and b/isis/appdata/images/icons/svg/zoom-original.svgz differ
diff --git a/isis/appdata/images/icons/svg/zoom-out.svgz b/isis/appdata/images/icons/svg/zoom-out.svgz
new file mode 100644
index 0000000000..744366ad3a
Binary files /dev/null and b/isis/appdata/images/icons/svg/zoom-out.svgz differ
diff --git a/isis/appdata/images/icons/svg/zoom-select.svgz b/isis/appdata/images/icons/svg/zoom-select.svgz
new file mode 100644
index 0000000000..9dd502b3b3
Binary files /dev/null and b/isis/appdata/images/icons/svg/zoom-select.svgz differ
diff --git a/isis/appdata/images/icons/undo.png b/isis/appdata/images/icons/undo.png
new file mode 100644
index 0000000000..7dc83117fe
Binary files /dev/null and b/isis/appdata/images/icons/undo.png differ
diff --git a/isis/appdata/images/icons/unlinked.png b/isis/appdata/images/icons/unlinked.png
new file mode 100644
index 0000000000..8e45fc56fb
Binary files /dev/null and b/isis/appdata/images/icons/unlinked.png differ
diff --git a/isis/appdata/images/icons/up.png b/isis/appdata/images/icons/up.png
new file mode 100644
index 0000000000..efa12d018a
Binary files /dev/null and b/isis/appdata/images/icons/up.png differ
diff --git a/isis/appdata/images/icons/view-catalog.png b/isis/appdata/images/icons/view-catalog.png
new file mode 100644
index 0000000000..8a3d740377
Binary files /dev/null and b/isis/appdata/images/icons/view-catalog.png differ
diff --git a/isis/appdata/images/icons/view-preview.png b/isis/appdata/images/icons/view-preview.png
new file mode 100644
index 0000000000..ccc569323d
Binary files /dev/null and b/isis/appdata/images/icons/view-preview.png differ
diff --git a/isis/appdata/images/icons/view-web-browser-dom-tree.png b/isis/appdata/images/icons/view-web-browser-dom-tree.png
new file mode 100644
index 0000000000..f0a0de4b15
Binary files /dev/null and b/isis/appdata/images/icons/view-web-browser-dom-tree.png differ
diff --git a/isis/appdata/images/icons/view_text.png b/isis/appdata/images/icons/view_text.png
new file mode 100644
index 0000000000..6231f0965c
Binary files /dev/null and b/isis/appdata/images/icons/view_text.png differ
diff --git a/isis/appdata/images/icons/view_tree.png b/isis/appdata/images/icons/view_tree.png
new file mode 100644
index 0000000000..a61d31c55c
Binary files /dev/null and b/isis/appdata/images/icons/view_tree.png differ
diff --git a/isis/appdata/images/icons/viewmag+.png b/isis/appdata/images/icons/viewmag+.png
new file mode 100644
index 0000000000..50ca6a0227
Binary files /dev/null and b/isis/appdata/images/icons/viewmag+.png differ
diff --git a/isis/appdata/images/icons/viewmag-.png b/isis/appdata/images/icons/viewmag-.png
new file mode 100644
index 0000000000..95325c968a
Binary files /dev/null and b/isis/appdata/images/icons/viewmag-.png differ
diff --git a/isis/appdata/images/icons/viewmag.png b/isis/appdata/images/icons/viewmag.png
new file mode 100644
index 0000000000..34955c41e8
Binary files /dev/null and b/isis/appdata/images/icons/viewmag.png differ
diff --git a/isis/appdata/images/icons/viewmag1.png b/isis/appdata/images/icons/viewmag1.png
new file mode 100644
index 0000000000..9ac87b8e37
Binary files /dev/null and b/isis/appdata/images/icons/viewmag1.png differ
diff --git a/isis/appdata/images/icons/viewmagfit.png b/isis/appdata/images/icons/viewmagfit.png
new file mode 100644
index 0000000000..4d90195c2f
Binary files /dev/null and b/isis/appdata/images/icons/viewmagfit.png differ
diff --git a/isis/appdata/images/icons/weather-clear-night.png b/isis/appdata/images/icons/weather-clear-night.png
new file mode 100644
index 0000000000..beeaa49989
Binary files /dev/null and b/isis/appdata/images/icons/weather-clear-night.png differ
diff --git a/isis/appdata/images/icons/window_fullscreen.png b/isis/appdata/images/icons/window_fullscreen.png
new file mode 100644
index 0000000000..463e388269
Binary files /dev/null and b/isis/appdata/images/icons/window_fullscreen.png differ
diff --git a/isis/appdata/images/icons/window_list.png b/isis/appdata/images/icons/window_list.png
new file mode 100644
index 0000000000..4a7f15d408
Binary files /dev/null and b/isis/appdata/images/icons/window_list.png differ
diff --git a/isis/appdata/images/icons/window_new.png b/isis/appdata/images/icons/window_new.png
new file mode 100644
index 0000000000..d319eaacbe
Binary files /dev/null and b/isis/appdata/images/icons/window_new.png differ
diff --git a/isis/appdata/images/targets/DELETEME.png b/isis/appdata/images/targets/DELETEME.png
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/isis/appdata/images/targets/DELETEME.txt b/isis/appdata/images/targets/DELETEME.txt
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/isis/appdata/images/targets/ReadMe.txt b/isis/appdata/images/targets/ReadMe.txt
new file mode 100644
index 0000000000..4070dfad3e
--- /dev/null
+++ b/isis/appdata/images/targets/ReadMe.txt
@@ -0,0 +1,5 @@
+Images in this directory are used by IPCE in the Target/Sensor info wigdets.
+
+All images beginning with "nasa_" have been adapted from images provided by NASA. You can review NASA's Media Usage Guidelines at:
+
+ https://www.nasa.gov/multimedia/guidelines/index.html
\ No newline at end of file
diff --git a/isis/appdata/images/targets/nasa_enceladus_saturn.png b/isis/appdata/images/targets/nasa_enceladus_saturn.png
new file mode 100644
index 0000000000..e732a6381a
Binary files /dev/null and b/isis/appdata/images/targets/nasa_enceladus_saturn.png differ
diff --git a/isis/appdata/images/targets/nasa_europa_large.png b/isis/appdata/images/targets/nasa_europa_large.png
new file mode 100644
index 0000000000..ffffb4911c
Binary files /dev/null and b/isis/appdata/images/targets/nasa_europa_large.png differ
diff --git a/isis/appdata/images/targets/nasa_mars_large.png b/isis/appdata/images/targets/nasa_mars_large.png
new file mode 100644
index 0000000000..01a8ddeec2
Binary files /dev/null and b/isis/appdata/images/targets/nasa_mars_large.png differ
diff --git a/isis/appdata/images/targets/nasa_moon_large.png b/isis/appdata/images/targets/nasa_moon_large.png
new file mode 100644
index 0000000000..9b7a7a1445
Binary files /dev/null and b/isis/appdata/images/targets/nasa_moon_large.png differ
diff --git a/isis/appdata/images/targets/nasa_titan_large.png b/isis/appdata/images/targets/nasa_titan_large.png
new file mode 100644
index 0000000000..4498fc4a68
Binary files /dev/null and b/isis/appdata/images/targets/nasa_titan_large.png differ
diff --git a/isis/appdata/serialnumbers/FAKE.trn b/isis/appdata/serialnumbers/FAKE.trn
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/isis/appdata/serialnumbers/SerialNumber.trn b/isis/appdata/serialnumbers/SerialNumber.trn
new file mode 100644
index 0000000000..445f414369
--- /dev/null
+++ b/isis/appdata/serialnumbers/SerialNumber.trn
@@ -0,0 +1,30 @@
+Group = Keyword1
+ Auto
+ InputKey = SpacecraftName
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword1
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+
+Group = Keyword2
+ Auto
+ InputKey = InstrumentId
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword2
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+
+Group = Keyword3
+ Auto
+ InputKey = SpacecraftClockCount
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword3
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/serialnumbers/aerialphotoSerialNumber.trn b/isis/appdata/serialnumbers/aerialphotoSerialNumber.trn
new file mode 100644
index 0000000000..75ab7156a4
--- /dev/null
+++ b/isis/appdata/serialnumbers/aerialphotoSerialNumber.trn
@@ -0,0 +1,50 @@
+Group = Keyword1
+ Auto
+ InputKey = SpacecraftName
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword1
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+
+Group = Keyword2
+ Auto
+ InputKey = InstrumentId
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword2
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+
+Group = Keyword3
+ Auto
+ InputKey = ProductId
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ OutputName = Keyword3
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+
+Group = Keyword4
+ Auto
+ InputKey = EstimatedCenterLatitude
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword4
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+
+Group = Keyword5
+ Auto
+ InputKey = EstimatedCenterLongitude
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ OutputName = Keyword5
+ OutputPosition = (Group, SerialNumberKeywords)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/templates/DELETEME.pvl b/isis/appdata/templates/DELETEME.pvl
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/isis/appdata/translations/NaifErrors.trn b/isis/appdata/translations/NaifErrors.trn
new file mode 100644
index 0000000000..9304104cf8
--- /dev/null
+++ b/isis/appdata/translations/NaifErrors.trn
@@ -0,0 +1,23 @@
+# The groups listed here are generated by the NaifStatus class.
+# This translation table is used to convert naif error messages into
+# more readable errors inside an iException.
+#
+Group = ShortMessage
+ InputKey = ShortMessage
+ InputGroup = ErrorDescription
+ InputPosition = ErrorDescription
+
+ # Translation = ("EXPLANATION", "NAIFSHORT")
+ Translation = ("An empty string was passed into a naif routine.",
+ "SPICE(EMPTYSTRING)")
+ Translation = ("An time string that was either not a time(N/A) or
+ incorrectly formatted was passed into a naif routine.",
+ "SPICE(UNPARSEDTIME)")
+End_Group
+
+Group = LongMessage
+ InputKey = LongMessage
+ InputGroup = ErrorDescription
+ InputPosition = ErrorDescription
+End_Group
+End
diff --git a/isis/appdata/translations/README.TXT b/isis/appdata/translations/README.TXT
new file mode 100644
index 0000000000..ddc7661824
--- /dev/null
+++ b/isis/appdata/translations/README.TXT
@@ -0,0 +1,5 @@
+MissionName2DataDir.trn - Converts Mision names into the Isis3 preference name
+used to access mission specific data (e.g. space craft clock kernels). This file
+replaced Missions.trn as of Isis 3.1.12.
+
+pdsProjectionLineSampToXY_V2.def replaces pdsProjectionLineSampToXY.def for Isis version 3.5.1 and above. This has the corrected PDS offset data to fix bug m02244 "Pixel (Line/Sample) Projection Offset Issue".
diff --git a/isis/appdata/translations/geotiff/26910.trn b/isis/appdata/translations/geotiff/26910.trn
new file mode 100644
index 0000000000..7f381a72fd
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26910.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26910)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26910)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-123.0, 26910)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26910)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26910)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26910)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26910)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26910)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26910)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ utputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26910)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26910)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26910)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26911.trn b/isis/appdata/translations/geotiff/26911.trn
new file mode 100644
index 0000000000..ec82d1db45
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26911.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26911)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26911)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-117.0, 26911)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26911)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26911)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26911)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26911)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26911)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26911)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26911)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26911)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26911)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26912.trn b/isis/appdata/translations/geotiff/26912.trn
new file mode 100644
index 0000000000..5cf6a14d3b
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26912.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26912)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26912)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-111.0, 26912)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26912)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26912)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26912)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26912)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26912)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26912)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26912)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26912)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26912)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26913.trn b/isis/appdata/translations/geotiff/26913.trn
new file mode 100644
index 0000000000..abecfa568b
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26913.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26913)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26913)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-105.0, 26913)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26913)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26913)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26913)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26913)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26913)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26913)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26913)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26913)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26913)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26914.trn b/isis/appdata/translations/geotiff/26914.trn
new file mode 100644
index 0000000000..ad10da0c0b
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26914.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26914)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26914)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-99.0, 26914)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26914)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26914)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26914)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26914)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26914)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26914)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26914)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26914)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26914)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26915.trn b/isis/appdata/translations/geotiff/26915.trn
new file mode 100644
index 0000000000..89a8306706
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26915.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26915)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26915)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-93.0, 26915)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26915)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26915)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26915)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26915)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26915)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26915)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26915)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26915)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26915)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26916.trn b/isis/appdata/translations/geotiff/26916.trn
new file mode 100644
index 0000000000..55fdf9d392
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26916.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26916)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26916)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-87.0, 26916)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26916)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26916)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26916)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26916)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26916)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26916)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26916)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26916)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26916)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26917.trn b/isis/appdata/translations/geotiff/26917.trn
new file mode 100644
index 0000000000..19646ca779
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26917.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26917)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26917)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-81.0, 26917)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26917)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26917)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26917)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26917)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26917)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26917)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26917)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26917)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26917)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26918.trn b/isis/appdata/translations/geotiff/26918.trn
new file mode 100644
index 0000000000..b06f833600
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26918.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26918)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26918)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-75.0, 26918)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26918)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26918)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26918)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26918)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26918)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26918)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26918)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26918)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26918)
+End_Group
+
+End
diff --git a/isis/appdata/translations/geotiff/26919.trn b/isis/appdata/translations/geotiff/26919.trn
new file mode 100644
index 0000000000..55a7b94a6e
--- /dev/null
+++ b/isis/appdata/translations/geotiff/26919.trn
@@ -0,0 +1,106 @@
+# This translation file is used to convert a specific GeoTiff PCS code to an
+#ISIS Mapping label group.
+# NOTE: This needs to be generalized, so the data is not repeated in many
+# translations for the other codes
+
+Group = ProjectionName
+ Auto
+ InputKey = Code
+ OutputName = ProjectionName
+ OutputPosition = (Group, Mapping)
+ Translation = (TransverseMercator, 26919)
+End_Group
+
+Group = CenterLatitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26919)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = Code
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (-69.0, 26919)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = Code
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (0.9996, 26919)
+End_Group
+
+// NOTE: This translation only fills in the False Easting
+// The remainder of the X value comes from the Tiff tiepoint tag
+Group = FalseEasting
+ Auto
+ InputKey = Code
+ OutputName = FalseEasting
+ OutputPosition = (Group, Mapping)
+ Translation = (-500000.0, 26919)
+End_Group
+
+// NOTE: This translation only fills in the False Northing
+// The remainder of the Y value comes from the Tiff tiepoint tag
+Group = FalseNorthing
+ Auto
+ InputKey = Code
+ OutputName = FalseNorthing
+ OutputPosition = (Group, Mapping)
+ Translation = (0.0, 26919)
+End_Group
+
+Group = TargetName
+ Auto
+ InputKey = Code
+ OutputName = TargetName
+ OutputPosition = (Group, Mapping)
+ Translation = (Earth, 26919)
+End_Group
+
+Group = EquatorialRadius
+ Auto
+ InputKey = Code
+ OutputName = EquatorialRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6378137.00, 26919)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = Code
+ OutputName = PolarRadius
+ OutputPosition = (Group, Mapping)
+ Translation = (6356752.31, 26919)
+End_Group
+
+Group = LatitudeType
+ Auto
+ InputKey = Code
+ OutputName = LatitudeType
+ OutputPosition = (Group, Mapping)
+ Translation = (Planetographic, 26919)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDirection
+ OutputPosition = (Group, Mapping)
+ Translation = (PositiveEast, 26919)
+End_Group
+
+Group = LongitudeDomain
+ Auto
+ InputKey = Code
+ OutputName = LongitudeDomain
+ OutputPosition = (Group, Mapping)
+ Translation = (180, 26919)
+End_Group
+
+End
diff --git a/isis/appdata/translations/isis2bandbin.trn b/isis/appdata/translations/isis2bandbin.trn
new file mode 100644
index 0000000000..2d35f7266c
--- /dev/null
+++ b/isis/appdata/translations/isis2bandbin.trn
@@ -0,0 +1,44 @@
+Group = FilterName
+ Auto
+ Optional
+ InputKey = BAND_BIN_FILTER_NAME
+ InputGroup = "QUBE,BAND_BIN"
+ InputPosition = (QUBE, BAND_BIN)
+ OutputName = FilterName
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+Group = Center
+ Auto
+ Optional
+ InputKey = BAND_BIN_CENTER
+ InputGroup = "QUBE,BAND_BIN"
+ InputPosition = (QUBE, BAND_BIN)
+ OutputName = Center
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+Group = Width
+ Auto
+ Optional
+ InputKey = BAND_BIN_WIDTH
+ InputGroup = "QUBE,BAND_BIN"
+ InputPosition = (QUBE, BAND_BIN)
+ OutputName = Width
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+Group = OriginalBand
+ Auto
+ Optional
+ InputKey = BAND_BIN_ORIGINAL_BAND
+ InputGroup = "QUBE,BAND_BIN"
+ InputPosition = (QUBE, BAND_BIN)
+ OutputName = OriginalBand
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/isis2instrument.trn b/isis/appdata/translations/isis2instrument.trn
new file mode 100644
index 0000000000..87d50f9e3a
--- /dev/null
+++ b/isis/appdata/translations/isis2instrument.trn
@@ -0,0 +1,101 @@
+Group = TargetName
+ Auto
+ Optional
+ InputKey = TARGET_NAME
+ InputGroup = QUBE
+ InputPosition = QUBE
+ OutputName = TargetName
+ OutputPosition = (Group, Instrument)
+ Translation = (Adrastea, ADRASTEA)
+ Translation = (Amalthea, AMALTHEA)
+ Translation = (Ariel, ARIEL)
+ Translation = (Atlas, ATLAS)
+ Translation = (Callisto, CALLISTO)
+ Translation = (Calypso, CALYPSO)
+ Translation = (Daphnis, DAPHNIS)
+ Translation = (Deimos, DEIMOS)
+ Translation = (Dione, DIONE)
+ Translation = (Earth, EARTH)
+ Translation = (Enceladus, ENCELADUS)
+ Translation = (Epimetheus, EPIMETHEUS)
+ Translation = (Europa, EUROPA)
+ Translation = (Fomalhaut, FOMALHAUT)
+ Translation = (Ganymede, GANYMEDE)
+ Translation = (Helene, HELENE)
+ Translation = (Himalia, HIMALIA)
+ Translation = (Hyperion, HYPERION)
+ Translation = (Iapetus, IAPETUS)
+ Translation = (Io, IO)
+ Translation = (Janus, JANUS)
+ Translation = (Jupiter, JUPITER)
+ Translation = (JupiterRings, J_RINGS)
+ Translation = (Larissa, LARISSA)
+ Translation = (Mars, MARS)
+ Translation = (Mercury, MERCURY)
+ Translation = (Methone, METHONE)
+ Translation = (Metis, METIS)
+ Translation = (Mimas, MIMAS)
+ Translation = (Miranda, MIRANDA)
+ Translation = (Moon, MOON)
+ Translation = (Neptune, NEPTUNE)
+ Translation = (Nereid, NEREID)
+ Translation = (NeptuneRings, N_RINGS)
+ Translation = (Oberon, OBERON)
+ Translation = (Pallene, PALLENE)
+ Translation = (Pan, PAN)
+ Translation = (Pandora, PANDORA)
+ Translation = (Phobos, PHOBOS)
+ Translation = (Phoebe, PHOEBE)
+ Translation = (Polydeuces, POLYDEUCES)
+ Translation = (Prometheus, PROMETHEUS)
+ Translation = (Proteus, PROTEUS)
+ Translation = (Puck, PUCK)
+ Translation = (Rhea, RHEA)
+ Translation = (Saturn, SATURN)
+ Translation = (SaturnRings, S_RINGS)
+ Translation = (Sky, "DARK SKY")
+ Translation = (Spica, SPICA)
+ Translation = (Telesto, TELESTO)
+ Translation = (Tethys, TETHYS)
+ Translation = (Thebe, THEBE)
+ Translation = (Titan, TITAN)
+ Translation = (Titania, TITANIA)
+ Translation = (Triton, TRITON)
+ Translation = (Uranus, URANUS)
+ Translation = (Umbriel, UMBRIEL)
+ Translation = (Venus, VENUS)
+End_Group
+
+Group = SpacecraftName
+ Auto
+ Optional
+ InputKey = SPACECRAFT_NAME
+ InputGroup = QUBE
+ InputPosition = QUBE
+ OutputName = SpacecraftName
+ OutputPosition = (Group, Instrument)
+ Translation = ("CLEMENTINE 1", CLEMENTINE_1)
+End_Group
+
+Group = StartTime
+ Auto
+ Optional
+ InputKey = START_TIME
+ InputGroup = QUBE
+ InputPosition = QUBE
+ OutputName = StartTime
+ OutputPosition = (Group, Instrument)
+ Translation = (*, *)
+End_Group
+
+Group = InstrumentId
+ Auto
+ Optional
+ InputKey = INSTRUMENT_ID
+ InputGroup = QUBE
+ InputPosition = QUBE
+ OutputName = InstrumentId
+ OutputPosition = (Group, Instrument)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pds4Export.trn b/isis/appdata/translations/pds4Export.trn
new file mode 100644
index 0000000000..ee2448728d
--- /dev/null
+++ b/isis/appdata/translations/pds4Export.trn
@@ -0,0 +1,28 @@
+#Group = DisplayInformation
+# Auto
+# OutputSiblings = (disp:horizontal_display_axis|Sample, disp:vertical_display_axis|Line)
+## OutputSiblings = (disp:horizontal_display_axis|Sample, disp:horizontal_display_direction|"Left To Right", disp:vertical_display_axis|Line, disp:vertical_display_direction|"Top To Bottom")
+# OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings, disp:Display_Direction)
+# Translation = (*, *)
+#End_Group
+
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Line, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
diff --git a/isis/appdata/translations/pds4ExportArray2DImage.trn b/isis/appdata/translations/pds4ExportArray2DImage.trn
new file mode 100644
index 0000000000..a544ae75f4
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportArray2DImage.trn
@@ -0,0 +1,57 @@
+# Translates ISIS3 cube information to Array_2D_Image section of PDS4 label
+#
+# history 2018-05-11 Jeannie Backer - Original version.
+
+Group = ImageLocalId
+ Auto
+ InputDefault = Image_Array_Object
+ OutputName = local_identifier
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = OffsetBytes
+ Auto
+ InputDefault = 0
+ OutputName = offset
+ OutputAttributes = unit|byte
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = AxesCount
+ Auto
+ InputDefault = 2
+ OutputName = axes
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = AxisIndexOrder
+ Auto
+ InputDefault = "Last Index Fastest"
+ OutputName = axis_index_order
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Line, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
diff --git a/isis/appdata/translations/pds4ExportArray3DImage.trn b/isis/appdata/translations/pds4ExportArray3DImage.trn
new file mode 100644
index 0000000000..208044861f
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportArray3DImage.trn
@@ -0,0 +1,69 @@
+# Translates ISIS3 cube information to Array_3D_Image section of PDS4 label
+#
+# history 2017-11-03 Jeannie Backer - Original version.
+# history 2017-11-22 Jeannie Backer - Added ImageLocalId.
+
+Group = ImageLocalId
+ Auto
+ InputDefault = Image_Array_Object
+ OutputName = local_identifier
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = OffsetBytes
+ Auto
+ InputDefault = 0
+ OutputName = offset
+ OutputAttributes = unit|byte
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = AxesCount
+ Auto
+ InputDefault = 3
+ OutputName = axes
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = AxisIndexOrder
+ Auto
+ InputDefault = "Last Index Fastest"
+ OutputName = axis_index_order
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image)
+ Translation = (*, *)
+End_Group
+
+Group = Bands
+ Auto
+ InputKey = Bands
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Band, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Line, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|3)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+
diff --git a/isis/appdata/translations/pds4ExportArray3DSpectrum.trn b/isis/appdata/translations/pds4ExportArray3DSpectrum.trn
new file mode 100644
index 0000000000..987e79eb11
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportArray3DSpectrum.trn
@@ -0,0 +1,68 @@
+# Translates ISIS3 cube information to Array_3D_Spectrum section of PDS4 label
+#
+# history 2018-05-09 Jeannie Backer - Original version.
+
+Group = ImageLocalId
+ Auto
+ InputDefault = Spectral_Array_Object
+ OutputName = local_identifier
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = OffsetBytes
+ Auto
+ InputDefault = 0
+ OutputName = offset
+ OutputAttributes = unit|byte
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = AxesCount
+ Auto
+ InputDefault = 3
+ OutputName = axes
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = AxisIndexOrder
+ Auto
+ InputDefault = "Last Index Fastest"
+ OutputName = axis_index_order
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = Bands
+ Auto
+ InputKey = Bands
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Band, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Line, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|3)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+
diff --git a/isis/appdata/translations/pds4ExportArray3DSpectrumBinSet.trn b/isis/appdata/translations/pds4ExportArray3DSpectrumBinSet.trn
new file mode 100644
index 0000000000..987e79eb11
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportArray3DSpectrumBinSet.trn
@@ -0,0 +1,68 @@
+# Translates ISIS3 cube information to Array_3D_Spectrum section of PDS4 label
+#
+# history 2018-05-09 Jeannie Backer - Original version.
+
+Group = ImageLocalId
+ Auto
+ InputDefault = Spectral_Array_Object
+ OutputName = local_identifier
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = OffsetBytes
+ Auto
+ InputDefault = 0
+ OutputName = offset
+ OutputAttributes = unit|byte
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = AxesCount
+ Auto
+ InputDefault = 3
+ OutputName = axes
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = AxisIndexOrder
+ Auto
+ InputDefault = "Last Index Fastest"
+ OutputName = axis_index_order
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = Bands
+ Auto
+ InputKey = Bands
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Band, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Line, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|3)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+
diff --git a/isis/appdata/translations/pds4ExportArray3DSpectrumUniform.trn b/isis/appdata/translations/pds4ExportArray3DSpectrumUniform.trn
new file mode 100644
index 0000000000..6d5d0653e3
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportArray3DSpectrumUniform.trn
@@ -0,0 +1,77 @@
+# ISIS3 to PDS4 export of ISIS3 cube information to Array_3D_Spectrum
+# for uniformly sampled spectral arrays.
+#
+# Based on requirements and options specified in
+# https://pds.nasa.gov/datastandards/schema/released/sp/v1/PDS4_SP_1100.xsd
+# and https://pds.nasa.gov/datastandards/schema/released/sp/v1/PDS4_SP_1100.sch
+#
+# Spectral_Characteristics:Local_Internal_Reference:local_identifier_reference
+# = Array_3D_Spectrum:local_identifier
+# = Spectral_Array_Object
+#
+# history 2018-05-09 Jeannie Backer - Original version.
+
+Group = ImageLocalId
+ Auto
+ InputDefault = Spectral_Array_Object
+ OutputName = local_identifier
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = OffsetBytes
+ Auto
+ InputDefault = 0
+ OutputName = offset
+ OutputAttributes = unit|byte
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = AxesCount
+ Auto
+ InputDefault = 3
+ OutputName = axes
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = AxisIndexOrder
+ Auto
+ InputDefault = "Last Index Fastest"
+ OutputName = axis_index_order
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum)
+ Translation = (*, *)
+End_Group
+
+Group = Bands
+ Auto
+ InputKey = Bands
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Band, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Line, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|3)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_3D_Spectrum, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+
diff --git a/isis/appdata/translations/pds4ExportBandBin.trn b/isis/appdata/translations/pds4ExportBandBin.trn
new file mode 100644
index 0000000000..fc6bd006b4
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportBandBin.trn
@@ -0,0 +1,205 @@
+# Initial ISIS3 to PDS4 export of ISIS3 BandBin group to PDS4 sp
+#
+# Sections of an example PDS4 output label are included above the relevant translation groups
+#
+# history 2017-11-06 Kristin Berry - Original Version
+# history 2017-11-14 Jeannie Backer - Changed width and center to optional and added other
+# InputKeys to look for.
+# history 2017-11-15 Kristin Berry - Updated after more research into requirements.
+
+
+# The entire Spectral_Characteristics class is optional
+
+#
+#
+# Description
+#
+ Group = bin_width_desc
+ Auto
+ InputDefault = UNK
+ OutputName = sp:bin_width_desc
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics)
+ Translation = (*, *)
+ End_Group
+
+
+#
+# Spectral_Qube_Object
+# spectral_characteristics_to_array_object
+#
+
+Group = local_identifier_reference
+ Auto
+ InputDefault = UNK
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = local_reference_type
+ Auto
+ InputDefault = TBD
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+#
+#
+# Spectral_Cube_Object
+#
+#
+# spectral_characteristics_to_array_object
+#
+#
+
+
+Group = bin_set_local_identifier_reference
+ Auto
+ InputDefault = UNK
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# Needs val from enumeration
+Group = bin_set_local_reference_type
+ Auto
+ InputDefault = TBD
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+#
+# 1
+# 753.000
+# 20.000
+#
+# PANL2
+#
+#
+#
+# 2
+# 601.000
+# 17.000
+#
+# PANL4
+#
+#
+#
+# 3
+# 432.000
+# 32.000
+#
+# PANL7
+#
+#
+#
+# 4
+# 754.000
+# 20.000
+#
+# PANR2
+#
+#
+#
+# 5
+# 1009.000
+# 38.000
+#
+# PANR7
+#
+#
+#
+
+# NOT OPTIONAL TODO: FIX
+Group = bin_sequence_number
+ Auto
+ Optional
+ InputKey = OriginalBand
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_sequence_number
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+Group = CenterValue1
+ Auto
+ Debug
+ Optional
+ InputKey = FilterCenter
+ InputPosition = (IsisCube,BandBin)
+ OutputName = sp:center_value
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+Group = BinWidth1
+ Auto
+ Optional
+ InputKey = FilterWidth
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_width
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+Group = CenterValue2
+ Auto
+ Debug
+ Optional
+ InputKey = Center
+ InputPosition = (IsisCube,BandBin)
+ OutputName = sp:center_value
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+Group = BinWidth2
+ Auto
+ Optional
+ InputKey = Width
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_width
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+
+# Optional, see NH LEISA for example of ISIS3 input cube that has this.
+Group = original_bin_number
+ Auto
+ Optional
+ InputKey = OriginalBand
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_width
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+Group = FilterName1
+ Auto
+ Debug
+ Optional
+ InputKey = FilterName
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:filter_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin, sp:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterName2
+ Auto
+ Debug
+ Optional
+ InputKey = Name
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:filter_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin, sp:Filter)
+ Translation = (*, *)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportBandBinImage.trn b/isis/appdata/translations/pds4ExportBandBinImage.trn
new file mode 100644
index 0000000000..e49f5472d2
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportBandBinImage.trn
@@ -0,0 +1,177 @@
+# Initial ISIS3 to PDS4 export of ISIS3 BandBin group to PDS4 imaging discipline.
+# This can be used for Array_3D_Image or Array_2D_Image objects.
+# Note that the LocalIdentifierReference value (written to img:local_identifier_reference)
+# is required to match the local_identifier value in the File_Area_Observational>File section.
+#
+# Sections of an example PDS4 output label are included above the relevant translation groups
+#
+# history 2018-05-10 Jeannie Backer - Original Version
+
+
+#
+#
+# MUST MATCH LOCAL ID FOR FILE AREA OBSERVATIONAL TOO!!! ???
+#
+#
+# ???
+#
+#
+Group = LocalIdentifierReference
+ Auto
+ InputDefault = Image_Array_Object
+ InputPosition = (IsisCube, BandBin)
+ OutputName = local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = LocalReferenceType
+ Auto
+ InputDefault = imaging_parameters_to_image_object
+ InputPosition = (IsisCube, BandBin)
+ OutputName = local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+#
+#
+# PANL2
+# PANL2
+# 1
+# 20.000
+# 753.000
+# optional
+#
+
+Group = FilterName1
+ Auto
+ Debug
+ Optional
+ InputKey = FilterName
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterName2
+ Auto
+ Debug
+ Optional
+ InputKey = Name
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterName3
+ Auto
+ Debug
+ Optional
+ InputKey = FilterId
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterId1
+ Auto
+ Debug
+ Optional
+ InputKey = FilterId
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_id
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterId2
+ Auto
+ Debug
+ Optional
+ InputKey = FilterName
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_id
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterId3
+ Auto
+ Debug
+ Optional
+ InputKey = Name
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_id
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterNumber1
+ Auto
+ Optional
+ InputKey = OriginalBand
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_number
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = FilterNumber2
+ Auto
+ Optional
+ InputKey = FilterNumber
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:filter_number
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = BandWidth1
+ Auto
+ Optional
+ InputKey = Width
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:bandwidth
+ OutputAttributes = unit|nm
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = BandWidth2
+ Auto
+ Optional
+ InputKey = FilterWidth
+ InputPosition = (IsisCube, BandBin)
+ OutputName = img:bandwidth
+ OutputAttributes = unit|nm
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = CenterWavelength1
+ Auto
+ Debug
+ Optional
+ InputKey = Center
+ InputPosition = (IsisCube,BandBin)
+ OutputName = img:center_filter_wavelength
+ OutputAttributes = unit|nm
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
+
+Group = CenterWavelength2
+ Auto
+ Debug
+ Optional
+ InputKey = FilterCenter
+ InputPosition = (IsisCube,BandBin)
+ OutputName = img:center_filter_wavelength
+ OutputAttributes = unit|nm
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Image_Product_Information, img:Filter)
+ Translation = (*, *)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportBandBinSpectrum.trn b/isis/appdata/translations/pds4ExportBandBinSpectrum.trn
new file mode 100644
index 0000000000..3b016a1063
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportBandBinSpectrum.trn
@@ -0,0 +1,172 @@
+# Initial ISIS3 to PDS4 export of ISIS3 BandBin group for PDS4 spectral arrays.
+#
+# Sections of an example PDS4 output label are included above the relevant translation groups.
+#
+# history 2017-11-06 Kristin Berry - Original Version.
+# history 2017-11-14 Jeannie Backer - Changed width and center to optional and added other
+# InputKeys to look for.
+# history 2017-11-15 Kristin Berry - Updated after more research into requirements.
+# history 2018-05-11 Jeannie Backer - Added default values for references.
+# Combined redundant translations.
+
+
+# The entire Spectral_Characteristics class is optional
+
+#
+#
+# Description
+#
+ Group = BinWidthDescription
+ Auto
+ InputDefault = UNK
+ OutputName = sp:bin_width_desc
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics)
+ Translation = (*, *)
+ End_Group
+
+
+#
+# Spectral_Qube_Object
+# spectral_characteristics_to_array_object
+#
+
+Group = LocalIdentifierReference
+ Auto
+ InputDefault = Spectral_Array_Object
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = LocalReferenceType
+ Auto
+ InputDefault = spectral_characteristics_to_array_object
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = BinSetLocalIdentifierReference
+ Auto
+ InputDefault = Band
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# Needs val from enumeration
+Group = BinSetLocalReferenceType
+ Auto
+ InputDefault = spectral_characteristics_to_array_axis
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+#
+# 1
+# 753.000
+# 20.000
+#
+# PANL2
+#
+#
+#
+# 2
+# 601.000
+# 17.000
+#
+# PANL4
+#
+#
+#
+# 3
+# 432.000
+# 32.000
+#
+# PANL7
+#
+#
+#
+# 4
+# 754.000
+# 20.000
+#
+# PANR2
+#
+#
+#
+# 5
+# 1009.000
+# 38.000
+#
+# PANR7
+#
+#
+#
+
+# NOT OPTIONAL TODO: FIX
+Group = BinSequenceNumber
+ Auto
+ Optional
+ InputKey = OriginalBand
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_sequence_number
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+
+Group = CenterValue
+ Auto
+ Debug
+ Optional
+ InputKey = FilterCenter
+ InputKey = Center
+ InputPosition = (IsisCube,BandBin)
+ OutputName = sp:center_value
+ OutputAttributes = unit|nm
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+#??? check units
+
+Group = BinWidth
+ Auto
+ Optional
+ InputKey = FilterWidth
+ InputKey = Width
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_width
+ OutputAttributes = unit|nm
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+ Translation = (*, *)
+End_Group
+#??? check units
+
+# Optional, see NH LEISA for example of ISIS3 input cube that has this.
+#Group = OriginalBinNumber
+# Auto
+# Optional
+# InputKey = OriginalBand
+# InputPosition = (IsisCube, BandBin)
+# OutputName = sp:bin_width
+# OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin)
+# Translation = (*, *)
+#End_Group
+# is output name supposed to be bin width or is this typo???
+
+Group = FilterName
+ Auto
+ Debug
+ Optional
+ InputKey = FilterName
+ InputKey = Name
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:filter_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Bin, sp:Filter)
+ Translation = (*, *)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportBandBinSpectrumBinSet.trn b/isis/appdata/translations/pds4ExportBandBinSpectrumBinSet.trn
new file mode 100644
index 0000000000..e13259d78b
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportBandBinSpectrumBinSet.trn
@@ -0,0 +1,107 @@
+# Initial ISIS3 to PDS4 export of ISIS3 BandBin group for PDS4 spectral arrays.
+#
+# See https://pds.nasa.gov/pds4/sp/v1/PDS4_SP_1100.xsd
+# and https://pds.nasa.gov/pds4/sp/v1/PDS4_SP_1100.sch
+# for requirements.
+#
+# Sections of an example PDS4 output label are included above the relevant translation groups.
+#
+# history 2018-06-11 Jeannie Backer - Original version.
+
+
+# The entire Spectral_Characteristics class is optional
+
+#
+#
+# Description
+#
+ Group = BinWidthDescription
+ Auto
+ InputDefault = UNK
+ OutputName = sp:bin_width_desc
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics)
+ Translation = (*, *)
+ End_Group
+
+
+#
+# Spectral_Qube_Object
+# spectral_characteristics_to_array_object
+#
+
+Group = LocalIdentifierReference
+ Auto
+ InputDefault = Spectral_Array_Object
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# enumerated value
+Group = LocalReferenceType
+ Auto
+ InputDefault = spectral_characteristics_to_array_object
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = BinSetLocalIdentifierReference
+ Auto
+ InputDefault = Band
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# enumerated value
+Group = BinSetLocalReferenceType
+ Auto
+ InputDefault = spectral_characteristics_to_array_axis
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Bin_Set, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# The following are handled in ProcessExportPds4
+#
+# 1
+# 753.000
+# 20.000
+#
+# PANL2
+#
+#
+#
+# 2
+# 601.000
+# 17.000
+#
+# PANL4
+#
+#
+#
+# 3
+# 432.000
+# 32.000
+#
+# PANL7
+#
+#
+#
+# 4
+# 754.000
+# 20.000
+#
+# PANR2
+#
+#
+#
+# 5
+# 1009.000
+# 38.000
+#
+# PANR7
+#
+#
+#
diff --git a/isis/appdata/translations/pds4ExportBandBinSpectrumUniform.trn b/isis/appdata/translations/pds4ExportBandBinSpectrumUniform.trn
new file mode 100644
index 0000000000..0ddbff0c2c
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportBandBinSpectrumUniform.trn
@@ -0,0 +1,146 @@
+# Initial ISIS3 to PDS4 export of ISIS3 BandBin group for PDS4 uniformly sampled spectral arrays.
+#
+# Sections of an example PDS4 output label are included above the relevant translation groups.
+# Based on requirements and options specified in
+# https://pds.nasa.gov/datastandards/schema/released/sp/v1/PDS4_SP_1100.xsd
+# and https://pds.nasa.gov/datastandards/schema/released/sp/v1/PDS4_SP_1100.sch
+#
+# Spectral_Characteristics:Local_Internal_Reference:local_identifier_reference
+# = Array_3D_Spectrum:local_identifier
+# = Spectral_Array_Object
+# Spectral_Characteristics:Local_Internal_Reference:local_reference_type
+# = Axis_Uniformly_Sampled:Local_Internal_Reference:local_reference_type
+# = spectral_characteristics_to_array_axis
+# Axis_Uniformly_Sampled:local_identifier_reference
+# = Axis_Array:axis_name
+# = Band
+#
+# history 2017-11-06 Kristin Berry - Original Version.
+# history 2017-11-14 Jeannie Backer - Changed width and center to optional and added other
+# InputKeys to look for.
+# history 2017-11-15 Kristin Berry - Updated after more research into requirements.
+# history 2018-05-11 Jeannie Backer - Added default values for references.
+# Combined redundant translations.
+
+#
+#
+# Description
+#
+# Move this to mission translation file?
+ Group = BinWidthDescription
+ Auto
+ InputDefault = UNK
+ OutputName = sp:bin_width_desc
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics)
+ Translation = (*, *)
+ End_Group
+
+
+#
+# Spectral_Qube_Object
+# spectral_characteristics_to_array_object
+#
+
+Group = LocalIdentifierReference
+ Auto
+ InputDefault = Spectral_Array_Object
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = LocalReferenceType
+ Auto
+ InputDefault = spectral_characteristics_to_array_axis
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = AxisLocalIdentifierReference
+ Auto
+ InputDefault = Band
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# Needs val from enumeration
+Group = AxisLocalReferenceType
+ Auto
+ InputDefault = spectral_characteristics_to_array_axis
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled, sp:Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# Translation of last_center_value left to be handled by ProcessExportPds4
+#
+#
+# wavelength
+# 753.000
+# 20.000
+# 601.000
+# 17.000
+#
+
+Group = SamplingParameterType
+ Auto
+ InputDefault = wavelength
+ OutputName = sp:sampling_parameter_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled)
+ Translation = (*, *)
+End_Group
+
+#
+#Group = SamplingInterval
+# Auto
+# InputDefault = 0.0
+# OutputName = sp:sampling_interval
+# OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled)
+# Translation = (*, *)
+#End_Group
+
+Group = BinWidth1
+ Auto
+ Optional
+ InputKey = FilterWidth
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_width
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled)
+ Translation = (*, *)
+End_Group
+
+Group = BinWidth2
+ Auto
+ Optional
+ InputKey = Width
+ InputPosition = (IsisCube, BandBin)
+ OutputName = sp:bin_width
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled)
+ Translation = (*, *)
+End_Group
+
+Group = FirstCenterValue1
+ Auto
+ Optional
+ InputKey = FilterCenter
+ InputPosition = (IsisCube,BandBin)
+ OutputName = sp:first_center_value
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled)
+ Translation = (*, *)
+End_Group
+
+Group = FirstCenterValue2
+ Auto
+ Optional
+ InputKey = Center
+ InputPosition = (IsisCube,BandBin)
+ OutputName = sp:first_center_value
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, sp:Spectral_Characteristics, sp:Axis_Uniformly_Sampled)
+ Translation = (*, *)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportDisplaySettings.trn b/isis/appdata/translations/pds4ExportDisplaySettings.trn
new file mode 100644
index 0000000000..c167e232fa
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportDisplaySettings.trn
@@ -0,0 +1,72 @@
+# Exports the display settings from ISIS3 to PDS4.
+#
+# history 2017-10-26 Jeannie Backer - Original version.
+# history 2017-11-15 Kristin Berry - Moved HorizontalDisplayAxis into this file from pds4Export.trn
+# added LocalIdentifierReference and DisplaySettingsToArray
+# history 2018-05-16 Christopher Combs - Changed 3D_Image_Object to Array_3D_Image
+
+#Group = LocalInternalReference
+# Auto
+# InputDefault = ""
+# OutputName = Local_Internal_Reference
+## OutputSiblings = ("att@local_identifier_reference|TBD", "att@local_reference_type|TBD")
+# OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings)
+# Translation = (*, *)
+#End_Group
+
+Group = LocalIdentifierReference
+ Auto
+ InputDefault = Image_Array_Object
+ OutputName = local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings,
+ Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = DisplaySettingsToArray
+ Auto
+ InputDefault = display_settings_to_array
+ OutputName = local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings,
+ Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = HorizontalDisplayAxis
+ Auto
+ InputDefault = Sample
+ OutputName = disp:horizontal_display_axis
+# OutputSiblings = ("disp:horizontal_display_direction|Left To Right",
+# "disp:vertical_display_axis|Line",
+# "disp:vertical_display_direction|Top To Bottom")
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area,
+ disp:Display_Settings,disp:Display_Direction)
+ Translation = (*, *)
+End_Group
+
+Group = HorizontalDisplayDirection
+ Auto
+ InputDefault = "Left to Right"
+ OutputName = disp:horizontal_display_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings,
+ disp:Display_Direction)
+ Translation = (*, *)
+End_Group
+
+Group = VerticalDisplayAxis
+ Auto
+ InputDefault = Line
+ OutputName = disp:vertical_display_axis
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings,
+ disp:Display_Direction)
+ Translation = (*, *)
+End_Group
+
+Group = VerticalDisplayDirection
+ Auto
+ InputDefault = "Top to Bottom"
+ OutputName = disp:vertical_display_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, disp:Display_Settings,
+ disp:Display_Direction)
+ Translation = (*, *)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportEquirectangular.trn b/isis/appdata/translations/pds4ExportEquirectangular.trn
new file mode 100644
index 0000000000..6ee95d62f9
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportEquirectangular.trn
@@ -0,0 +1,267 @@
+# Translation file for converting Isis cube projection labels for Equirectangular
+# to PDS4 image map projection labels
+#
+#
+# history 2017-10-26 Makayla Shepherd, Jeannie Backer, and Kristin Berry - Original version
+# history 2017-11-16 Kristin Berry - Updated order of Spatial_Reference_Information section, changed
+# formatting, and added units. Also changed UNKs on bounding coordinates to
+# TBDs since they are required to be set.
+
+Group = LocalIdentifierReference
+ Auto
+ InputDefault = Image_Array_Object
+ InputPosition = (IsisCube, Mapping)
+ OutputName = local_identifier_reference
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = LocalReferenceType
+ Auto
+ InputDefault = cartography_parameters_to_image_object
+ InputPosition = (IsisCube, Mapping)
+ OutputName = local_reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, Local_Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = (Equirectangular, *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Equirectangular)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Equirectangular)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Equirectangular)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ InputDefault = 0
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Equirectangular)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (Planetocentric, Planetocentric)
+ Translation = (Planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportFileArea.trn b/isis/appdata/translations/pds4ExportFileArea.trn
new file mode 100644
index 0000000000..55b15d09aa
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportFileArea.trn
@@ -0,0 +1,20 @@
+Group = Samples
+ Auto
+ InputKey = Samples
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Sample, sequence_number|1)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
+Group = Lines
+ Auto
+ InputKey = Lines
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = elements
+ OutputSiblings = (axis_name|Lines, sequence_number|2)
+ OutputPosition = (Product_Observational, File_Area_Observational, Array_2D_Image, new@Axis_Array)
+ Translation = (*, *)
+End_Group
+
diff --git a/isis/appdata/translations/pds4ExportIdentificationArea.trn b/isis/appdata/translations/pds4ExportIdentificationArea.trn
new file mode 100644
index 0000000000..2813e2a5c6
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportIdentificationArea.trn
@@ -0,0 +1,55 @@
+# Translation for Identification Area section of export from ISIS3 cube to PDS4 product.
+# For now, these are hardcoded values.
+#
+# Note these translations must be are ordered based on the required PDS4 order.
+#
+# history 2017-11-07 Jeannie Backer - Original version.
+# history 2017-11-15 Kristin Berry - Updated order groups are output in for PDS4 compliancy.
+
+# Could be DataSetId for some missions
+Group = LogicalId
+ Auto
+ InputKey = LogicalId
+ InputPosition = (IsisCube, Archive)
+ InputDefault = urn:nasa:pds:TBD:TBD:TBD
+ OutputName = logical_identifier
+ OutputPosition = (Product_Observational, Identification_Area)
+ Translation = (*, *)
+End_Group
+
+Group = VersionId
+ Auto
+ InputDefault = 1.0
+ OutputName = version_id
+ OutputPosition = (Product_Observational, Identification_Area)
+ Translation = (*, *)
+End_Group
+
+Group = ProductTitle
+ Auto
+ InputKey = ProductDescription
+ InputPosition = (IsisCube, Archive)
+ InputDefault = "PDS4 product exported from ISIS3 cube."
+ OutputName = title
+ OutputPosition = (Product_Observational, Identification_Area)
+ Translation = (*, *)
+End_Group
+
+Group = InformationModel
+ Auto
+ InputDefault = 1.11.0.0
+ OutputName = information_model_version
+ OutputPosition = (Product_Observational, Identification_Area)
+ Translation = (*, *)
+End_Group
+
+Group = ProductClass
+ Auto
+ InputDefault = Product_Observational
+ OutputName = product_class
+ OutputPosition = (Product_Observational, Identification_Area)
+ Translation = (*, *)
+End_Group
+
+
+
diff --git a/isis/appdata/translations/pds4ExportInstrument.trn b/isis/appdata/translations/pds4ExportInstrument.trn
new file mode 100644
index 0000000000..d3a9f756b1
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportInstrument.trn
@@ -0,0 +1,90 @@
+# Translate ISIS3 Instrument group values to PDS4.
+#
+# history 2017-10-31 Jeannie Backer - Original version
+# history 2017-11-17 Kristin Berry - Added reference_type
+# history 2018-05-16 Christopher Combs - Added lid_reference
+# history 2018-05-11 Jeannie Backer - Added ExposureDuration
+
+# Time Coordinate
+Group = StartDateTime
+ Auto
+ InputKey = StartTime
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = ""
+ OutputName = start_date_time
+ OutputPosition = (Product_Observational, Observation_Area, Time_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# create the output keyword using the StartTime. The value will be fixed in ProcessExportPds4
+Group = StopDateTime
+ Auto
+ InputKey = StartTime
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = ""
+ OutputName = stop_date_time
+ OutputPosition = (Product_Observational, Observation_Area, Time_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Investigation Area
+Group = MissionName
+ Auto
+ InputKey = SpacecraftName
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = TBD
+ OutputName = name
+ OutputSiblings = (type|Mission)
+ OutputPosition = (Product_Observational, Observation_Area, Investigation_Area)
+ Translation = (*, *)
+End_Group
+
+Group = LIDReference
+ Auto
+ InputDefault = urn:nasa:pds:TBD
+ OutputName = lid_reference
+ OutputPosition = (Product_Observational, Observation_Area, Investigation_Area, Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+Group = MissionInternalReference
+ Auto
+ InputDefault = data_to_investigation
+ OutputName = reference_type
+ OutputPosition = (Product_Observational, Observation_Area, Investigation_Area, Internal_Reference)
+ Translation = (*, *)
+End_Group
+
+# Observing System
+Group = SpacecraftName
+ Auto
+ InputKey = SpacecraftName
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = TBD
+ OutputName = name
+ OutputSiblings = (type|Spacecraft)
+ OutputPosition = (Product_Observational, Observation_Area, Observing_System, new@Observing_System_Component)
+ Translation = (*, *)
+End_Group
+
+Group = InstrumentName
+ Auto
+ InputKey = InstrumentId
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = TBD
+ OutputName = name
+ OutputSiblings = (type|Instrument)
+ OutputPosition = (Product_Observational, Observation_Area, Observing_System, new@Observing_System_Component)
+ Translation = (*, *)
+End_Group
+
+Group = ExposureDuration
+ Auto
+ Optional
+ InputKey = ExposureDuration
+ InputPosition = (IsisCube, Instrument)
+ OutputName = img:exposure_duration
+ OutputAttributes = unit|s
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, img:Imaging, img:Imaging_Instrument_Parameters)
+ Translation = (*, *)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportLambertConformal.trn b/isis/appdata/translations/pds4ExportLambertConformal.trn
new file mode 100644
index 0000000000..c0530576c1
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportLambertConformal.trn
@@ -0,0 +1,249 @@
+# Translation file for converting Isis cube projection labels for Lambert Conformal
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd, Jeannie Backer and Kristin Berry - Original version
+
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = ('Lambert Conformal Conic', *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Lambert_Conformal_Conic)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Lambert_Conformal_Conic)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Lambert_Conformal_Conic)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Lambert_Conformal_Conic)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportObliqueMercator.trn b/isis/appdata/translations/pds4ExportObliqueMercator.trn
new file mode 100644
index 0000000000..eb253a8600
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportObliqueMercator.trn
@@ -0,0 +1,255 @@
+# Translation file for converting Isis cube projection labels for Oblique Mercator
+# to PDS4 cartography labels
+
+#### Keywords for Bounding Coordinates
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = cart:north_bounding_coordinate
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = cart:south_bounding_coordinate
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = cart:east_bounding_coordinate
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = cart:west_bounding_coordinate
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# TODO: add units (degrees)
+
+### Keywords for Geo Transformation
+
+# Keywords for Geodetic Model (not inside Planar)
+# TODO: add units
+# is spheroid name required?
+#
+#Mercury
+#
+
+Group = latitude_type
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = semi_major_radius
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = semi_minor_radius
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = polar_radius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = longitude_direction
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ("Positive East", PositiveEast)
+ Translation = ("Positive West", PositiveWest)
+End_Group
+
+### Map Projection ###
+# TODO: add units
+
+Group = map_projection_name
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar)
+ Translation = (Oblique_Mercator, *)
+End_Group
+
+# TODO: is N/A a valid value?
+Group = standard_parallel_1
+ Auto
+ Optional
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cat:Oblique_Mercator)
+ Translation = (N/A, *)
+End_Group
+
+Group = standard_parallel_2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cat:Oblique_Mercator)
+ Translation = (N/A, *)
+End_Group
+
+
+Group = latitude_of_projection_origin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cat:Oblique_Mercator)
+ Translation = (*, *)
+End_Group
+
+Group = longitude_of_central_meridian
+ Auto
+ Optional
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cat:Oblique_Mercator)
+ Translation = (*, *)
+End_Group
+
+## Planar Coordinate Information ##
+# TODO: add units
+# Coordinate Pair
+# Group = planar_coordinate_encoding_method?
+
+Group = pixel_resolution_x
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = pixel_resolution_y
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = pixel_scale_x
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = pixel_scale_y
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+# Geo_Transformation
+# TODO: add units
+
+Group = upperleft_corner_x
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = upperleft_corner_y
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Map_Projection, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+# Omitted min/max (s,l) because did not see a reference to these in the PDS4 standards.
+
+# Map Rotation not supported by PDS4?
+#Group = MAP_PROJECTION_ROTATION
+# Auto
+# InputKey = MapProjectionRotation
+# InputGroup = "IsisCube,Mapping"
+# InputPosition = (IsisCube, Mapping)
+# InputDefault = 0.0
+# OutputName = MAP_PROJECTION_ROTATION
+# OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+# Translation = (0.0, *)
+#End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportOrthographic.trn b/isis/appdata/translations/pds4ExportOrthographic.trn
new file mode 100644
index 0000000000..1e87241407
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportOrthographic.trn
@@ -0,0 +1,248 @@
+# Translation file for converting Isis cube projection labels for Orthographic
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd, Jeannie Backer, and Kristin Berry - Original version
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = (Orthographic, *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Orthographic)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Orthographic)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Orthographic)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Orthographic)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportPolarStereographic.trn b/isis/appdata/translations/pds4ExportPolarStereographic.trn
new file mode 100644
index 0000000000..74159abf05
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportPolarStereographic.trn
@@ -0,0 +1,260 @@
+# Translation file for converting Isis cube projection labels for Polar Stereographic
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd, Jeannie Backer, and Kristin Berry - Original version
+
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = ('Polar Stereographic', *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polar_Stereographic.trn)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polar_Stereographic.trn)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polar_Stereographic.trn)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polar_Stereographic.trn)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+Group = StraightVerticalLongitudeFromPole
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:straight_vertical_longitude_from_pole
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polar_Stereographic)
+ Translation = (180, 90.0)
+ Translation = (0, -90.0)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportPolyconic.trn b/isis/appdata/translations/pds4ExportPolyconic.trn
new file mode 100644
index 0000000000..25d00c03ed
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportPolyconic.trn
@@ -0,0 +1,248 @@
+# Translation file for converting Isis cube projection labels for Polyconic
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd, Jeannie Backer and Kristin Berry - Original version
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = (Polyconic, *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polyconic)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polyconic)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polyconic)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Polyconic)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportSimpleCylindrical.trn b/isis/appdata/translations/pds4ExportSimpleCylindrical.trn
new file mode 100644
index 0000000000..94668b4d82
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportSimpleCylindrical.trn
@@ -0,0 +1,248 @@
+# Translation file for converting Isis cube projection labels for Simple_Cylindrical
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd, Jeannie Backer, and Kristin Berry - Original version
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = ('Simple Cylindrical', *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Simple_Cylindrical)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Simple_Cylindrical)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Simple_Cylindrical)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Simple_Cylindrical)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportSinusoidal.trn b/isis/appdata/translations/pds4ExportSinusoidal.trn
new file mode 100644
index 0000000000..24388452dd
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportSinusoidal.trn
@@ -0,0 +1,248 @@
+# Translation file for converting Isis cube projection labels for Sinusoidal
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd and Kristin Berry - Original version
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = (Sinusoidal, *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Sinusoidal)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Sinusoidal)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Sinusoidal)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Sinusoidal)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportTargetFromInstrument.trn b/isis/appdata/translations/pds4ExportTargetFromInstrument.trn
new file mode 100644
index 0000000000..df9e95bb49
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportTargetFromInstrument.trn
@@ -0,0 +1,166 @@
+# Translate ISIS3 TargetName to PDS4 Target name and type.
+# Translations are alphabetically sorted by output value, then by input value.
+#
+# history 2017-11-03 Jeannie Backer - Original version
+# history 2017-11-08 Jeannie Backer - Removed redundant translations after input to translation
+# was made case insensitive.
+
+Group = TargetName
+ Auto
+ InputKey = TargetName
+ InputPosition = (IsisCube, Instrument)
+ OutputName = name
+ OutputPosition = (Product_Observational, Observation_Area, Target_Identification)
+ Translation = (Adrastea, ADRASTEA)
+ Translation = (Amalthea, AMALTHEA)
+ Translation = (Ariel, ARIEL)
+ Translation = (Atlas, ATLAS)
+ Translation = (Bennu, BENNU)
+ Translation = (Callisto, CALLISTO)
+ Translation = (Calypso, CALYPSO)
+ Translation = (Ceres, CERES)
+ Translation = (Ceres, "4 CERES")
+ Translation = (Ceres, "1 CERES")
+ Translation = (Charon, CHARON)
+ Translation = (Churyumov-Gerasimenko, '67P/Churyumov-Gerasimenko')
+ Translation = (Churyumov-Gerasimenko, '67P/C-G')
+ Translation = (Daphnis, DAPHNIS)
+ Translation = (Deimos, DEIMOS)
+ Translation = (Dione, DIONE)
+ Translation = (Enceladus, ENCELADUS)
+ Translation = (Epimetheus, EPIMETHEUS)
+ Translation = (Eros, EROS)
+ Translation = (Europa, EUROPA)
+ Translation = (Fomalhaut, FOMALHAUT)
+ Translation = (Ganymede, GANYMEDE)
+ Translation = (Helene, HELENE)
+ Translation = (Himalia, HIMALIA)
+ Translation = (Hyperion, HYPERION)
+ Translation = (Iapetus, IAPETUS)
+ Translation = (Io, IO)
+ Translation = (Itokawa, ITOKAWA)
+ Translation = (Janus, JANUS)
+ Translation = (Jupiter, JUPITER)
+ Translation = ('Jupiter Rings', JupiterRings)
+ Translation = ('Jupiter Rings', J_RINGS)
+ Translation = (Larissa, LARISSA)
+ Translation = (Mars, MARS)
+ Translation = (Mathilde, MATHILDE)
+ Translation = (Mercury, MERCURY)
+ Translation = (Methone, METHONE)
+ Translation = (Metis, METIS)
+ Translation = (Mimas, MIMAS)
+ Translation = (Miranda, MIRANDA)
+ Translation = (Moon, MOON)
+ Translation = (Neptune, NEPTUNE)
+ Translation = ('Neptune Rings', NeptuneRings)
+ Translation = ('Neptune Rings', N_RINGS)
+ Translation = (Nereid, NEREID)
+ Translation = (Oberon, OBERON)
+ Translation = (Pallene, PALLENE)
+ Translation = (Pan, PAN)
+ Translation = (Pandora, PANDORA)
+ Translation = (Phobos, PHOBOS)
+ Translation = (Phoebe, PHOEBE)
+ Translation = (Pluto, PLUTO)
+ Translation = (Polydeuces, POLYDEUCES)
+ Translation = (Prometheus, PROMETHEUS)
+ Translation = (Proteus, PROTEUS)
+ Translation = (Puck, PUCK)
+ Translation = (Rhea, RHEA)
+ Translation = (Ryugu, RYUGU)
+ Translation = (Spica, SPICA)
+ Translation = (Telesto, TELESTO)
+ Translation = (Tethys, TETHYS)
+ Translation = (Thebe, THEBE)
+ Translation = (Titan, TITAN)
+ Translation = (Titania, TITANIA)
+ Translation = (Triton, TRITON)
+ Translation = (Umbriel, UMBRIEL)
+ Translation = (Uranus, URANUS)
+ Translation = (Venus, VENUS)
+ Translation = (Vesta, VESTA)
+ Translation = (Vesta, "4 VESTA")
+End_Group
+
+Group = TargetType
+ Auto
+ InputKey = TargetName
+ InputPosition = (IsisCube, Instrument)
+ OutputName = type
+ OutputPosition = (Product_Observational, Observation_Area, Target_Identification)
+ Translation = (Asteroid, BENNU)
+ Translation = (Asteroid, CERES)
+ Translation = (Asteroid, "4 CERES")
+ Translation = (Asteroid, "1 CERES")
+ Translation = (Asteroid, EROS)
+ Translation = (Asteroid, ITOKAWA)
+ Translation = (Asteroid, MATHILDE)
+ Translation = (Asteroid, RYUGU)
+ Translation = (Asteroid, VESTA)
+ Translation = (Asteroid, "4 VESTA")
+ Translation = (Comet, '67P/Churyumov-Gerasimenko')
+ Translation = (Comet, '67P/C-G')
+ Translation = ('Dwarf Planet', PLUTO)
+ Translation = (Planet, JUPITER)
+ Translation = (Planet, MARS)
+ Translation = (Planet, MERCURY)
+ Translation = (Planet, NEPTUNE)
+ Translation = (Planet, SATURN)
+ Translation = (Planet, URANUS)
+ Translation = (Planet, VENUS)
+ Translation = (Ring, JupiterRings)
+ Translation = (Ring, J_RINGS)
+ Translation = (Ring, NeptuneRings)
+ Translation = (Ring, N_RINGS)
+ Translation = (Ring, SaturnRings)
+ Translation = (Ring, S_RINGS)
+ Translation = (Satellite, ADRASTEA)
+ Translation = (Satellite, AMALTHEA)
+ Translation = (Satellite, ARIEL)
+ Translation = (Satellite, ATLAS)
+ Translation = (Satellite, CALLISTO)
+ Translation = (Satellite, CALYPSO)
+ Translation = (Satellite, CHARON)
+ Translation = (Satellite, DAPHNIS)
+ Translation = (Satellite, DEIMOS)
+ Translation = (Satellite, DIONE)
+ Translation = (Satellite, ENCELADUS)
+ Translation = (Satellite, EPIMETHEUS)
+ Translation = (Satellite, EUROPA)
+ Translation = (Satellite, GANYMEDE)
+ Translation = (Satellite, HELENE)
+ Translation = (Satellite, HIMALIA)
+ Translation = (Satellite, HYPERION)
+ Translation = (Satellite, IAPETUS)
+ Translation = (Satellite, IO)
+ Translation = (Satellite, JANUS)
+ Translation = (Satellite, LARISSA)
+ Translation = (Satellite, METHONE)
+ Translation = (Satellite, METIS)
+ Translation = (Satellite, MIMAS)
+ Translation = (Satellite, MIRANDA)
+ Translation = (Satellite, MOON)
+ Translation = (Satellite, NEREID)
+ Translation = (Satellite, OBERON)
+ Translation = (Satellite, PALLENE)
+ Translation = (Satellite, PAN)
+ Translation = (Satellite, PANDORA)
+ Translation = (Satellite, PHOBOS)
+ Translation = (Satellite, PHOEBE)
+ Translation = (Satellite, POLYDEUCES)
+ Translation = (Satellite, PROMETHEUS)
+ Translation = (Satellite, PROTEUS)
+ Translation = (Satellite, PUCK)
+ Translation = (Satellite, RHEA)
+ Translation = (Satellite, TELESTO)
+ Translation = (Satellite, TETHYS)
+ Translation = (Satellite, THEBE)
+ Translation = (Satellite, TITAN)
+ Translation = (Satellite, TITANIA)
+ Translation = (Satellite, TRITON)
+ Translation = (Satellite, UMBRIEL)
+ Translation = (Star, FOMALHAUT)
+ Translation = (Star, SPICA)
+ Translation = (TBD, SKY)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportTargetFromMapping.trn b/isis/appdata/translations/pds4ExportTargetFromMapping.trn
new file mode 100644
index 0000000000..8824b3fad8
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportTargetFromMapping.trn
@@ -0,0 +1,164 @@
+# Translate ISIS3 TargetName to PDS4 Target name and type.
+# Translations are alphabetically sorted by output value, then by input value.
+#
+# history 2017-11-03 Jeannie Backer - Original version
+
+Group = TargetName
+ Auto
+ InputKey = TargetName
+ InputPosition = (IsisCube, Mapping)
+ OutputName = name
+ OutputPosition = (Product_Observational, Observation_Area, Target_Identification)
+ Translation = (Adrastea, ADRASTEA)
+ Translation = (Amalthea, AMALTHEA)
+ Translation = (Ariel, ARIEL)
+ Translation = (Atlas, ATLAS)
+ Translation = (Bennu, BENNU)
+ Translation = (Callisto, CALLISTO)
+ Translation = (Calypso, CALYPSO)
+ Translation = (Ceres, CERES)
+ Translation = (Ceres, "4 CERES")
+ Translation = (Ceres, "1 CERES")
+ Translation = (Charon, CHARON)
+ Translation = (Churyumov-Gerasimenko, '67P/Churyumov-Gerasimenko')
+ Translation = (Churyumov-Gerasimenko, '67P/C-G')
+ Translation = (Daphnis, DAPHNIS)
+ Translation = (Deimos, DEIMOS)
+ Translation = (Dione, DIONE)
+ Translation = (Enceladus, ENCELADUS)
+ Translation = (Epimetheus, EPIMETHEUS)
+ Translation = (Eros, EROS)
+ Translation = (Europa, EUROPA)
+ Translation = (Fomalhaut, FOMALHAUT)
+ Translation = (Ganymede, GANYMEDE)
+ Translation = (Helene, HELENE)
+ Translation = (Himalia, HIMALIA)
+ Translation = (Hyperion, HYPERION)
+ Translation = (Iapetus, IAPETUS)
+ Translation = (Io, IO)
+ Translation = (Itokawa, ITOKAWA)
+ Translation = (Janus, JANUS)
+ Translation = (Jupiter, JUPITER)
+ Translation = ('Jupiter Rings', JupiterRings)
+ Translation = ('Jupiter Rings', J_RINGS)
+ Translation = (Larissa, LARISSA)
+ Translation = (Mars, MARS)
+ Translation = (Mathilde, MATHILDE)
+ Translation = (Mercury, MERCURY)
+ Translation = (Methone, METHONE)
+ Translation = (Metis, METIS)
+ Translation = (Mimas, MIMAS)
+ Translation = (Miranda, MIRANDA)
+ Translation = (Moon, MOON)
+ Translation = (Neptune, NEPTUNE)
+ Translation = ('Neptune Rings', NeptuneRings)
+ Translation = ('Neptune Rings', N_RINGS)
+ Translation = (Nereid, NEREID)
+ Translation = (Oberon, OBERON)
+ Translation = (Pallene, PALLENE)
+ Translation = (Pan, PAN)
+ Translation = (Pandora, PANDORA)
+ Translation = (Phobos, PHOBOS)
+ Translation = (Phoebe, PHOEBE)
+ Translation = (Pluto, PLUTO)
+ Translation = (Polydeuces, POLYDEUCES)
+ Translation = (Prometheus, PROMETHEUS)
+ Translation = (Proteus, PROTEUS)
+ Translation = (Puck, PUCK)
+ Translation = (Rhea, RHEA)
+ Translation = (Ryugu, RYUGU)
+ Translation = (Spica, SPICA)
+ Translation = (Telesto, TELESTO)
+ Translation = (Tethys, TETHYS)
+ Translation = (Thebe, THEBE)
+ Translation = (Titan, TITAN)
+ Translation = (Titania, TITANIA)
+ Translation = (Triton, TRITON)
+ Translation = (Umbriel, UMBRIEL)
+ Translation = (Uranus, URANUS)
+ Translation = (Venus, VENUS)
+ Translation = (Vesta, VESTA)
+ Translation = (Vesta, "4 VESTA")
+End_Group
+
+Group = TargetType
+ Auto
+ InputKey = TargetName
+ InputPosition = (IsisCube, Mapping)
+ OutputName = type
+ OutputPosition = (Product_Observational, Observation_Area, Target_Identification)
+ Translation = (Asteroid, BENNU)
+ Translation = (Asteroid, CERES)
+ Translation = (Asteroid, "4 CERES")
+ Translation = (Asteroid, "1 CERES")
+ Translation = (Asteroid, EROS)
+ Translation = (Asteroid, ITOKAWA)
+ Translation = (Asteroid, MATHILDE)
+ Translation = (Asteroid, RYUGU)
+ Translation = (Asteroid, VESTA)
+ Translation = (Asteroid, "4 VESTA")
+ Translation = (Comet, '67P/Churyumov-Gerasimenko')
+ Translation = (Comet, '67P/C-G')
+ Translation = ('Dwarf Planet', PLUTO)
+ Translation = (Planet, JUPITER)
+ Translation = (Planet, MARS)
+ Translation = (Planet, MERCURY)
+ Translation = (Planet, NEPTUNE)
+ Translation = (Planet, SATURN)
+ Translation = (Planet, URANUS)
+ Translation = (Planet, VENUS)
+ Translation = (Ring, JupiterRings)
+ Translation = (Ring, J_RINGS)
+ Translation = (Ring, NeptuneRings)
+ Translation = (Ring, N_RINGS)
+ Translation = (Ring, SaturnRings)
+ Translation = (Ring, S_RINGS)
+ Translation = (Satellite, ADRASTEA)
+ Translation = (Satellite, AMALTHEA)
+ Translation = (Satellite, ARIEL)
+ Translation = (Satellite, ATLAS)
+ Translation = (Satellite, CALLISTO)
+ Translation = (Satellite, CALYPSO)
+ Translation = (Satellite, CHARON)
+ Translation = (Satellite, DAPHNIS)
+ Translation = (Satellite, DEIMOS)
+ Translation = (Satellite, DIONE)
+ Translation = (Satellite, ENCELADUS)
+ Translation = (Satellite, EPIMETHEUS)
+ Translation = (Satellite, EUROPA)
+ Translation = (Satellite, GANYMEDE)
+ Translation = (Satellite, HELENE)
+ Translation = (Satellite, HIMALIA)
+ Translation = (Satellite, HYPERION)
+ Translation = (Satellite, IAPETUS)
+ Translation = (Satellite, IO)
+ Translation = (Satellite, JANUS)
+ Translation = (Satellite, LARISSA)
+ Translation = (Satellite, METHONE)
+ Translation = (Satellite, METIS)
+ Translation = (Satellite, MIMAS)
+ Translation = (Satellite, MIRANDA)
+ Translation = (Satellite, MOON)
+ Translation = (Satellite, NEREID)
+ Translation = (Satellite, OBERON)
+ Translation = (Satellite, PALLENE)
+ Translation = (Satellite, PAN)
+ Translation = (Satellite, PANDORA)
+ Translation = (Satellite, PHOBOS)
+ Translation = (Satellite, PHOEBE)
+ Translation = (Satellite, POLYDEUCES)
+ Translation = (Satellite, PROMETHEUS)
+ Translation = (Satellite, PROTEUS)
+ Translation = (Satellite, PUCK)
+ Translation = (Satellite, RHEA)
+ Translation = (Satellite, TELESTO)
+ Translation = (Satellite, TETHYS)
+ Translation = (Satellite, THEBE)
+ Translation = (Satellite, TITAN)
+ Translation = (Satellite, TITANIA)
+ Translation = (Satellite, TRITON)
+ Translation = (Satellite, UMBRIEL)
+ Translation = (Star, FOMALHAUT)
+ Translation = (Star, SPICA)
+ Translation = (TBD, SKY)
+End_Group
diff --git a/isis/appdata/translations/pds4ExportTransverseMercator.trn b/isis/appdata/translations/pds4ExportTransverseMercator.trn
new file mode 100644
index 0000000000..b7556448af
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportTransverseMercator.trn
@@ -0,0 +1,248 @@
+# Translation file for converting Isis cube projection labels for Transverse Mercator
+# to PDS4 image map projection labels
+#
+# history 2017-10-26 Makayla Shepherd and Kristin Berry - Original version
+
+# Bounding Coordinates
+Group = west_bounding_coordinate
+ Auto
+ InputKey = MaximumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:west_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = east_bounding_coordinate
+ Auto
+ InputKey = MinimumLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TBD
+ OutputName = cart:east_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = north_bounding_coordinate
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:north_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+Group = south_bounding_coordinate
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = TDB
+ OutputName = cart:south_bounding_coordinate
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Domain, cart:Bounding_Coordinates)
+ Translation = (*, *)
+End_Group
+
+# Spatial Reference Information
+
+# Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Planar
+# Map Projection
+Group = MapProjectionName
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube, Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:map_projection_name
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection)
+ Translation = ('Transverse Mercator', *)
+End_Group
+
+Group = StandardParallel1
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_1
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Transverse_Mercator)
+ Translation = (*, *)
+End_Group
+
+Group = StandardParallel2
+ Auto
+ Optional
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:standard_parallel_2
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Transverse_Mercator)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeOfCentralMeridian
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_of_central_meridian
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Transverse_Mercator)
+ Translation = (*, *)
+End_Group
+
+Group = LatitudeOfProjectionOrigin
+ Auto
+ Optional
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_of_projection_origin
+ OutputAttributes = unit|deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Map_Projection, cart:Transverse_Mercator)
+ Translation = (*, *)
+End_Group
+
+Group = PlanarCoordinateEncodingMethod
+ Auto
+ InputDefault = "Coordinate Pair"
+ OutputName = cart:planar_coordinate_encoding_method
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionX
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_x
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolutionY
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_resolution_y
+ OutputAttributes = unit|m/pixel
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleX
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_x
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = PixelScaleY
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:pixel_scale_y
+ OutputAttributes = unit|pixel/deg
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Planar_Coordinate_Information, cart:Coordinate_Representation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerX
+ Auto
+ Optional
+ InputKey = UpperLeftCornerX
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_x
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+Group = UpperLeftCornerY
+ Auto
+ Optional
+ InputKey = UpperLeftCornerY
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:upperleft_corner_y
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Planar, cart:Geo_Transformation)
+ Translation = (*, *)
+End_Group
+
+### Spatial Reference Information -> Horizontal_Cooridnate_System_Definition -> Geodetic_Model
+Group = LatitudeType
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:latitude_type
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (planetocentric, Planetocentric)
+ Translation = (planetographic, Planetographic)
+End_Group
+
+Group = SemimajorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_major_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = SemiminorAxis
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:semi_minor_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:polar_radius
+ OutputAttributes = unit|m
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = cart:longitude_direction
+ OutputPosition = (Product_Observational, Observation_Area, Discipline_Area, cart:Cartography, cart:Spatial_Reference_Information, cart:Horizontal_Coordinate_System_Definition, cart:Geodetic_Model)
+ Translation = ('Positive East', PositiveEast)
+ Translation = ('Positive West', PositiveWest)
+End_Group
+
+End
diff --git a/isis/appdata/translations/pds4ExportUnits.pvl b/isis/appdata/translations/pds4ExportUnits.pvl
new file mode 100644
index 0000000000..d53504fba1
--- /dev/null
+++ b/isis/appdata/translations/pds4ExportUnits.pvl
@@ -0,0 +1,163 @@
+# This translation file is for converting from commonly used ISIS units to
+# PDS4 units. It is not an ISIS translations table but rather a configuration
+# file that lists possible ISIS units for a cooresponding PDS4 unit.
+#
+# Objects in this file represent a type of unit, time, pixel resolution, etc.
+# Groups are then individual units, seconds, micrometers, meters per pixel.
+# Groups will contain the PDS4 standard unit and a list of possible ISIS units.
+#
+# Case for ISIS units does not matter. Both "m/pixel" and "m/Pixel" will match,
+# but case for PDS4 units does matter. Additionally, the PDS4 standard for the
+# unit is not expected to be duplicated in the list of ISIS units. Because of
+# this, the ISIS_Units keyword is not required. For example, if ISIS used Au
+# for astronomical units and PDS4 used AU for astronomical units, the
+# config group would be
+#
+# Group = Astronomical_Unit
+# PDS4_Unit = "AU"
+# End_Group
+#
+# See the PDS4 Information Model Unit_Of_Measure class for more information
+# about how PDS4 formats different units.
+
+Object = Angle
+
+ Group = degree
+ PDS4_Unit = "deg"
+ ISIS_Units = ("degree", "degrees")
+ End_Group
+
+End_Object
+
+Object = Storage
+
+ Group = byte
+ PDS4_Unit = "byte"
+ End_Group
+
+End_Object
+
+
+Object = Length
+
+ Group = kilometer
+ PDS4_Unit = "km"
+ ISIS_Units = ("kilometer", "kilometers")
+ End_Group
+
+ Group = meter
+ PDS4_Unit = "m"
+ ISIS_Units = ("meter", "meters")
+ End_Group
+
+ Group = centimeter
+ PDS4_Unit = "cm"
+ ISIS_Units = ("centimeter", "centimeters")
+ End_Group
+
+ Group = millimeter
+ PDS4_Unit = "mm"
+ ISIS_Units = ("millimeter", "millimeters")
+ End_Group
+
+ Group = micrometer
+ PDS4_Unit = "micrometer"
+ ISIS_Units = "micrometers"
+ End_Group
+
+ Group = nanometer
+ PDS4_Unit = "nm"
+ ISIS_Units = ("nanometer", "nanometers")
+ End_Group
+
+End_Object
+
+
+Object = Velocity
+
+ Group = kilometer_per_second
+ PDS4_Unit = "km/s"
+ ISIS_Units = ("kilometer/second", "kilometers/second")
+ End_Group
+
+ Group = meter_per_second
+ PDS4_Unit = "m/s"
+ ISIS_Units = ("meter/second", "meters/second")
+ End_Group
+
+ Group = centimeter_per_second
+ PDS4_Unit = "cm/s"
+ ISIS_Units = ("centimeter/second", "centimeters/second")
+ End_Group
+
+End_Object
+
+
+Object = Time
+
+ Group = second
+ PDS4_Unit = "s"
+ ISIS_Units = ("second", "seconds")
+ End_Group
+
+ Group = millisecond
+ PDS4_Unit = "ms"
+ ISIS_Units = ("millisecond", "milliseconds")
+ End_Group
+
+ Group = microsecond
+ PDS4_Unit = "microsecond"
+ ISIS_Units = "microseconds"
+ End_Group
+
+End_Object
+
+
+Object = Pixel_Resolution
+
+ Group = km_per_pixel
+ PDS4_Unit = "km/pixel"
+ ISIS_Units = ("kilometers/pixel", "kilometer/pixel")
+ End_Group
+
+ Group = m_per_pixel
+ PDS4_Unit = "m/pixel"
+ ISIS_Units = ("meters/pixel", "meter/pixel")
+ End_Group
+
+ Group = millimeter_per_pixel
+ PDS4_Unit = "mm/pixel"
+ ISIS_Units = ("millimeters/pixel", "millimeter/pixel")
+ End_Group
+
+ Group = degree_per_pixel
+ PDS4_Unit = "deg/pixel"
+ ISIS_Units = ("degree/pixel", "degrees/pixel")
+ End_Group
+
+End_Object
+
+
+Object = Pixel_Scale
+
+ Group = pixel_per_kilometer
+ PDS4_Unit = "pixel/km"
+ ISIS_Units = ("pixel/kilometer", "pixels/kilometer")
+ End_Group
+
+ Group = pixel_per_meter
+ PDS4_Unit = "pixel/m"
+ ISIS_Units = ("pixel/meter", "pixels/meter")
+ End_Group
+
+ Group = pixel_per_millimeter
+ PDS4_Unit = "pixel/mm"
+ ISIS_Units = ("pixel/millimeter", "pixels/millimeter")
+ End_Group
+
+ Group = pixel_per_degree
+ PDS4_Unit = "pixel/deg"
+ ISIS_Units = ("pixel/degree", "pixels/degree")
+ End_Group
+
+End_Object
diff --git a/isis/appdata/translations/pdsCombinedSpectrum.trn b/isis/appdata/translations/pdsCombinedSpectrum.trn
new file mode 100644
index 0000000000..526d937887
--- /dev/null
+++ b/isis/appdata/translations/pdsCombinedSpectrum.trn
@@ -0,0 +1,223 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^COMBINED_SPECTRUM
+ InputGroup = ROOT
+ InputGroup = FILE
+ InputGroup = UNCOMPRESSED_FILE
+ InputPosition = ROOT
+ InputPosition = FILE
+ InputPosition = UNCOMPRESSED_FILE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^COMBINED_SPECTRUM
+ InputGroup = ROOT
+ InputGroup = FILE
+ InputGroup = UNCOMPRESSED_FILE
+ InputPosition = ROOT
+ InputPosition = FILE
+ InputPosition = UNCOMPRESSED_FILE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = ITEMS
+ InputGroup = "COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "FILE,COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM,COLUMN"
+ InputPosition = (COMBINED_SPECTRUM,COLUMN)
+ InputPosition = (FILE, COMBINED_SPECTRUM,COLUMN)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM,COLUMN)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = COLUMNS
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = ROWS
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = ITEM_BYTES
+ InputGroup = "COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "FILE,COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM,COLUMN"
+ InputPosition = (COMBINED_SPECTRUM,COLUMN)
+ InputPosition = (FILE, COMBINED_SPECTRUM, COLUMN)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM, COLUMN)
+ InputDefault = 4
+ Translation = (8, 1)
+ Translation = (16, 2)
+ Translation = (32, 4)
+End_Group
+
+Group = CorePixelType
+ InputKey = DATA_TYPE
+ InputGroup = "COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "FILE,COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM,COLUMN"
+ InputPosition = (COMBINED_SPECTRUM, COLUMN)
+ InputPosition = (FILE, COMBINED_SPECTRUM, COLUMN)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM, COLUMN)
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (VaxReal, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = DATA_TYPE
+ InputGroup = "COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "FILE,COMBINED_SPECTRUM,COLUMN"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM,COLUMN"
+ InputPosition = (COMBINED_SPECTRUM, COLUMN)
+ InputPosition = (FILE, COMBINED_SPECTRUM, COLUMN)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM, COLUMN)
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = CoreBase
+ InputKey = OFFSET
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = SCALING_FACTOR
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = BAND_STORAGE_TYPE
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ InputDefault = BAND_SEQUENTIAL
+ Translation = (BSQ, BAND_SEQUENTIAL)
+ Translation = (BSQ, "BAND SEQUENTIAL")
+ Translation = (BIL, LINE_INTERLEAVED)
+ Translation = (BIP, SAMPLE_INTERLEAVED)
+End_Group
+
+Group = CoreLineSuffixBytes
+ InputKey = LINE_SUFFIX_BYTES
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreLinePrefixBytes
+ InputKey = LINE_PREFIX_BYTES
+ InputGroup = COMBINED_SPECTRUM
+ InputGroup = "FILE,COMBINED_SPECTRUM"
+ InputGroup = "UNCOMPRESSED_FILE,COMBINED_SPECTRUM"
+ InputPosition = COMBINED_SPECTRUM
+ InputPosition = (FILE, COMBINED_SPECTRUM)
+ InputPosition = (UNCOMPRESSED_FILE, COMBINED_SPECTRUM)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/images/icons/DELETEME.png b/isis/appdata/translations/pdsExportAllMapping.trn
similarity index 100%
rename from isis/appdata/images/icons/DELETEME.png
rename to isis/appdata/translations/pdsExportAllMapping.trn
diff --git a/isis/appdata/translations/pdsExportAllMapping.typ b/isis/appdata/translations/pdsExportAllMapping.typ
new file mode 100644
index 0000000000..a1a70ac95e
--- /dev/null
+++ b/isis/appdata/translations/pdsExportAllMapping.typ
@@ -0,0 +1,43 @@
+^DATA_SET_MAP_PROJECTION = String
+MAP_PROJECTION_TYPE = String
+PROJECTION_LATITUDE_TYPE = Enum
+#A_AXIS_RADIUS = (Real,6)
+#B_AXIS_RADIUS = (Real,6)
+#C_AXIS_RADIUS = (Real,6)
+FIRST_STANDARD_PARALLEL = Real
+SECOND_STANDARD_PARALLEL = Real
+COORDINATE_SYSTEM_NAME = Enum
+POSITIVE_LONGITUDE_DIRECTION = Enum
+KEYWORD_LATITUDE_TYPE = Enum
+#CENTER_LATITUDE = (Real, 6)
+#CENTER_LONGITUDE = (Real, 6)
+#REFERENCE_LATITUDE = (Real, 6)
+#REFERENCE_LONGITUDE = (Real, 6)
+CENTER_LATITUDE = Real
+CENTER_LONGITUDE = Real
+REFERENCE_LATITUDE = Real
+REFERENCE_LONGITUDE = Real
+LINE_FIRST_PIXEL = Integer
+LINE_LAST_PIXEL = Integer
+SAMPLE_FIRST_PIXEL = Integer
+SAMPLE_LAST_PIXEL = Integer
+#MAP_PROJECTION_ROTATION = (Real, 6)
+#MAP_RESOLUTION = (Real, 6)
+#MAP_SCALE = (Real, 4)
+#MAXIMUM_LATITUDE = (Real, 6)
+#MINIMUM_LATITUDE = (Real, 6)
+#LINE_PROJECTION_OFFSET = (Real,5)
+#SAMPLE_PROJECTION_OFFSET = (Real, 5)
+#EASTERNMOST_LONGITUDE = (Real, 6)
+#WESTERNMOST_LONGITUDE = (Real, 6)
+MAP_PROJECTION_ROTATION = Real
+MAP_RESOLUTION = Real
+MAP_SCALE = Real
+MAXIMUM_LATITUDE = Real
+MINIMUM_LATITUDE = Real
+LINE_PROJECTION_OFFSET = Real
+SAMPLE_PROJECTION_OFFSET = Real
+EASTERNMOST_LONGITUDE = Real
+WESTERNMOST_LONGITUDE = Real
+IMAGE_HEIGHT = Real
+
diff --git a/isis/appdata/translations/pdsExportEquirectangular.trn b/isis/appdata/translations/pdsExportEquirectangular.trn
new file mode 100644
index 0000000000..e2558b8df9
--- /dev/null
+++ b/isis/appdata/translations/pdsExportEquirectangular.trn
@@ -0,0 +1,251 @@
+# Translation file for converting Isis cube projection labels for Equirectangular
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EQUIRECTANGULAR, *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportImageImage.trn b/isis/appdata/translations/pdsExportImageImage.trn
new file mode 100644
index 0000000000..33faeab477
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageImage.trn
@@ -0,0 +1,63 @@
+Group = LINES
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINES
+ OutputPosition = (Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = LINE_SAMPLES
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_SAMPLES
+ OutputPosition = (Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = BANDS
+ Auto
+ InputKey = Bands
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = BANDS
+ OutputPosition = (Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = BAND_NAME
+ Auto
+ Optional
+ InputKey = Name
+ InputGroup = "IsisCube,BandBin"
+ InputPosition = (IsisCube, BandBin)
+ OutputName = FILTER_NAME
+ OutputPosition = (Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_FILTER_WAVELENGTH
+ Auto
+ Optional
+ InputKey = Center
+ InputGroup = "IsisCube,Bandbin"
+ InputPosition = (IsisCube, Bandbin)
+ OutputName = CENTER_FILTER_WAVELENGTH
+ OutputPosition = (Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = BANDWIDTH
+ Auto
+ Optional
+ InputKey = Width
+ InputGroup = "IsisCube,Bandbin"
+ InputPosition = (IsisCube, Bandbin)
+ OutputName = BANDWIDTH
+ OutputPosition = (Object, IMAGE)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportImageImage.typ b/isis/appdata/translations/pdsExportImageImage.typ
new file mode 100644
index 0000000000..ba0e59b8b3
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageImage.typ
@@ -0,0 +1,7 @@
+LINES = Integer
+LINE_SAMPLES = Integer
+BANDS = Integer
+SAMPLE_BITS = Integer
+SAMPLE_TYPE = Enum
+BAND_STORAGE_TYPE = Enum
+FILTER_NAME = String
diff --git a/isis/appdata/translations/pdsExportImageImagePixel16.typ b/isis/appdata/translations/pdsExportImageImagePixel16.typ
new file mode 100644
index 0000000000..9ee929a975
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageImagePixel16.typ
@@ -0,0 +1,8 @@
+SAMPLE_BIT_MASK = ("Binary",16)
+VALID_MINIMUM = Integer
+CORE_NULL = Integer
+CORE_LOW_REPR_SATURATION = Integer
+CORE_LOW_INSTR_SATURATION = Integer
+CORE_HIGH_REPR_SATURATION = Integer
+CORE_HIGH_INSTR_SATURATION = Integer
+
diff --git a/isis/appdata/translations/pdsExportImageImagePixel32.typ b/isis/appdata/translations/pdsExportImageImagePixel32.typ
new file mode 100644
index 0000000000..96bd8535a5
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageImagePixel32.typ
@@ -0,0 +1,8 @@
+SAMPLE_BIT_MASK = ("Binary",32)
+VALID_MINIMUM = (Hex, 4)
+CORE_NULL = (Hex, 4)
+CORE_LOW_REPR_SATURATION = (Hex, 4)
+CORE_LOW_INSTR_SATURATION = (Hex, 4)
+CORE_HIGH_REPR_SATURATION = (Hex, 4)
+CORE_HIGH_INSTR_SATURATION = (Hex, 4)
+
diff --git a/isis/appdata/translations/pdsExportImageImagePixel8.typ b/isis/appdata/translations/pdsExportImageImagePixel8.typ
new file mode 100644
index 0000000000..4fcf049781
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageImagePixel8.typ
@@ -0,0 +1,8 @@
+SAMPLE_BIT_MASK = ("Binary",8)
+VALID_MINIMUM = Integer
+CORE_NULL = Integer
+CORE_LOW_REPR_SATURATION = Integer
+CORE_LOW_INSTR_SATURATION = Integer
+CORE_HIGH_REPR_SATURATION = Integer
+CORE_HIGH_INSTR_SATURATION = Integer
+
diff --git a/isis/appdata/translations/pdsExportImageJP2.trn b/isis/appdata/translations/pdsExportImageJP2.trn
new file mode 100644
index 0000000000..6e5870d54e
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageJP2.trn
@@ -0,0 +1,63 @@
+Group = LINES
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINES
+ OutputPosition = (Object, UNCOMPRESSED_FILE, Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = LINE_SAMPLES
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_SAMPLES
+ OutputPosition = (Object, UNCOMPRESSED_FILE, Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = BANDS
+ Auto
+ InputKey = Bands
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = BANDS
+ OutputPosition = (Object, UNCOMPRESSED_FILE, Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = BAND_NAME
+ Auto
+ Optional
+ InputKey = Name
+ InputGroup = "IsisCube,BandBin"
+ InputPosition = (IsisCube, BandBin)
+ OutputName = FILTER_NAME
+ OutputPosition = (Object, UNCOMPRESSED_FILE, Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_FILTER_WAVELENGTH
+ Auto
+ Optional
+ InputKey = Center
+ InputGroup = "IsisCube,Bandbin"
+ InputPosition = (IsisCube, Bandbin)
+ OutputName = CENTER_FILTER_WAVELENGTH
+ OutputPosition = (Object, UNCOMPRESSED_FILE, Object, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = BANDWIDTH
+ Auto
+ Optional
+ InputKey = Width
+ InputGroup = "IsisCube,Bandbin"
+ InputPosition = (IsisCube, Bandbin)
+ OutputName = BANDWIDTH
+ OutputPosition = (Object, UNCOMPRESSED_FILE, Object, IMAGE)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportImageJP2.typ b/isis/appdata/translations/pdsExportImageJP2.typ
new file mode 100644
index 0000000000..cc14ea6c38
--- /dev/null
+++ b/isis/appdata/translations/pdsExportImageJP2.typ
@@ -0,0 +1,5 @@
+FILE_NAME = String
+ENCODING_TYPE = String
+ENCODING_TYPE_VERSION_NAME = String
+UNCOMPRESSED_FILE_NAME = String
+REQUIRED_STORAGE_BYTES = Integer
diff --git a/isis/appdata/translations/pdsExportLambertAzimuthalEqualArea.trn b/isis/appdata/translations/pdsExportLambertAzimuthalEqualArea.trn
new file mode 100644
index 0000000000..af63fbc01b
--- /dev/null
+++ b/isis/appdata/translations/pdsExportLambertAzimuthalEqualArea.trn
@@ -0,0 +1,202 @@
+# Translation file for converting ISIS cube projection labels for
+# Lambert Azimuthal Equal-Area to PDS IMAGE_MAP_PROJECTION labels
+# 2011-06-30 Jeannie Backer - Original Version
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("LAMBERT CONFORMAL", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportLambertConformal.trn b/isis/appdata/translations/pdsExportLambertConformal.trn
new file mode 100644
index 0000000000..0e7fffecd1
--- /dev/null
+++ b/isis/appdata/translations/pdsExportLambertConformal.trn
@@ -0,0 +1,251 @@
+# Translation file for converting Isis cube projection labels for LAMBERT CONFORMAL
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("LAMBERT CONFORMAL", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportMercator.trn b/isis/appdata/translations/pdsExportMercator.trn
new file mode 100644
index 0000000000..24855f3af4
--- /dev/null
+++ b/isis/appdata/translations/pdsExportMercator.trn
@@ -0,0 +1,251 @@
+# Translation file for converting Isis cube projection labels for MERCATOR
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (MERCATOR, *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportObliqueCylindrical.trn b/isis/appdata/translations/pdsExportObliqueCylindrical.trn
new file mode 100644
index 0000000000..870f81fae6
--- /dev/null
+++ b/isis/appdata/translations/pdsExportObliqueCylindrical.trn
@@ -0,0 +1,313 @@
+# Translation file for converting Isis cube projection labels for OBLIQUE CYLINDRICAL
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("OBLIQUE CYLINDRICAL", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = OBLIQUE_PROJ_POLE_LATITUDE
+ Auto
+ InputKey = PoleLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = OBLIQUE_PROJ_POLE_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = OBLIQUE_PROJ_POLE_LONGITUDE
+ Auto
+ InputKey = PoleLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = OBLIQUE_PROJ_POLE_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = OBLIQUE_PROJ_POLE_ROTATION
+ Auto
+ InputKey = PoleRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = OBLIQUE_PROJ_POLE_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = OBLIQUE_PROJ_X_AXIS_VECTOR
+ Auto
+ InputKey = XAxisVector
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = OBLIQUE_PROJ_X_AXIS_VECTOR
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = OBLIQUE_PROJ_Y_AXIS_VECTOR
+ Auto
+ InputKey = YAxisVector
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = OBLIQUE_PROJ_Y_AXIS_VECTOR
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = OBLIQUE_PROJ_Z_AXIS_VECTOR
+ Auto
+ InputKey = ZAxisVector
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = OBLIQUE_PROJ_Z_AXIS_VECTOR
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = Rotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportOrthographic.trn b/isis/appdata/translations/pdsExportOrthographic.trn
new file mode 100644
index 0000000000..cd98558490
--- /dev/null
+++ b/isis/appdata/translations/pdsExportOrthographic.trn
@@ -0,0 +1,251 @@
+# Translation file for converting Isis cube projection labels for ORTHOGRAPHIC
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (ORTHOGRAPHIC, *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportPointPerspective.trn b/isis/appdata/translations/pdsExportPointPerspective.trn
new file mode 100644
index 0000000000..57bab853fe
--- /dev/null
+++ b/isis/appdata/translations/pdsExportPointPerspective.trn
@@ -0,0 +1,261 @@
+# Translation file for converting Isis cube projection labels for POINT PERSPECTIVE
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("POINT PERSPECTIVE", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = IMAGE_HEIGHT
+ Auto
+ InputKey = Distance
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = IMAGE_HEIGHT
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportPolarStereographic.trn b/isis/appdata/translations/pdsExportPolarStereographic.trn
new file mode 100644
index 0000000000..4bc6fae90c
--- /dev/null
+++ b/isis/appdata/translations/pdsExportPolarStereographic.trn
@@ -0,0 +1,251 @@
+# Translation file for converting Isis cube projection labels for POLAR STEREOGRAPHIC
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("POLAR STEREOGRAPHIC", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportRobinson.trn b/isis/appdata/translations/pdsExportRobinson.trn
new file mode 100644
index 0000000000..758672e1de
--- /dev/null
+++ b/isis/appdata/translations/pdsExportRobinson.trn
@@ -0,0 +1,263 @@
+# Translation file for converting Isis cube projection labels for Robinson
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (ROBINSON, *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = COORDINATE_SYSTEM_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("BODY-FIXED ROTATING", Planetocentric)
+ Translation = ("BODY-FIXED ROTATING", Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportRootGen.typ b/isis/appdata/translations/pdsExportRootGen.typ
new file mode 100644
index 0000000000..4b77ee5ade
--- /dev/null
+++ b/isis/appdata/translations/pdsExportRootGen.typ
@@ -0,0 +1,19 @@
+PDS_VERSION_ID = Enum
+RECORD_TYPE = Enum
+RECORD_BYTES = Integer
+FILE_RECORDS = Integer
+LABEL_RECORDS = Integer
+INTERCHANGE_FORMAT = Enum
+DATA_SET_ID = String
+PRODUCER_ID = String
+OBSERVATION_ID = String
+PRODUCT_ID = String
+PRODUCT_VERSION_ID = String
+INSTRUMENT_ID = String
+INSTRUMENT_NAME = String
+INSTRUMENT_HOST_ID = String
+TARGET_NAME = String
+MISSION_PHASE_NAME = String
+ORBIT_NUMBER = Integer
+RATIONALE_DESC = String
+SOFTWARE_NAME = String
diff --git a/isis/appdata/translations/pdsExportSimpleCylindrical.trn b/isis/appdata/translations/pdsExportSimpleCylindrical.trn
new file mode 100644
index 0000000000..15dfe68506
--- /dev/null
+++ b/isis/appdata/translations/pdsExportSimpleCylindrical.trn
@@ -0,0 +1,253 @@
+# Translation file for converting Isis cube projection labels for SIMPLE CYLINDRICAL
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("SIMPLE CYLINDRICAL", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportSinusoidal.trn b/isis/appdata/translations/pdsExportSinusoidal.trn
new file mode 100644
index 0000000000..5da0cdb2a0
--- /dev/null
+++ b/isis/appdata/translations/pdsExportSinusoidal.trn
@@ -0,0 +1,263 @@
+# Translation file for converting Isis cube projection labels for Sinusoidal
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (SINUSOIDAL, *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = COORDINATE_SYSTEM_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("BODY-FIXED ROTATING", Planetocentric)
+ Translation = ("BODY-FIXED ROTATING", Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportTarget.trn b/isis/appdata/translations/pdsExportTarget.trn
new file mode 100644
index 0000000000..b3358542eb
--- /dev/null
+++ b/isis/appdata/translations/pdsExportTarget.trn
@@ -0,0 +1,131 @@
+Group = TARGET_NAME
+ Auto
+ InputKey = TargetName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = TARGET_NAME
+ OutputPosition = ROOT
+ Translation = (ADRASTEA, Adrastea)
+ Translation = (ADRASTEA, ADRASTEA)
+ Translation = (AMALTHEA, Amalthea)
+ Translation = (AMALTHEA, AMALTHEA)
+ Translation = (ARIEL, Ariel)
+ Translation = (ARIEL, ARIEL)
+ Translation = (ATLAS, Atlas)
+ Translation = (ATLAS, ATLAS)
+ Translation = (CALLISTO, Callisto)
+ Translation = (CALLISTO, CALLISTO)
+ Translation = (CALYPSO, Calypso)
+ Translation = (CALYPSO, CALYPSO)
+ Translation = (CERES, CERES)
+ Translation = (CERES, Ceres)
+ Translation = (CHARON, Charon)
+ Translation = (CHARON, CHARON)
+ Translation = (DAPHNIS, Daphnis)
+ Translation = (DAPHNIS, DAPHNIS)
+ Translation = (DEIMOS, Deimos)
+ Translation = (DEIMOS, DEIMOS)
+ Translation = (DIONE, Dione)
+ Translation = (DIONE, DIONE)
+ Translation = (ENCELADUS, Enceladus)
+ Translation = (ENCELADUS, ENCELADUS)
+ Translation = (EPIMETHEUS, Epimetheus)
+ Translation = (EPIMETHEUS, EPIMETHEUS)
+ Translation = (EUROPA, Europa)
+ Translation = (EUROPA, EUROPA)
+ Translation = (FOMALHAUT, Fomalhaut)
+ Translation = (FOMALHAUT, FOMALHAUT)
+ Translation = (GANYMEDE, Ganymede)
+ Translation = (GANYMEDE, GANYMEDE)
+ Translation = (HELENE, Helene)
+ Translation = (HELENE, HELENE)
+ Translation = (HIMALIA, Himalia)
+ Translation = (HIMALIA, HIMALIA)
+ Translation = (HYPERION, Hyperion)
+ Translation = (HYPERION, HYPERION)
+ Translation = (IAPETUS, Iapetus)
+ Translation = (IAPETUS, IAPETUS)
+ Translation = (IO, Io)
+ Translation = (IO, IO)
+ Translation = (JANUS, Janus)
+ Translation = (JANUS, JANUS)
+ Translation = (JUPITER, Jupiter)
+ Translation = (JUPITER, JUPITER)
+ Translation = (J_RINGS, JupiterRings)
+ Translation = (J_RINGS, J_RINGS)
+ Translation = (LARISSA, Larissa)
+ Translation = (LARISSA, LARISSA)
+ Translation = (MARS, Mars)
+ Translation = (MARS, MARS)
+ Translation = (MERCURY, Mercury)
+ Translation = (MERCURY, MERCURY)
+ Translation = (METHONE, Methone)
+ Translation = (METHONE, METHONE)
+ Translation = (METIS, Metis)
+ Translation = (METIS, METIS)
+ Translation = (MIMAS, Mimas)
+ Translation = (MIMAS, MIMAS)
+ Translation = (MIRANDA, Miranda)
+ Translation = (MIRANDA, MIRANDA)
+ Translation = (MOON, Moon)
+ Translation = (MOON, MOON)
+ Translation = (NEPTUNE, Neptune)
+ Translation = (NEPTUNE, NEPTUNE)
+ Translation = (NEREID, Nereid)
+ Translation = (NEREID, NEREID)
+ Translation = (N_RINGS, NeptuneRings)
+ Translation = (N_RINGS, N_RINGS)
+ Translation = (OBERON, Oberon)
+ Translation = (OBERON, OBERON)
+ Translation = (PALLENE, Pallene)
+ Translation = (PALLENE, PALLENE)
+ Translation = (PAN, Pan)
+ Translation = (PAN, PAN)
+ Translation = (PANDORA, Pandora)
+ Translation = (PANDORA, PANDORA)
+ Translation = (PHOBOS, Phobos)
+ Translation = (PHOBOS, PHOBOS)
+ Translation = (PHOEBE, Phoebe)
+ Translation = (PHOEBE, PHOEBE)
+ Translation = (PLUTO, Pluto)
+ Translation = (PLUTO, PLUTO)
+ Translation = (POLYDEUCES, Polydeuces)
+ Translation = (POLYDEUCES, POLYDEUCES)
+ Translation = (PROMETHEUS, Prometheus)
+ Translation = (PROMETHEUS, PROMETHEUS)
+ Translation = (PROTEUS, Proteus)
+ Translation = (PROTEUS, PROTEUS)
+ Translation = (PUCK, Puck)
+ Translation = (PUCK, PUCK)
+ Translation = (RHEA, Rhea)
+ Translation = (RHEA, RHEA)
+ Translation = (SATURN, Saturn)
+ Translation = (SATURN, SATURN)
+ Translation = (S_RINGS, SaturnRings)
+ Translation = (S_RINGS, S_RINGS)
+ Translation = ("DARK SKY", Sky)
+ Translation = ("DARK SKY", "DARK SKY")
+ Translation = (SPICA, Spica)
+ Translation = (SPICA, SPICA)
+ Translation = (TELESTO, Telesto)
+ Translation = (TELESTO, TELESTO)
+ Translation = (TETHYS, Tethys)
+ Translation = (TETHYS, TETHYS)
+ Translation = (THEBE, Thebe)
+ Translation = (THEBE, THEBE)
+ Translation = (TITAN, Titan)
+ Translation = (TITAN, TITAN)
+ Translation = (TITANIA, Titania)
+ Translation = (TITANIA, TITANIA)
+ Translation = (TRITON, Triton)
+ Translation = (TRITON, TRITON)
+ Translation = (URANUS, Uranus)
+ Translation = (URANUS, URANUS)
+ Translation = (UMBRIEL, Umbriel)
+ Translation = (UMBRIEL, UMBRIEL)
+ Translation = (VENUS, Venus)
+ Translation = (VENUS, VENUS)
+ Translation = (VESTA, VESTA)
+ Translation = (VESTA, Vesta)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsExportTransverseMercator.trn b/isis/appdata/translations/pdsExportTransverseMercator.trn
new file mode 100644
index 0000000000..0937f0c8af
--- /dev/null
+++ b/isis/appdata/translations/pdsExportTransverseMercator.trn
@@ -0,0 +1,253 @@
+# Translation file for converting Isis cube projection labels for TRANSVERSE MERCATOR
+# to PDS IMAGE_MAP_PROJECTION labels
+Group = MAP_PROJECTION_TYPE
+ Auto
+ InputKey = ProjectionName
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_PROJECTION_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = ("TRANSVERSE MERCATOR", *)
+End_Group
+
+Group = PROJECTION_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = PROJECTION_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = A_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = A_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = B_AXIS_RADIUS
+ Auto
+ InputKey = EquatorialRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = B_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = C_AXIS_RADIUS
+ Auto
+ InputKey = PolarRadius
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = C_AXIS_RADIUS
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = FIRST_STANDARD_PARALLEL
+ Auto
+ InputKey = FirstStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = FIRST_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = SECOND_STANDARD_PARALLEL
+ Auto
+ InputKey = SecondStandardParallel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = N/A
+ OutputName = SECOND_STANDARD_PARALLEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (N/A, *)
+End_Group
+
+Group = COORDINATE_SYSTEM_NAME
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = COORDINATE_SYSTEM_NAME
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = POSITIVE_LONGITUDE_DIRECTION
+ Auto
+ InputKey = LongitudeDirection
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = POSITIVE_LONGITUDE_DIRECTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (EAST, PositiveEast)
+ Translation = (WEST, PositiveWest)
+End_Group
+
+Group = KEYWORD_LATITUDE_TYPE
+ Auto
+ InputKey = LatitudeType
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = KEYWORD_LATITUDE_TYPE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (PLANETOCENTRIC, Planetocentric)
+ Translation = (PLANETOGRAPHIC, Planetographic)
+End_Group
+
+Group = CENTER_LATITUDE
+ Auto
+ InputKey = CenterLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = CENTER_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = CENTER_LONGITUDE
+ Auto
+ InputKey = CenterLongitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = CENTER_LONGITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LONGITUDE
+# Auto
+# OutputName = REFERENCE_LONGITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLongitude
+# NativeName = REFERENCE_LONGITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLongitude
+# Translation = ("N/A",*)
+# InputDefault = "N/A"
+# ForeignDefault = "N/A"
+#EndGroup
+Group = LINE_FIRST_PIXEL
+ Auto
+ InputKey = LineFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = LINE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = LINE_LAST_PIXEL
+ Auto
+ InputKey = Lines
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = LINE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SAMPLE_FIRST_PIXEL
+ Auto
+ InputKey = SampleFirstPixel
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 1
+ OutputName = SAMPLE_FIRST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (1, *)
+End_Group
+
+Group = SAMPLE_LAST_PIXEL
+ Auto
+ InputKey = Samples
+ InputGroup = "IsisCube,Core,Dimensions"
+ InputPosition = (IsisCube, Core, Dimensions)
+ OutputName = SAMPLE_LAST_PIXEL
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+#Group = REFERENCE_LATITUDE
+# Auto
+# OutputName = REFERENCE_LATITUDE
+# OutputPosition = ("Object","IMAGE_MAP_PROJECTION")
+# InputGroup = "IsisCube,Mapping"
+# InputKey = ReferenceLatitude
+# InputDefault = "N/A"
+# NativeName = REFERENCE_LATITUDE
+# NativePosition = ("Object","IMAGE_MAP_PROJECTION")
+# ForeignGroup = IsisCube,Mapping
+# ForeignKey = ReferenceLatitude
+# Translation = ("N/A",*)
+# ForeignDefault = "N/A"
+#EndGroup
+Group = MAP_PROJECTION_ROTATION
+ Auto
+ InputKey = MapProjectionRotation
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = 0.0
+ OutputName = MAP_PROJECTION_ROTATION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (0.0, *)
+End_Group
+
+Group = MAP_RESOLUTION
+ Auto
+ InputKey = Scale
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_RESOLUTION
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAP_SCALE
+ Auto
+ InputKey = PixelResolution
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ OutputName = MAP_SCALE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MAXIMUM_LATITUDE
+ Auto
+ InputKey = MaximumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MAXIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MINIMUM_LATITUDE
+ Auto
+ InputKey = MinimumLatitude
+ InputGroup = "IsisCube,Mapping"
+ InputPosition = (IsisCube, Mapping)
+ InputDefault = UNK
+ OutputName = MINIMUM_LATITUDE
+ OutputPosition = (Object, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImage.trn b/isis/appdata/translations/pdsImage.trn
new file mode 100644
index 0000000000..e4a6406769
--- /dev/null
+++ b/isis/appdata/translations/pdsImage.trn
@@ -0,0 +1,355 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^IMAGE
+ InputGroup = ROOT
+ InputGroup = FILE
+ InputGroup = UNCOMPRESSED_FILE
+ InputPosition = ROOT
+ InputPosition = FILE
+ InputPosition = UNCOMPRESSED_FILE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^IMAGE
+ InputGroup = ROOT
+ InputGroup = FILE
+ InputGroup = UNCOMPRESSED_FILE
+ InputPosition = ROOT
+ InputPosition = FILE
+ InputPosition = UNCOMPRESSED_FILE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = LINE_SAMPLES
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = LINES
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = SAMPLE_BITS
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = 8
+ Translation = (8, 8)
+ Translation = (16, 16)
+ Translation = (32, 32)
+End_Group
+
+Group = CorePixelType
+ InputKey = SAMPLE_TYPE
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, "UNSIGNED INTEGER")
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (VaxReal, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = SAMPLE_TYPE
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (MSB, "UNSIGNED INTEGER")
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = CoreBase
+ InputKey = OFFSET
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = SCALING_FACTOR
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = BAND_STORAGE_TYPE
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = BAND_SEQUENTIAL
+ Translation = (BSQ, BAND_SEQUENTIAL)
+ Translation = (BSQ, "BAND SEQUENTIAL")
+ Translation = (BIL, LINE_INTERLEAVED)
+ Translation = (BIP, SAMPLE_INTERLEAVED)
+End_Group
+
+Group = CoreNull
+ InputKey = NULL
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull2
+ InputKey = CORE_NULL
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = LOW_REPR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS2
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = LOW_INSTR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS2
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = HIGH_REPR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS2
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = HIGH_INSTR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS2
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = CORE_IMAGE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = CORE_IMAGE
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLineSuffixBytes
+ InputKey = LINE_SUFFIX_BYTES
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreLinePrefixBytes
+ InputKey = LINE_PREFIX_BYTES
+ InputGroup = IMAGE
+ InputGroup = "FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputPosition = IMAGE
+ InputPosition = (FILE, IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE, IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImageArchive.trn b/isis/appdata/translations/pdsImageArchive.trn
new file mode 100644
index 0000000000..ae9f180f02
--- /dev/null
+++ b/isis/appdata/translations/pdsImageArchive.trn
@@ -0,0 +1,176 @@
+Group = DataSetID
+ Auto
+ Optional
+ InputKey = DATA_SET_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = DataSetId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = DataSetName
+ Auto
+ Optional
+ InputKey = DATA_SET_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = DataSetName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = ProducerInstitutionName
+ Auto
+ Optional
+ InputKey = PRODUCER_INSTITUTION_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = ProducerInstitutionName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = ProducerId
+ Auto
+ Optional
+ InputKey = PRODUCER_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = ProducerId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = ProducerFullName
+ Auto
+ Optional
+ InputKey = PRODUCER_FULL_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = ProducerFullName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = ObservationId
+ Auto
+ Optional
+ InputKey = OBSERVATION_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = ObservationId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = ProductId
+ Auto
+ Optional
+ InputKey = PRODUCT_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = ProductId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = ProductVersionId
+ Auto
+ Optional
+ InputKey = PRODUCT_VERSION_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = ProductVersionId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = InstrumentHostName
+ Auto
+ Optional
+ InputKey = INSTRUMENT_HOST_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = InstrumentHostName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = InstrumentHostId
+ Auto
+ Optional
+ InputKey = INSTRUMENT_HOST_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = InstrumentHostId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = InstrumentName
+ Auto
+ Optional
+ InputKey = INSTRUMENT_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = InstrumentName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = InstrumentId
+ Auto
+ Optional
+ InputKey = INSTRUMENT_ID
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = InstrumentId
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = TargetName
+ Auto
+ Optional
+ InputKey = TARGET_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = TargetName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = MissionPhaseName
+ Auto
+ Optional
+ InputKey = MISSION_PHASE_NAME
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = MissionPhaseName
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = OrbitNumber
+ Auto
+ Optional
+ InputKey = ORBIT_NUMBER
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = OrbitNumber
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+
+Group = RationaleDescription
+ Auto
+ Optional
+ InputKey = RATIONALE_DESC
+ InputGroup = ROOT
+ InputPosition = ROOT
+ OutputName = RationaleDescription
+ OutputPosition = (Group, Archive)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImageBandBin.trn b/isis/appdata/translations/pdsImageBandBin.trn
new file mode 100644
index 0000000000..60c4d91041
--- /dev/null
+++ b/isis/appdata/translations/pdsImageBandBin.trn
@@ -0,0 +1,96 @@
+Group = Center
+ Auto
+ Optional
+ InputKey = CENTER_FILTER_WAVELENGTH
+ InputGroup = IMAGE
+ InputGroup = QUBE
+ InputGroup = SPECTRAL_QUBE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,QUBE"
+ InputGroup = "UNCOMPRESSED_FILE,SPECTRAL_QUBE"
+ InputPosition = IMAGE
+ InputPosition = QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputPosition = (UNCOMPRESSED_FILE,IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE,QUBE)
+ InputPosition = (UNCOMPRESSED_FILE,SPECTRAL_QUBE)
+ OutputName = Center
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+Group = FilterName
+ Auto
+ Optional
+ InputKey = FILTER_NAME
+ InputGroup = IMAGE
+ InputGroup = QUBE
+ InputGroup = SPECTRAL_QUBE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,QUBE"
+ InputGroup = "UNCOMPRESSED_FILE,SPECTRAL_QUBE"
+ InputPosition = IMAGE
+ InputPosition = QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputPosition = (UNCOMPRESSED_FILE,IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE,QUBE)
+ InputPosition = (UNCOMPRESSED_FILE,SPECTRAL_QUBE)
+ OutputName = FilterName
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+Group = Width
+ Auto
+ Optional
+ InputKey = BANDWIDTH
+ InputGroup = IMAGE
+ InputGroup = QUBE
+ InputGroup = SPECTRAL_QUBE
+ InputGroup = "UNCOMPRESSED_FILE,IMAGE"
+ InputGroup = "UNCOMPRESSED_FILE,QUBE"
+ InputGroup = "UNCOMPRESSED_FILE,SPECTRAL_QUBE"
+ InputPosition = IMAGE
+ InputPosition = QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputPosition = (UNCOMPRESSED_FILE,IMAGE)
+ InputPosition = (UNCOMPRESSED_FILE,QUBE)
+ InputPosition = (UNCOMPRESSED_FILE,SPECTRAL_QUBE)
+ OutputName = Width
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+# Added for Galileo Orbiter NIMS PDS products
+Group = Center2
+ Auto
+ Optional
+ InputKey = BAND_BIN_CENTER
+ InputPosition = (SPECTRAL_QUBE, BAND_BIN)
+ OutputName = Center
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+# Added for Galileo Orbiter NIMS PDS products
+Group = Width2
+ Auto
+ Optional
+ InputKey = BAND_BIN_WIDTH
+ InputPosition = (SPECTRAL_QUBE, BAND_BIN)
+ OutputName = Width
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+
+# Added for Galileo Orbiter NIMS PDS products
+Group = FilterNumber2
+ Auto
+ Optional
+ InputKey = BAND_BIN_FILTER_NUMBER
+ InputPosition = (SPECTRAL_QUBE, BAND_BIN)
+ OutputName = FilterNumber
+ OutputPosition = (Group, BandBin)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImageProjection.trn b/isis/appdata/translations/pdsImageProjection.trn
new file mode 100644
index 0000000000..534a6de323
--- /dev/null
+++ b/isis/appdata/translations/pdsImageProjection.trn
@@ -0,0 +1,288 @@
+Group = ProjectionName
+ InputKey = MAP_PROJECTION_TYPE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (Equirectangular, EQUIRECTANGULAR)
+ Translation = (Equirectangular, EQUIRECTANGULAR_CYLINDRICAL)
+ Translation = (Equirectangular, "EQUIRECTANGULAR CYLINDRICAL")
+ Translation = (LambertConformal, "LAMBERT CONFORMAL")
+ Translation = (LambertConformal, LAMBERT_CONFORMAL)
+ Translation = (LambertConformal, LAMBERT_CONFORMAL_CONIC)
+ Translation = (Mercator, MERCATOR)
+ Translation = (ObliqueCylindrical, OBLIQUE_CYLINDRICAL)
+ Translation = (ObliqueCylindrical, "OBLIQUE CYLINDRICAL")
+ Translation = (Orthographic, ORTHOGRAPHIC)
+ Translation = (PointPerspective, POINT_PERSPECTIVE)
+ Translation = (PolarStereographic, "POLAR STEREOGRAPHIC")
+ Translation = (PolarStereographic, POLAR_STEREOGRAPHIC)
+ Translation = (Robinson, ROBINSON)
+ Translation = (PolarStereographic, STEREOGRAPHIC)
+ Translation = (PolarStereographic, Stereographic)
+ Translation = (SimpleCylindrical, SIMPLE_CYLINDRICAL)
+ Translation = (SimpleCylindrical, "SIMPLE CYLINDRICAL")
+ Translation = (SimpleCylindrical, "Simple Cylindrical")
+ Translation = (Sinusoidal, SINUSOIDAL)
+ Translation = (Sinusoidal, SINUSOIDAL_EQUAL-AREA)
+ Translation = (Sinusoidal, "SINUSOIDAL EQUAL-AREA")
+ Translation = (TransverseMercator, TRANSVERSE_MERCATOR)
+ Translation = (TransverseMercator, "TRANSVERSE MERCATOR")
+End_Group
+
+Group = TargetName
+ InputKey = TARGET_NAME
+ Translation = (Adrastea, ADRASTEA)
+ Translation = (Amalthea, AMALTHEA)
+ Translation = (Ariel, ARIEL)
+ Translation = (Atlas, ATLAS)
+ Translation = (Callisto, CALLISTO)
+ Translation = (Calypso, CALYPSO)
+ Translation = (Ceres, CERES)
+ Translation = (Ceres, "4 CERES")
+ Translation = (Ceres, "1 CERES")
+ Translation = (Charon, CHARON)
+ Translation = (Daphnis, DAPHNIS)
+ Translation = (Deimos, DEIMOS)
+ Translation = (Dione, DIONE)
+ Translation = (Enceladus, ENCELADUS)
+ Translation = (Epimetheus, EPIMETHEUS)
+ Translation = (Eros, EROS)
+ Translation = (Europa, EUROPA)
+ Translation = (Fomalhaut, FOMALHAUT)
+ Translation = (Ganymede, GANYMEDE)
+ Translation = (Helene, HELENE)
+ Translation = (Himalia, HIMALIA)
+ Translation = (Hyperion, HYPERION)
+ Translation = (Iapetus, IAPETUS)
+ Translation = (Io, IO)
+ Translation = (Janus, JANUS)
+ Translation = (Jupiter, JUPITER)
+ Translation = (JupiterRings, J_RINGS)
+ Translation = (Larissa, LARISSA)
+ Translation = (Mars, MARS)
+ Translation = (Mercury, MERCURY)
+ Translation = (Methone, METHONE)
+ Translation = (Metis, METIS)
+ Translation = (Mimas, MIMAS)
+ Translation = (Miranda, MIRANDA)
+ Translation = (Moon, MOON)
+ Translation = (Neptune, NEPTUNE)
+ Translation = (Nereid, NEREID)
+ Translation = (NeptuneRings, N_RINGS)
+ Translation = (Oberon, OBERON)
+ Translation = (Pallene, PALLENE)
+ Translation = (Pan, PAN)
+ Translation = (Pandora, PANDORA)
+ Translation = (Phobos, PHOBOS)
+ Translation = (Phoebe, PHOEBE)
+ Translation = (Pluto, PLUTO)
+ Translation = (Polydeuces, POLYDEUCES)
+ Translation = (Prometheus, PROMETHEUS)
+ Translation = (Proteus, PROTEUS)
+ Translation = (Puck, PUCK)
+ Translation = (Rhea, RHEA)
+ Translation = (Saturn, SATURN)
+ Translation = (SaturnRings, S_RINGS)
+ Translation = (Sky, "DARK SKY")
+ Translation = (Spica, SPICA)
+ Translation = (Telesto, TELESTO)
+ Translation = (Tethys, TETHYS)
+ Translation = (Thebe, THEBE)
+ Translation = (Titan, TITAN)
+ Translation = (Titania, TITANIA)
+ Translation = (Triton, TRITON)
+ Translation = (Uranus, URANUS)
+ Translation = (Umbriel, UMBRIEL)
+ Translation = (Venus, VENUS)
+ Translation = (Vesta, VESTA)
+ Translation = (Vesta, "4 VESTA")
+End_Group
+
+Group = EquatorialRadius
+ InputKey = A_AXIS_RADIUS
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ InputKey = C_AXIS_RADIUS
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ InputKey = POSITIVE_LONGITUDE_DIRECTION
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputDefault = WEST
+ Translation = (PositiveEast, EAST)
+ Translation = (PositiveWest, WEST)
+End_Group
+
+Group = LongitudeDirection2
+ InputKey = KEYWORD_POSITIVE_LONGITUDE_DIRECTION
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputDefault = WEST
+ Translation = (PositiveEast, EAST)
+ Translation = (PositiveWest, WEST)
+End_Group
+
+Group = LatitudeType
+ InputKey = KEYWORD_LATITUDE_TYPE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputDefault = PLANETOGRAPHIC
+ Translation = (Planetographic, PLANETOGRAPHIC)
+ Translation = (Planetocentric, PLANETOCENTRIC)
+End_Group
+
+Group = LatitudeType2
+ InputKey = COORDINATE_SYSTEM_NAME
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputDefault = PLANETOCENTRIC
+ Translation = (Planetographic, PLANETOGRAPHIC)
+ Translation = (Planetocentric, PLANETOCENTRIC)
+End_Group
+
+Group = LongitudeDomain
+ InputKey = LONGITUDE_SYSTEM
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputDefault = 360
+ Translation = (360, 360)
+ Translation = (180, 180)
+End_Group
+
+Group = MinimumLatitude
+ InputKey = MINIMUM_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLatitude
+ InputKey = MAXIMUM_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = MinimumLongitude
+ InputKey = EASTERNMOST_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = MinimumLongitude2
+ InputKey = MINIMUM_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLongitude
+ InputKey = WESTERNMOST_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLongitude2
+ InputKey = MAXIMUM_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolution
+ InputKey = MAP_SCALE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = Scale
+ InputKey = MAP_RESOLUTION
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = Rotation
+ InputKey = MAP_PROJECTION_ROTATION
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = LineProjectionOffset
+ Optional
+ InputKey = LINE_PROJECTION_OFFSET
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION
+ Translation = (*, *)
+End_Group
+
+Group = LineProjectionOffset2
+ Optional
+ InputKey = X_AXIS_PROJECTION_OFFSET
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+
+Group = SampleProjectionOffset
+ Optional
+ InputKey = SAMPLE_PROJECTION_OFFSET
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION
+ Translation = (*, *)
+End_Group
+
+Group = SampleProjectionOffset2
+ Optional
+ InputKey = Y_AXIS_PROJECTION_OFFSET
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportEquirectangular.trn b/isis/appdata/translations/pdsImportEquirectangular.trn
new file mode 100644
index 0000000000..a72f3f3af8
--- /dev/null
+++ b/isis/appdata/translations/pdsImportEquirectangular.trn
@@ -0,0 +1,28 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportLambertAzimuthalEqualArea.trn b/isis/appdata/translations/pdsImportLambertAzimuthalEqualArea.trn
new file mode 100644
index 0000000000..c2536f1325
--- /dev/null
+++ b/isis/appdata/translations/pdsImportLambertAzimuthalEqualArea.trn
@@ -0,0 +1,31 @@
+# Translation file for importing PDS IMAGE_MAP_PROJECTION labels for
+# Lambert Azimuthal Equal-Area projection in ISIS3.
+# 2011-06-30 Jeannie Backer - Original Version
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportLambertConformal.trn b/isis/appdata/translations/pdsImportLambertConformal.trn
new file mode 100644
index 0000000000..1dc67890d2
--- /dev/null
+++ b/isis/appdata/translations/pdsImportLambertConformal.trn
@@ -0,0 +1,56 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = FirstStandardParallel
+ Auto
+ InputKey = FIRST_STANDARD_PARALLEL
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = FirstStandardParallel
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = SecondStandardParallel
+ Auto
+ InputKey = SECOND_STANDARD_PARALLEL
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = SecondStandardParallel
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportMercator.trn b/isis/appdata/translations/pdsImportMercator.trn
new file mode 100644
index 0000000000..a72f3f3af8
--- /dev/null
+++ b/isis/appdata/translations/pdsImportMercator.trn
@@ -0,0 +1,28 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportObliqueCylindrical.trn b/isis/appdata/translations/pdsImportObliqueCylindrical.trn
new file mode 100644
index 0000000000..941a6c0336
--- /dev/null
+++ b/isis/appdata/translations/pdsImportObliqueCylindrical.trn
@@ -0,0 +1,84 @@
+Group = PoleLatitude
+ Auto
+ InputKey = OBLIQUE_PROJ_POLE_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = PoleLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = PoleLongitude
+ Auto
+ InputKey = OBLIQUE_PROJ_POLE_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = PoleLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = PoleRotation
+ Auto
+ InputKey = OBLIQUE_PROJ_POLE_ROTATION
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = PoleRotation
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = XAxisVector
+ Auto
+ InputKey = OBLIQUE_PROJ_X_AXIS_VECTOR
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = XAxisVector
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = YAxisVector
+ Auto
+ InputKey = OBLIQUE_PROJ_Y_AXIS_VECTOR
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = YAxisVector
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = ZAxisVector
+ Auto
+ InputKey = OBLIQUE_PROJ_Z_AXIS_VECTOR
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = ZAxisVector
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportOrthographic.trn b/isis/appdata/translations/pdsImportOrthographic.trn
new file mode 100644
index 0000000000..a72f3f3af8
--- /dev/null
+++ b/isis/appdata/translations/pdsImportOrthographic.trn
@@ -0,0 +1,28 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportPointPerspective.trn b/isis/appdata/translations/pdsImportPointPerspective.trn
new file mode 100644
index 0000000000..a3447426fa
--- /dev/null
+++ b/isis/appdata/translations/pdsImportPointPerspective.trn
@@ -0,0 +1,45 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = Distance
+ Auto
+ InputKey = IMAGE_HEIGHT
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0
+ OutputName = Distance
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportPolarStereographic.trn b/isis/appdata/translations/pdsImportPolarStereographic.trn
new file mode 100644
index 0000000000..a72f3f3af8
--- /dev/null
+++ b/isis/appdata/translations/pdsImportPolarStereographic.trn
@@ -0,0 +1,28 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportRobinson.trn b/isis/appdata/translations/pdsImportRobinson.trn
new file mode 100644
index 0000000000..78a000c4ab
--- /dev/null
+++ b/isis/appdata/translations/pdsImportRobinson.trn
@@ -0,0 +1,16 @@
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportSimpleCylindrical.trn b/isis/appdata/translations/pdsImportSimpleCylindrical.trn
new file mode 100644
index 0000000000..8995a8412e
--- /dev/null
+++ b/isis/appdata/translations/pdsImportSimpleCylindrical.trn
@@ -0,0 +1,14 @@
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportSinusoidal.trn b/isis/appdata/translations/pdsImportSinusoidal.trn
new file mode 100644
index 0000000000..78a000c4ab
--- /dev/null
+++ b/isis/appdata/translations/pdsImportSinusoidal.trn
@@ -0,0 +1,16 @@
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = IMAGE_MAP_PROJECTION_CATALOG
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION_CATALOG
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsImportTransverseMercator.trn b/isis/appdata/translations/pdsImportTransverseMercator.trn
new file mode 100644
index 0000000000..424b72f8df
--- /dev/null
+++ b/isis/appdata/translations/pdsImportTransverseMercator.trn
@@ -0,0 +1,43 @@
+Group = CenterLatitude
+ Auto
+ InputKey = CENTER_LATITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLatitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = CenterLongitude
+ Auto
+ InputKey = CENTER_LONGITUDE
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ OutputName = CenterLongitude
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+
+Group = ScaleFactor
+ Auto
+ InputKey = THIS_KEYWORD_WILL_NEVER_EXIST
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 1
+ OutputName = ScaleFactor
+ OutputPosition = (Group, Mapping)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsL0.trn b/isis/appdata/translations/pdsL0.trn
new file mode 100644
index 0000000000..9348f4ce95
--- /dev/null
+++ b/isis/appdata/translations/pdsL0.trn
@@ -0,0 +1,219 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^L0_IMAGE
+ InputPosition = L0_FILE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^L0_IMAGE
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = LINE_SAMPLES
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = LINES
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+ InputDefault = 1
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = SAMPLE_BITS
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = 8
+ Translation = (8, 8)
+ Translation = (16, 16)
+ Translation = (32, 32)
+End_Group
+
+Group = CorePixelType
+ InputKey = SAMPLE_TYPE
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (VaxReal, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = SAMPLE_TYPE
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = CoreBase
+ InputKey = OFFSET
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = SCALING_FACTOR
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = BAND_STORAGE_TYPE
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = BAND_SEQUENTIAL
+ Translation = (BSQ, BAND_SEQUENTIAL)
+ Translation = (BSQ, "BAND SEQUENTIAL")
+ Translation = (BIL, LINE_INTERLEAVED)
+ Translation = (BIP, SAMPLE_INTERLEAVED)
+End_Group
+
+Group = CoreNull
+ InputKey = NULL
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull2
+ InputKey = CORE_NULL
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = LOW_REPR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS2
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = LOW_INSTR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS2
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = HIGH_REPR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS2
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = HIGH_INSTR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS2
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputPosition = (L0_FILE, L0_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLineSuffixBytes
+ InputKey = LINE_SUFFIX_BYTES
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreLinePrefixBytes
+ InputKey = LINE_PREFIX_BYTES
+ InputPosition = (L0_FILE, L0_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsLabelExport.trn b/isis/appdata/translations/pdsLabelExport.trn
new file mode 100644
index 0000000000..0e60641e15
--- /dev/null
+++ b/isis/appdata/translations/pdsLabelExport.trn
@@ -0,0 +1,121 @@
+Group = DATA_SET_ID
+ Auto
+ InputKey = DataSetId
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = DATA_SET_ID
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = PRODUCER_ID
+ Auto
+ InputKey = ProducerId
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = PRODUCER_ID
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = OBSERVATION_ID
+ Auto
+ InputKey = ObservationId
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = OBSERVATION_ID
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = PRODUCT_ID
+ Auto
+ InputKey = ProductId
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = PRODUCT_ID
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = PRODUCT_VERSION_ID
+ Auto
+ InputKey = ProductVersionId
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = PRODUCT_VERSION_ID
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = INSTRUMENT_ID
+ Auto
+ InputKey = InstrumentId
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = NULL
+ OutputName = INSTRUMENT_ID
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = INSTRUMENT_NAME
+ Auto
+ InputKey = InstrumentName
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = NULL
+ OutputName = INSTRUMENT_NAME
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = MISSION_PHASE_NAME
+ Auto
+ InputKey = MissionPhaseName
+ InputGroup = "IsisCube,Instrument"
+ InputPosition = (IsisCube, Instrument)
+ InputDefault = NULL
+ OutputName = MISSION_PHASE_NAME
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = ORBIT_NUMBER
+ Auto
+ InputKey = OrbitNumber
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = ORBIT_NUMBER
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = RATIONALE_DESC
+ Auto
+ InputKey = RationaleDescription
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = RATIONALE_DESC
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+
+Group = SOFTWARE_NAME
+ Auto
+ InputKey = SoftwareName
+ InputGroup = "IsisCube,Archive"
+ InputPosition = (IsisCube, Archive)
+ InputDefault = NULL
+ OutputName = SOFTWARE_NAME
+ OutputPosition = Root
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsLoc.trn b/isis/appdata/translations/pdsLoc.trn
new file mode 100644
index 0000000000..51833ed0a0
--- /dev/null
+++ b/isis/appdata/translations/pdsLoc.trn
@@ -0,0 +1,220 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^LOC_IMAGE
+ InputPosition = LOC_FILE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^LOC_IMAGE
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = LINE_SAMPLES
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = LINES
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+ InputDefault = 1
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = SAMPLE_BITS
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = 8
+ Translation = (8, 8)
+ Translation = (16, 16)
+ Translation = (32, 32)
+ Translation = (64, 64)
+End_Group
+
+Group = CorePixelType
+ InputKey = SAMPLE_TYPE
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (VaxReal, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = SAMPLE_TYPE
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = CoreBase
+ InputKey = OFFSET
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = SCALING_FACTOR
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = BAND_STORAGE_TYPE
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = BAND_SEQUENTIAL
+ Translation = (BSQ, BAND_SEQUENTIAL)
+ Translation = (BSQ, "BAND SEQUENTIAL")
+ Translation = (BIL, LINE_INTERLEAVED)
+ Translation = (BIP, SAMPLE_INTERLEAVED)
+End_Group
+
+Group = CoreNull
+ InputKey = NULL
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull2
+ InputKey = CORE_NULL
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = LOW_REPR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS2
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = LOW_INSTR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS2
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = HIGH_REPR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS2
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = HIGH_INSTR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS2
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLineSuffixBytes
+ InputKey = LINE_SUFFIX_BYTES
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreLinePrefixBytes
+ InputKey = LINE_PREFIX_BYTES
+ InputPosition = (LOC_FILE, LOC_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsObs.trn b/isis/appdata/translations/pdsObs.trn
new file mode 100644
index 0000000000..c486a232b3
--- /dev/null
+++ b/isis/appdata/translations/pdsObs.trn
@@ -0,0 +1,219 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^OBS_IMAGE
+ InputPosition = OBS_FILE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^OBS_IMAGE
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = LINE_SAMPLES
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = LINES
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+ InputDefault = 1
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = SAMPLE_BITS
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = 8
+ Translation = (8, 8)
+ Translation = (16, 16)
+ Translation = (32, 32)
+End_Group
+
+Group = CorePixelType
+ InputKey = SAMPLE_TYPE
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (VaxReal, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = SAMPLE_TYPE
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = CoreBase
+ InputKey = OFFSET
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = SCALING_FACTOR
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = BAND_STORAGE_TYPE
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = BAND_SEQUENTIAL
+ Translation = (BSQ, BAND_SEQUENTIAL)
+ Translation = (BSQ, "BAND SEQUENTIAL")
+ Translation = (BIL, LINE_INTERLEAVED)
+ Translation = (BIP, SAMPLE_INTERLEAVED)
+End_Group
+
+Group = CoreNull
+ InputKey = NULL
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull2
+ InputKey = CORE_NULL
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = LOW_REPR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS2
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = LOW_INSTR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS2
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = HIGH_REPR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS2
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = HIGH_INSTR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS2
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLineSuffixBytes
+ InputKey = LINE_SUFFIX_BYTES
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreLinePrefixBytes
+ InputKey = LINE_PREFIX_BYTES
+ InputPosition = (OBS_FILE, OBS_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsProjectionLineSampToXY.def b/isis/appdata/translations/pdsProjectionLineSampToXY.def
new file mode 100644
index 0000000000..01a091a8a9
--- /dev/null
+++ b/isis/appdata/translations/pdsProjectionLineSampToXY.def
@@ -0,0 +1,118 @@
+# This file is used by the ProcessImportPds class to define the offset and
+# multiplication factors used to convert PDS 3 SampleProjectionOffset
+# and LineProjectionOffset to ISIS3 UpperLeftX and UpperLeftY.
+#
+# The Keyword defines which keyword is searched for in the pds file. The
+# Pattern is then used to match the value in the defined keyword. If there
+# is a match, the given values are used.
+# The defaults used in ProcessImportPds are:
+# xMult = -1.0
+# yMult = 1.0
+# xOff = 0.5
+# yOff = 0.5
+#
+# Equations used are
+#
+# upperLeftX = xmult * (sampleOffset + xOff) * PixelResolution
+# upperLeftY = ymult * (lineOffset + yOff) * PixelResolution
+#
+# Anytime a new group is added to this file, all 6 keywords must to be
+# defined (Keyword, Pattern, xMult, yMult, xOff, yOff).
+#
+# @history 2007-04-10 Tracie Sucharski, Original version with
+# Isis2 definitions.
+# @history 2008-06-10 Jeff Anderson, Fixed Magellan to be more specific to
+# FMAPS and MIDRS
+# @history 2008-10-01 Steven Lambright, Fixed Isis 2 offsets, fixed cassini radars
+# Keyword/Pattern values. Commented and fixed MIDR offsets.
+# @history 2011-01-26 Janet Barrett, Added support for Kaguya Terrain Camera
+# (TC_MAP)
+# @history 2011-11-16 Jeff Anderson, Added support for LROC data
+# @history 2012-03-04 Janet Barrett, Added support for Kaguya Terrain Camera
+# Ortho data (TCO_MAP)
+# @history 2017-05-25 J Bonn KAGUYA TERRAIN CAMERA and KAGUYA TERRAIN CAMERA
+# ORTHO entires to +0.5 yoff,yoff per ticket m04506
+# @history 2017-05-26 T Hare With ticket m02244 fix, Removed entires that no
+# longer need an override including: CHANDRAYAAN and LRO
+# MINIRF, CASSINI RADAR, LROC PDS RDR, MESSENGER DEM, and
+# HRSC PDS products. Added new entry for MGS MOLA
+
+Object = ProjectionOffsetMults
+ # MAGELLAN - MIDR
+ # Must stay above ISIS2
+ # Magellan MIDR file labels were converted from VICAR labels to PDS
+ # labels, and in this conversion the sample/line offsets were rounded
+ # to whole numbers; subpixel accuracy was lost. Because of this, we'll
+ # never exactly match the latitude/longitude but we can be close.
+ Group = Selection
+ Keyword = "DATA_SET_ID"
+ Pattern = "MGN-V-RDRS-5-MIDR"
+ xMult = -1.0
+ yMult = 1.0
+ xOff = -0.5
+ yOff = 1.0
+ End_Group
+
+ # VIKING ORBITER
+ Group = Selection
+ Keyword = "DATA_SET_ID"
+ Pattern = "VO1/VO2-M-VIS-5-DIM-V1.0"
+ xMult = -1.0
+ yMult = 1.0
+ xOff = -1.0
+ yOff = -1.0
+ End_Group
+
+ # ISIS2
+ Group = Selection
+ Keyword = "CCSD3ZF0000100000001NJPL3IF0PDS200000001"
+ Pattern = "SFDU_LABEL"
+ xMult = 1.0
+ yMult = -1.0
+ xOff = -0.5
+ yOff = -0.5
+ End_Group
+
+ # MAGELLAN - FMAP
+ Group = Selection
+ Keyword = "DATA_SET_ID"
+ Pattern = "MGN-V-RDRS-5-DIM"
+ xMult = 1.0
+ yMult = -1.0
+ xOff = 1.5
+ yOff = 1.5
+ End_Group
+
+ # KAGUYA TERRAIN CAMERA ORTHO
+ Group = Selection
+ Keyword = "DATA_SET_ID"
+ Pattern = "TCO_MAP"
+ xMult = 1.0
+ yMult = 1.0
+ xOff = 0.5
+ yOff = 0.5
+ End_Group
+
+ # KAGUYA TERRAIN CAMERA
+ Group = Selection
+ Keyword = "DATA_SET_ID"
+ Pattern = "TC_MAP"
+ xMult = 1.0
+ yMult = 1.0
+ xOff = 0.5
+ yOff = 0.5
+ End_Group
+
+ # MOLA MEGDR
+ Group = Selection
+ Keyword = "DATA_SET_ID"
+ Pattern = "MGS-M-MOLA-5-MEGDR-L3-V1.0"
+ xMult = -1.0
+ yMult = 1.0
+ xOff = -0.5
+ yOff = -0.5
+ End_Group
+
+End_Object
+
+
diff --git a/isis/appdata/translations/pdsQube.trn b/isis/appdata/translations/pdsQube.trn
new file mode 100644
index 0000000000..7a1e5f3c35
--- /dev/null
+++ b/isis/appdata/translations/pdsQube.trn
@@ -0,0 +1,229 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^QUBE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ Translation = (*, *)
+End_Group
+
+Group = CoreAxisNames
+ InputKey = AXIS_NAME
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = CORE_ITEMS
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = CORE_ITEMS
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = CORE_ITEMS
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputGroup = IMAGE
+ InputPosition = IMAGE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = CORE_ITEM_BYTES
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 1
+ Translation = (8, 1)
+ Translation = (16, 2)
+ Translation = (32, 4)
+End_Group
+
+Group = CorePixelType
+ InputKey = CORE_ITEM_TYPE
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (Real, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = CORE_ITEM_TYPE
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = BandBase
+ InputKey = BAND_BIN_BASE
+ InputGroup = BAND_BIN
+ InputPosition = BAND_BIN
+ Translation = (*, *)
+End_Group
+
+Group = BandMultiplier
+ InputKey = BAND_BIN_MULTIPLIER
+ InputGroup = BAND_BIN
+ InputPosition = BAND_BIN
+ Translation = (*, *)
+End_Group
+
+Group = CoreBase
+ InputKey = CORE_BASE
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = CORE_MULTIPLIER
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = AXIS_NAME
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull
+ InputKey = CORE_NULL
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (*, *)
+End_Group
+
+Group = SuffixItemSize
+ InputKey = SUFFIX_BYTES
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 4
+ Translation = (*, *)
+End_Group
+
+Group = AxisSuffixCount
+ InputKey = SUFFIX_ITEMS
+ InputGroup = QUBE
+ InputPosition = QUBE
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsQubeProjection.trn b/isis/appdata/translations/pdsQubeProjection.trn
new file mode 100644
index 0000000000..0af255ba8c
--- /dev/null
+++ b/isis/appdata/translations/pdsQubeProjection.trn
@@ -0,0 +1,235 @@
+Group = ProjectionName
+ InputKey = MAP_PROJECTION_TYPE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (Equirectangular, EQUIRECTANGULAR)
+ Translation = (Equirectangular, EQUIRECTANGULAR_CYLINDRICAL)
+ Translation = (Equirectangular, "EQUIRECTANGULAR CYLINDRICAL")
+ Translation = (LambertConformal, "LAMBERT CONFORMAL")
+ Translation = (LambertConformal, LAMBERT_CONFORMAL)
+ Translation = (LambertConformal, LAMBERT_CONFORMAL_CONIC)
+ Translation = (Mercator, MERCATOR)
+ Translation = (ObliqueCylindrical, OBLIQUE_CYLINDRICAL)
+ Translation = (ObliqueCylindrical, "OBLIQUE CYLINDRICAL")
+ Translation = (Orthographic, ORTHOGRAPHIC)
+ Translation = (PointPerspective, POINT_PERSPECTIVE)
+ Translation = (PolarStereographic, "POLAR STEREOGRAPHIC")
+ Translation = (PolarStereographic, POLAR_STEREOGRAPHIC)
+ Translation = (PolarStereographic, STEREOGRAPHIC)
+ Translation = (Robinson, ROBINSON)
+ Translation = (SimpleCylindrical, SIMPLE_CYLINDRICAL)
+ Translation = (SimpleCylindrical, "SIMPLE CYLINDRICAL")
+ Translation = (Sinusoidal, SINUSOIDAL)
+ Translation = (Sinusoidal, SINUSOIDAL_EQUAL-AREA)
+ Translation = (Sinusoidal, "SINUSOIDAL EQUAL-AREA")
+ Translation = (TransverseMercator, TRANSVERSE_MERCATOR)
+ Translation = (TransverseMercator, "TRANSVERSE MERCATOR")
+End_Group
+
+Group = TargetName
+ InputKey = TARGET_NAME
+ InputGroup = QUBE
+ InputPosition = QUBE
+ Translation = (Adrastea, ADRASTEA)
+ Translation = (Amalthea, AMALTHEA)
+ Translation = (Ariel, ARIEL)
+ Translation = (Atlas, ATLAS)
+ Translation = (Callisto, CALLISTO)
+ Translation = (Calypso, CALYPSO)
+ Translation = (Daphnis, DAPHNIS)
+ Translation = (Deimos, DEIMOS)
+ Translation = (Dione, DIONE)
+ Translation = (Enceladus, ENCELADUS)
+ Translation = (Epimetheus, EPIMETHEUS)
+ Translation = (Europa, EUROPA)
+ Translation = (Fomalhaut, FOMALHAUT)
+ Translation = (Ganymede, GANYMEDE)
+ Translation = (Helene, HELENE)
+ Translation = (Himalia, HIMALIA)
+ Translation = (Hyperion, HYPERION)
+ Translation = (Iapetus, IAPETUS)
+ Translation = (Io, IO)
+ Translation = (Janus, JANUS)
+ Translation = (Jupiter, JUPITER)
+ Translation = (JupiterRings, J_RINGS)
+ Translation = (Larissa, LARISSA)
+ Translation = (Mars, MARS)
+ Translation = (Mercury, MERCURY)
+ Translation = (Methone, METHONE)
+ Translation = (Metis, METIS)
+ Translation = (Mimas, MIMAS)
+ Translation = (Miranda, MIRANDA)
+ Translation = (Moon, MOON)
+ Translation = (Neptune, NEPTUNE)
+ Translation = (Nereid, NEREID)
+ Translation = (NeptuneRings, N_RINGS)
+ Translation = (Oberon, OBERON)
+ Translation = (Pallene, PALLENE)
+ Translation = (Pan, PAN)
+ Translation = (Pandora, PANDORA)
+ Translation = (Phobos, PHOBOS)
+ Translation = (Phoebe, PHOEBE)
+ Translation = (Polydeuces, POLYDEUCES)
+ Translation = (Prometheus, PROMETHEUS)
+ Translation = (Proteus, PROTEUS)
+ Translation = (Puck, PUCK)
+ Translation = (Rhea, RHEA)
+ Translation = (Saturn, SATURN)
+ Translation = (SaturnRings, S_RINGS)
+ Translation = (Sky, "DARK SKY")
+ Translation = (Spica, SPICA)
+ Translation = (Telesto, TELESTO)
+ Translation = (Tethys, TETHYS)
+ Translation = (Thebe, THEBE)
+ Translation = (Titan, TITAN)
+ Translation = (Titania, TITANIA)
+ Translation = (Triton, TRITON)
+ Translation = (Uranus, URANUS)
+ Translation = (Umbriel, UMBRIEL)
+ Translation = (Venus, VENUS)
+End_Group
+
+Group = EquatorialRadius
+ InputKey = A_AXIS_RADIUS
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ InputKey = C_AXIS_RADIUS
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ InputKey = POSITIVE_LONGITUDE_DIRECTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = WEST
+ Translation = (PositiveEast, EAST)
+ Translation = (PositiveWest, WEST)
+End_Group
+
+Group = LatitudeType
+ InputKey = KEYWORD_LATITUDE_TYPE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = PLANETOGRAPHIC
+ Translation = (Planetographic, PLANETOGRAPHIC)
+ Translation = (Planetocentric, PLANETOCENTRIC)
+End_Group
+
+Group = LatitudeType2
+ InputKey = COORDINATE_SYSTEM_NAME
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputDefault = PLANETOCENTRIC
+ Translation = (Planetographic, PLANETOGRAPHIC)
+ Translation = (Planetocentric, PLANETOCENTRIC)
+End_Group
+
+Group = LongitudeDomain
+ InputKey = LONGITUDE_SYSTEM
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 360
+ Translation = (360, 360)
+ Translation = (180, 180)
+End_Group
+
+Group = MinimumLatitude
+ InputKey = MINIMUM_LATITUDE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLatitude
+ InputKey = MAXIMUM_LATITUDE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MinimumLongitude
+ InputKey = EASTERNMOST_LONGITUDE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MinimumLongitude2
+ InputKey = MINIMUM_LONGITUDE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLongitude
+ InputKey = WESTERNMOST_LONGITUDE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLongitude2
+ InputKey = MAXIMUM_LONGITUDE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolution
+ InputKey = MAP_SCALE
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = Scale
+ InputKey = MAP_RESOLUTION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = Rotation
+ InputKey = MAP_PROJECTION_ROTATION
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = LineProjectionOffset
+ InputKey = LINE_PROJECTION_OFFSET
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = LineProjectionOffset2
+ InputKey = LINE_PROJECTION_OFFSET
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = SampleProjectionOffset
+ InputKey = SAMPLE_PROJECTION_OFFSET
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SampleProjectionOffset2
+ InputKey = SAMPLE_PROJECTION_OFFSET
+ InputGroup = "QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsRdn.trn b/isis/appdata/translations/pdsRdn.trn
new file mode 100644
index 0000000000..5b77a18a83
--- /dev/null
+++ b/isis/appdata/translations/pdsRdn.trn
@@ -0,0 +1,219 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^RDN_IMAGE
+ InputPosition = RDN_FILE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^RDN_IMAGE
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = LINE_SAMPLES
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = LINES
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+ InputDefault = 1
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = SAMPLE_BITS
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = 8
+ Translation = (8, 8)
+ Translation = (16, 16)
+ Translation = (32, 32)
+End_Group
+
+Group = CorePixelType
+ InputKey = SAMPLE_TYPE
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (VaxReal, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = SAMPLE_TYPE
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, VAX_REAL)
+End_Group
+
+Group = CoreBase
+ InputKey = OFFSET
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = SCALING_FACTOR
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = BAND_STORAGE_TYPE
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = BAND_SEQUENTIAL
+ Translation = (BSQ, BAND_SEQUENTIAL)
+ Translation = (BSQ, "BAND SEQUENTIAL")
+ Translation = (BIL, LINE_INTERLEAVED)
+ Translation = (BIP, SAMPLE_INTERLEAVED)
+End_Group
+
+Group = CoreNull
+ InputKey = NULL
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull2
+ InputKey = CORE_NULL
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = LOW_REPR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS2
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = LOW_INSTR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS2
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = HIGH_REPR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS2
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = HIGH_INSTR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS2
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ Translation = (*, *)
+End_Group
+
+Group = CoreLineSuffixBytes
+ InputKey = LINE_SUFFIX_BYTES
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreLinePrefixBytes
+ InputKey = LINE_PREFIX_BYTES
+ InputPosition = (RDN_FILE, RDN_IMAGE)
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsSpectralQube.trn b/isis/appdata/translations/pdsSpectralQube.trn
new file mode 100644
index 0000000000..53c94d5d84
--- /dev/null
+++ b/isis/appdata/translations/pdsSpectralQube.trn
@@ -0,0 +1,229 @@
+#
+# The group names listed here are the native names used by
+# applications to get the foreign names and values
+#
+# There is only one level of groups the groups are not
+# allowed to be nested
+#
+# The Group names can NOT be repeated.
+#
+# InputGroup is a comma delimited list of objects and/or
+# groups in the foreign label. Traversing this list will
+# lead to the correct level to find the foreign keyword.
+#
+# InputKey is the keyword within the group which holds
+# the information.
+#
+# InputDefault is the value used if there is no value for
+# the keyword
+#
+# Translation is the native and corresponding foreign values.
+# Translation may be repeated as needed.
+#
+Group = DataFilePointer
+ InputKey = ^SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = DataStart
+ InputKey = ^SPECTRAL_QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = DataFileRecordBytes
+ InputKey = RECORD_BYTES
+ Translation = (*, *)
+End_Group
+
+Group = CoreAxisNames
+ InputKey = AXIS_NAME
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputKey = CORE_ITEMS
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputKey = CORE_ITEMS
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = CORE_ITEMS
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputKey = BANDS
+ InputGroup = IMAGE
+ InputPosition = IMAGE
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBitsPerPixel
+ InputKey = CORE_ITEM_BYTES
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 1
+ Translation = (8, 1)
+ Translation = (16, 2)
+ Translation = (32, 4)
+End_Group
+
+Group = CorePixelType
+ InputKey = CORE_ITEM_TYPE
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = LSB_INTEGER
+ Translation = (Integer, LSB_INTEGER)
+ Translation = (Integer, MSB_INTEGER)
+ Translation = (Integer, PC_INTEGER)
+ Translation = (Integer, MAC_INTEGER)
+ Translation = (Integer, SUN_INTEGER)
+ Translation = (Integer, VAX_INTEGER)
+ Translation = (Natural, UNSIGNED_INTEGER)
+ Translation = (Natural, LSB_UNSIGNED_INTEGER)
+ Translation = (Natural, MSB_UNSIGNED_INTEGER)
+ Translation = (Natural, PC_UNSIGNED_INTEGER)
+ Translation = (Natural, MAC_UNSIGNED_INTEGER)
+ Translation = (Natural, SUN_UNSIGNED_INTEGER)
+ Translation = (Natural, VAX_UNSIGNED_INTEGER)
+ Translation = (Real, FLOAT)
+ Translation = (Real, REAL)
+ Translation = (Real, PC_REAL)
+ Translation = (Real, IEEE_REAL)
+ Translation = (Real, MAC_REAL)
+ Translation = (Real, SUN_REAL)
+ Translation = (-, VAX_REAL)
+End_Group
+
+Group = CoreByteOrder
+ InputKey = CORE_ITEM_TYPE
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = LSB_INTEGER
+ Translation = (LSB, LSB_INTEGER)
+ Translation = (MSB, MSB_INTEGER)
+ Translation = (LSB, PC_INTEGER)
+ Translation = (MSB, MAC_INTEGER)
+ Translation = (MSB, SUN_INTEGER)
+ Translation = (LSB, VAX_INTEGER)
+ Translation = (MSB, UNSIGNED_INTEGER)
+ Translation = (LSB, LSB_UNSIGNED_INTEGER)
+ Translation = (MSB, MSB_UNSIGNED_INTEGER)
+ Translation = (LSB, PC_UNSIGNED_INTEGER)
+ Translation = (MSB, MAC_UNSIGNED_INTEGER)
+ Translation = (MSB, SUN_UNSIGNED_INTEGER)
+ Translation = (LSB, VAX_UNSIGNED_INTEGER)
+ Translation = (MSB, FLOAT)
+ Translation = (MSB, REAL)
+ Translation = (MSB, IEEE_REAL)
+ Translation = (MSB, MAC_REAL)
+ Translation = (MSB, SUN_REAL)
+ Translation = (LSB, PC_REAL)
+ Translation = (-, VAX_REAL)
+End_Group
+
+Group = BandBase
+ InputKey = BAND_BIN_BASE
+ InputGroup = "SPECTRAL_QUBE,BAND_BIN"
+ InputPosition = (SPECTRAL_QUBE, BAND_BIN)
+ Translation = (*, *)
+End_Group
+
+Group = BandMultiplier
+ InputKey = BAND_BIN_MULTIPLIER
+ InputGroup = "SPECTRAL_QUBE,BAND_BIN"
+ InputPosition = (SPECTRAL_QUBE, BAND_BIN)
+ Translation = (*, *)
+End_Group
+
+Group = CoreBase
+ InputKey = CORE_BASE
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputKey = CORE_MULTIPLIER
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 1.0
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputKey = AXIS_NAME
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreNull
+ InputKey = CORE_NULL
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreLRS
+ InputKey = CORE_LOW_REPR_SATURATION
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreLIS
+ InputKey = CORE_LOW_INSTR_SATURATION
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreHRS
+ InputKey = CORE_HIGH_REPR_SATURATION
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = CoreHIS
+ InputKey = CORE_HIGH_INSTR_SATURATION
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (*, *)
+End_Group
+
+Group = SuffixItemSize
+ InputKey = SUFFIX_BYTES
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 4
+ Translation = (*, *)
+End_Group
+
+Group = AxisSuffixCount
+ InputKey = SUFFIX_ITEMS
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/pdsSpectralQubeProjection.trn b/isis/appdata/translations/pdsSpectralQubeProjection.trn
new file mode 100644
index 0000000000..52a0b2c5c7
--- /dev/null
+++ b/isis/appdata/translations/pdsSpectralQubeProjection.trn
@@ -0,0 +1,219 @@
+Group = ProjectionName
+ InputKey = MAP_PROJECTION_TYPE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (Equirectangular, EQUIRECTANGULAR)
+ Translation = (Equirectangular, EQUIRECTANGULAR_CYLINDRICAL)
+ Translation = (Equirectangular, "EQUIRECTANGULAR CYLINDRICAL")
+ Translation = (LambertConformal, "LAMBERT CONFORMAL")
+ Translation = (LambertConformal, LAMBERT_CONFORMAL)
+ Translation = (LambertConformal, LAMBERT_CONFORMAL_CONIC)
+ Translation = (Mercator, MERCATOR)
+ Translation = (ObliqueCylindrical, OBLIQUE_CYLINDRICAL)
+ Translation = (ObliqueCylindrical, "OBLIQUE CYLINDRICAL")
+ Translation = (Orthographic, ORTHOGRAPHIC)
+ Translation = (PointPerspective, POINT_PERSPECTIVE)
+ Translation = (PolarStereographic, "POLAR STEREOGRAPHIC")
+ Translation = (PolarStereographic, POLAR_STEREOGRAPHIC)
+ Translation = (PolarStereographic, STEREOGRAPHIC)
+ Translation = (Robinson, ROBINSON)
+ Translation = (SimpleCylindrical, SIMPLE_CYLINDRICAL)
+ Translation = (SimpleCylindrical, "SIMPLE CYLINDRICAL")
+ Translation = (Sinusoidal, SINUSOIDAL)
+ Translation = (Sinusoidal, SINUSOIDAL_EQUAL-AREA)
+ Translation = (Sinusoidal, "SINUSOIDAL EQUAL-AREA")
+ Translation = (TransverseMercator, TRANSVERSE_MERCATOR)
+ Translation = (TransverseMercator, "TRANSVERSE MERCATOR")
+End_Group
+
+Group = TargetName
+ InputKey = TARGET_NAME
+ InputGroup = SPECTRAL_QUBE
+ InputPosition = SPECTRAL_QUBE
+ Translation = (Adrastea, ADRASTEA)
+ Translation = (Amalthea, AMALTHEA)
+ Translation = (Ariel, ARIEL)
+ Translation = (Atlas, ATLAS)
+ Translation = (Callisto, CALLISTO)
+ Translation = (Calypso, CALYPSO)
+ Translation = (Daphnis, DAPHNIS)
+ Translation = (Deimos, DEIMOS)
+ Translation = (Dione, DIONE)
+ Translation = (Enceladus, ENCELADUS)
+ Translation = (Epimetheus, EPIMETHEUS)
+ Translation = (Europa, EUROPA)
+ Translation = (Fomalhaut, FOMALHAUT)
+ Translation = (Ganymede, GANYMEDE)
+ Translation = (Helene, HELENE)
+ Translation = (Himalia, HIMALIA)
+ Translation = (Hyperion, HYPERION)
+ Translation = (Iapetus, IAPETUS)
+ Translation = (Io, IO)
+ Translation = (Janus, JANUS)
+ Translation = (Jupiter, JUPITER)
+ Translation = (JupiterRings, J_RINGS)
+ Translation = (Larissa, LARISSA)
+ Translation = (Mars, MARS)
+ Translation = (Mercury, MERCURY)
+ Translation = (Methone, METHONE)
+ Translation = (Metis, METIS)
+ Translation = (Mimas, MIMAS)
+ Translation = (Miranda, MIRANDA)
+ Translation = (Moon, MOON)
+ Translation = (Neptune, NEPTUNE)
+ Translation = (Nereid, NEREID)
+ Translation = (NeptuneRings, N_RINGS)
+ Translation = (Oberon, OBERON)
+ Translation = (Pallene, PALLENE)
+ Translation = (Pan, PAN)
+ Translation = (Pandora, PANDORA)
+ Translation = (Phobos, PHOBOS)
+ Translation = (Phoebe, PHOEBE)
+ Translation = (Polydeuces, POLYDEUCES)
+ Translation = (Prometheus, PROMETHEUS)
+ Translation = (Proteus, PROTEUS)
+ Translation = (Puck, PUCK)
+ Translation = (Rhea, RHEA)
+ Translation = (Saturn, SATURN)
+ Translation = (SaturnRings, S_RINGS)
+ Translation = (Sky, "DARK SKY")
+ Translation = (Spica, SPICA)
+ Translation = (Telesto, TELESTO)
+ Translation = (Tethys, TETHYS)
+ Translation = (Thebe, THEBE)
+ Translation = (Titan, TITAN)
+ Translation = (Titania, TITANIA)
+ Translation = (Triton, TRITON)
+ Translation = (Uranus, URANUS)
+ Translation = (Umbriel, UMBRIEL)
+ Translation = (Venus, VENUS)
+End_Group
+
+Group = EquatorialRadius
+ InputKey = A_AXIS_RADIUS
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = PolarRadius
+ InputKey = C_AXIS_RADIUS
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = LongitudeDirection
+ InputKey = POSITIVE_LONGITUDE_DIRECTION
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = WEST
+ Translation = (PositiveEast, EAST)
+ Translation = (PositiveWest, WEST)
+End_Group
+
+Group = LatitudeType
+ InputKey = KEYWORD_LATITUDE_TYPE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = PLANETOGRAPHIC
+ Translation = (Planetographic, PLANETOGRAPHIC)
+ Translation = (Planetocentric, PLANETOCENTRIC)
+End_Group
+
+Group = LatitudeType2
+ InputKey = COORDINATE_SYSTEM_NAME
+ InputGroup = IMAGE_MAP_PROJECTION
+ InputPosition = IMAGE_MAP_PROJECTION
+ InputDefault = PLANETOCENTRIC
+ Translation = (Planetographic, PLANETOGRAPHIC)
+ Translation = (Planetocentric, PLANETOCENTRIC)
+End_Group
+
+Group = LongitudeDomain
+ InputKey = LONGITUDE_SYSTEM
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 360
+ Translation = (360, 360)
+ Translation = (180, 180)
+End_Group
+
+Group = MinimumLatitude
+ InputKey = MINIMUM_LATITUDE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLatitude
+ InputKey = MAXIMUM_LATITUDE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MinimumLongitude
+ InputKey = EASTERNMOST_LONGITUDE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MinimumLongitude2
+ InputKey = MINIMUM_LONGITUDE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLongitude
+ InputKey = WESTERNMOST_LONGITUDE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = MaximumLongitude2
+ InputKey = MAXIMUM_LONGITUDE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = PixelResolution
+ InputKey = MAP_SCALE
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = Scale
+ InputKey = MAP_RESOLUTION
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = Rotation
+ InputKey = MAP_PROJECTION_ROTATION
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ InputDefault = 0.0
+ Translation = (*, *)
+End_Group
+
+Group = LineProjectionOffset
+ InputKey = LINE_PROJECTION_OFFSET
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+
+Group = SampleProjectionOffset
+ InputKey = SAMPLE_PROJECTION_OFFSET
+ InputGroup = "SPECTRAL_QUBE,IMAGE_MAP_PROJECTION"
+ InputPosition = (SPECTRAL_QUBE, IMAGE_MAP_PROJECTION)
+ Translation = (*, *)
+End_Group
+End
diff --git a/isis/appdata/translations/xmlExample.trn b/isis/appdata/translations/xmlExample.trn
new file mode 100644
index 0000000000..2f988d2d56
--- /dev/null
+++ b/isis/appdata/translations/xmlExample.trn
@@ -0,0 +1,241 @@
+#
+# This example demonstrates how to write a translation table for use with the
+# XmlTranslationManager class.
+#
+# This stranslation table was written to translate the following xml document
+#
+#
+# XmlLand
+#
+# Xerxes
+# 49
+# Amestris
+#
+# First
+# Darius
+# Amestris
+#
+#
+# Second
+# Hystaspes
+# Amestris
+#
+#
+# Fifth
+# Artarius
+# Unknown
+#
+#
+#
+# Formatia
+# Arid
+#
+# Regexia
+# 3000
+# 50
+#
+#
+# Schemitia
+# Schemata
+# 5000
+# 100
+# Capital
+#
+#
+#
+#
+# The translated Pvl would be
+#
+# Group = Court
+# King = Xerxes
+# Queen = Amestris
+# Heir = Darius
+# Illegitimate_Child = Artarius
+# End_Group
+#
+# Group = Capital
+# Classification = Desert
+# Ancient_Name = Schemata
+# Modern_Name = Schemitia
+# Population = 5000
+# Size = 100
+# Size_Units = km2
+# End_Group
+#
+
+
+#
+# The following group contains the minimum required keywords to translate a
+# value.
+#
+# The group name is the name of the output keyword
+#
+# The InputPosition keyword is the sequence of elements from the document
+# element, the element, to the parent element of the
+# input element, .
+#
+# The InputKey is the input element that the input value will be retrieved
+# from. By default the text value of the input element will be used for the
+# input value. There are options to use the value of an element instead.
+#
+# The OutputName is the name of the output keyword. It should match the group
+# name.
+#
+# The OutputPosition is the location of the output keyword in the output Pvl.
+#
+# The Translation keyword allows for converting a specific input value into a
+# different output value. The value consists of a pair, the input value to
+# change is the second element and the output value is the first element. A
+# star in the output value will result in no change, output=input, and a star
+# in the input value will match any input value.
+#
+Group = King
+ InputPosition = Ruler
+ InputKey = Name
+ OutputName = King
+ OutputPosition = (Group, Court)
+ Translation = (*, *)
+End_Group
+
+#
+# Similar to the previous group, this group translates one of the
+# element's child elements. instead of the element, this translates the
+# element.
+#
+Group = Queen
+ InputPosition = Ruler
+ InputKey = Spouse
+ OutputName = Queen
+ OutputPosition = (Group, Court)
+ Translation = (*, *)
+End_Group
+
+#
+# The following group demonstrates how to translate elements that are not
+# unique.
+#
+# The element has 3 different elements, so the InputPosition
+# does not uniquely describe the input parent. So, the InputKeyDependencies
+# keyword places a requirement upon the input parent. In this case, it
+# specifies that the input parent has a child element named
+# with a value of "First".
+#
+# The Auto keyword in this group specifies that this keyword will be translated
+# if LabelTranslationManager's Auto method is called.
+#
+Group = Heir
+ Auto
+ InputPosition = (Ruler, Child)
+ InputKey = Name
+ InputKeyDependencies = "tag@Ascension_Order:First"
+ OutputName = Heir
+ OutputPosition = (Group, Court)
+ Translation = (*, *)
+End_Group
+
+#
+# Similar to the previous group, this group translates the of one of the
+# elements. The dependencies here specify to use the element
+# that has a child element called with a value of .
+#
+# If an input value cannot be found for a keyword, it will ususally cause an
+# error. The Optional keyword in this group specifies that if an input value
+# cannot be found, then it will not cause an error.
+#
+Group = Illegitimate_Child
+ Optional
+ InputPosition = (Ruler, Child)
+ InputKey = Name
+ InputKeyDependencies = "tag@Mother:Unknown"
+ OutputName = Heir
+ OutputPosition = (Group, Court)
+ Translation = (*, *)
+End_Group
+
+#
+# This group demonstrates how to get an input value from an attribute. the
+# InputKeyAttribute keyword specifies an attribute of the InputKey element to
+# use for the input value. In this case, the input value will be taken from
+# the key's "Biome" attribute.
+#
+# All of the previous groups have output a keyword in the Court group. The
+# OutputPosition keyword in this group specifies that the translated keyword
+# will be output in the Capital group.
+#
+Group = Classification
+ Auto
+ InputPosition = Region
+ InputKey = Climate
+ InputKeyAttribute = Biome
+ OutputName = Classification
+ OutputPosition = (Group, Capital)
+ Translation = (*, *)
+End_Group
+
+#
+# This group demonstrates how multiple dependencies can be used to specify an
+# input element. The element has two elements. The first
+# dependency specifies to use the one with a child element called with a
+# value of . This element has two elements. The second
+# dependency specifies to use the element with an attribute called
+# "Era" and a value of "Ancient".
+#
+Group = Ancient_Name
+ Auto
+ Optional
+ InputPosition = (Region, City)
+ InputKey = Name
+ InputKeyDependencies = ("tag@Type:Capital", "att@Era:Ancient")
+ OutputName = Ancient_Capital
+ OutputPosition = (Group, Capital)
+ Translation = (*, *)
+End_Group
+
+Group = Modern_Name
+ Auto
+ InputPosition = (Region, City)
+ InputKey = Name
+ InputKeyDependencies = ("tag@Type:Capital", "att@Era:Modern")
+ InputDefault = Schemitia
+ OutputName = Modern_Capital
+ OutputPosition = (Group, Capital)
+ Translation = (*, *)
+End_Group
+
+Group = Population
+ Auto
+ InputPosition = (Region, City)
+ InputKey = Population
+ InputKeyDependencies = "tag@Type:Capital"
+ OutputName = Capital_Population
+ OutputPosition = (Group, Capital)
+ Translation = (*, *)
+End_Group
+
+Group = Size
+ Auto
+ InputPosition = (Region, City)
+ InputKey = Area
+ InputKeyDependencies = "tag@Type:Capital"
+ OutputName = Capital_Size
+ OutputPosition = (Group, Capital)
+ Translation = (*, *)
+End_Group
+
+#
+# This group demonstrates how to change an input value into a different output
+# value. If the input value from the "Units" attribute is "Square_Kilometers",
+# then the output value will be km2.
+#
+Group = Size_Units
+ Auto
+ Optional
+ InputPosition = (Region, City)
+ InputKey = Area
+ InputKeyAttribute = Units
+ InputKeyDependencies = "tag@Type:Capital"
+ OutputName = Capital_Size_Units
+ OutputPosition = (Group, Capital)
+ Translation = (km2, Square_Kilometers)
+End_Group
+End
diff --git a/isis/appdata/translations/xmlImage.trn b/isis/appdata/translations/xmlImage.trn
new file mode 100644
index 0000000000..dd4b8bb5b4
--- /dev/null
+++ b/isis/appdata/translations/xmlImage.trn
@@ -0,0 +1,112 @@
+#
+# This translation table is for translating an xml image label
+#
+# See $base/translations/XmlExample.trn for an example xml translation table
+# and documentation for the different options.
+#
+# Created 2017-01-19 Jesse Mapel
+#
+
+Group = DataFilePointer
+ InputPosition = (File_Area_Observational, File)
+ InputKey = file_name
+ Translation = (*, *)
+End_Group
+
+# This is not in the labels at the moment, but it will always be 0
+Group = DataStart
+ InputPosition = File_Area_Observational
+ InputKey = UNKNOWN
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreSamples
+ InputPosition = (Product_Observational, File_Area_Observational,
+ Array_2D_Image, Axis_Array)
+ InputKeyDependencies = "tag@axis_name:Sample"
+ InputKey = elements
+ Translation = (*, *)
+End_Group
+
+Group = CoreLines
+ InputPosition = (Product_Observational, File_Area_Observational,
+ Array_2D_Image, Axis_Array)
+ InputKeyDependencies = "tag@axis_name:Line"
+ InputKey = elements
+ Translation = (*, *)
+End_Group
+
+Group = CoreBands
+ InputPosition = (Product_Observational, File_Area_Observational,
+ Array_2D_Image, Axis_Array)
+ InputKeyDependencies = "tag@axis_name:Band"
+ InputKey = elements
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreBitsPerPixel
+ InputPosition = (File_Area_Observational, Array_2D_Image,
+ Element_Array)
+ InputKey = idl_data_type
+ Translation = (16, 2)
+ Translation = (16, 12)
+ Translation = (32, 4)
+End_Group
+
+Group = CorePixelType
+ InputPosition = (File_Area_Observational, Array_2D_Image,
+ Element_Array)
+ InputKey = idl_data_type
+ Translation = (Integer, 2)
+ Translation = (Integer, 12)
+ Translation = (Real, 4)
+End_Group
+
+Group = CoreByteOrder
+ InputPosition = (File_Area_Observational, Array_2D_Image,
+ Element_Array)
+ InputKey = data_type
+ Translation = (LSB, IEEE754LSBSingle)
+ Translation = (LSB, SignedLSB2)
+End_Group
+
+Group = CoreBase
+ InputPosition = (File_Area_Observational, Array_2D_Image,
+ Element_Array
+ InputKey = offset
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+Group = CoreMultiplier
+ InputPosition = (File_Area_Observational, Array_2D_Image,
+ Element_Array
+ InputKey = scaling_factor
+ InputDefault = 1
+ Translation = (*, *)
+End_Group
+
+Group = CoreOrganization
+ InputPosition = UNKNOWN
+ InputKey = UNKOWN
+ InputDefault = BSQ
+ translate = (*, *)
+End_Group
+
+# This is not in the labels at the moment, presumed to be 0
+Group = CoreLineSuffixBytes
+ InputPosition = UNKOWN
+ InputKey = UNKNOWN
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
+
+# This is not in the labels at the moment, presumed to be 0
+Group = CoreLinePrefixBytes
+ InputPosition = UNKOWN
+ InputKey = UNKNOWN
+ InputDefault = 0
+ Translation = (*, *)
+End_Group
diff --git a/isis/src/base/apps/findrx/main.cpp b/isis/src/base/apps/findrx/main.cpp
index a351d8db5a..5f5e2aec51 100644
--- a/isis/src/base/apps/findrx/main.cpp
+++ b/isis/src/base/apps/findrx/main.cpp
@@ -28,7 +28,7 @@ void IsisMain() {
regdef = new Pvl(ui.GetFileName("REGDEF"));
}
else {
- regdef = new Pvl("$base/templates/autoreg/findrx.def");
+ regdef = new Pvl("$ISISROOT/appdata/templates/autoreg/findrx.def");
}
PvlGroup &reseaus = cube.label()->findGroup("Reseaus", Pvl::Traverse);
diff --git a/isis/src/base/apps/isisminer/PdsTableFormatStrategy.cpp b/isis/src/base/apps/isisminer/PdsTableFormatStrategy.cpp
index 43e42198c3..3f54c34ceb 100644
--- a/isis/src/base/apps/isisminer/PdsTableFormatStrategy.cpp
+++ b/isis/src/base/apps/isisminer/PdsTableFormatStrategy.cpp
@@ -107,7 +107,7 @@ namespace Isis {
QString keyfmt = translateKeywordArgs("KeywordFormatFile",
getGlobals(m_parameters, globals),
- "$base/translations/pdsExportRootGen.typ");
+ "$ISISROOT/appdata/translations/pdsExportRootGen.typ");
// Remake new columns each time
diff --git a/isis/src/base/objs/Cube/Cube.cpp b/isis/src/base/objs/Cube/Cube.cpp
index a4aa6cc760..ca342bcdc6 100644
--- a/isis/src/base/objs/Cube/Cube.cpp
+++ b/isis/src/base/objs/Cube/Cube.cpp
@@ -1937,7 +1937,7 @@ namespace Isis {
m_mutex = new QMutex();
m_formatTemplateFile =
- new FileName("$base/templates/labels/CubeFormatTemplate.pft");
+ new FileName("$ISISROOT/appdata/labels/CubeFormatTemplate.pft");
initialize();
}
diff --git a/isis/src/base/objs/Gruen/Gruen.cpp b/isis/src/base/objs/Gruen/Gruen.cpp
index eae2c767c4..7f0e9fdca4 100644
--- a/isis/src/base/objs/Gruen/Gruen.cpp
+++ b/isis/src/base/objs/Gruen/Gruen.cpp
@@ -818,7 +818,7 @@ namespace Isis {
*/
Pvl &Gruen::getDefaultParameters() {
static Pvl regdef;
- regdef = Pvl("$base/templates/autoreg/coreg.adaptgruen.p1515s3030.def");
+ regdef = Pvl("$ISISROOT/appdata/templates/autoreg/coreg.adaptgruen.p1515s3030.def");
return (regdef);
}
diff --git a/isis/src/base/objs/NaifStatus/NaifStatus.cpp b/isis/src/base/objs/NaifStatus/NaifStatus.cpp
index f2f0acfb62..e008f7f41d 100644
--- a/isis/src/base/objs/NaifStatus/NaifStatus.cpp
+++ b/isis/src/base/objs/NaifStatus/NaifStatus.cpp
@@ -88,7 +88,7 @@ namespace Isis {
errorDescription.addKeyword(PvlKeyword("LongMessage", naifLong));
error.addGroup(errorDescription);
- PvlToPvlTranslationManager trans(error, "$base/translations/NaifErrors.trn");
+ PvlToPvlTranslationManager trans(error, "$ISISROOT/appdata/translations/NaifErrors.trn");
try {
errMsg = trans.Translate("ShortMessage");
diff --git a/isis/src/base/objs/ProcessExportPds/ProcessExportPds.cpp b/isis/src/base/objs/ProcessExportPds/ProcessExportPds.cpp
index b30a1d6620..455fecdde7 100644
--- a/isis/src/base/objs/ProcessExportPds/ProcessExportPds.cpp
+++ b/isis/src/base/objs/ProcessExportPds/ProcessExportPds.cpp
@@ -109,7 +109,7 @@ namespace Isis {
setFormat(JP2);
}
- m_formatter = new PvlFormatPds("$base/translations/pdsExportRootGen.typ");
+ m_formatter = new PvlFormatPds("$ISISROOT/appdata/translations/pdsExportRootGen.typ");
m_label->setFormat(m_formatter);
m_label->setTerminator("END");
@@ -163,7 +163,7 @@ namespace Isis {
// The IMAGE_MAP_PROJECTION group is located in the ROOT for PDS IMAGEs. The
// standard routines will add the IMAGE_MAP_PROJECTION correctly
StandardAllMapping(mainPvl);
- mainPvl.format()->add("$base/translations/pdsExportAllMapping.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportAllMapping.typ");
}
@@ -249,7 +249,7 @@ namespace Isis {
* @param mainPvl
*/
void ProcessExportPds::StreamJP2ImageRoot(Pvl &mainPvl) {
- mainPvl.format()->add("$base/translations/pdsExportImageJP2.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageJP2.typ");
// Create standard ROOT object keywords
mainPvl += PvlKeyword("PDS_VERSION_ID", "PDS3");
QString sImageFile = m_detachedPdsLabelFile;
@@ -340,7 +340,7 @@ namespace Isis {
* @param mainPvl
*/
void ProcessExportPds::FixedJP2ImageRoot(Pvl &mainPvl) {
- mainPvl.format()->add("$base/translations/pdsExportImageJP2.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageJP2.typ");
//Create fixed ROOT object keywords
mainPvl += PvlKeyword("PDS_VERSION_ID", "PDS3");
QString sImageFile = m_detachedPdsLabelFile;
@@ -400,12 +400,12 @@ namespace Isis {
* @throws Isis::IException::Message
*/
void ProcessExportPds::StandardImageImage(Pvl &mainPvl) {
- mainPvl.format()->add("$base/translations/pdsExportImageImage.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImage.typ");
// Build up an IMAGE object:
// Auto translate standard keywords for the IMAGE object
Pvl *inputLabel = InputCubes[0]->label();
FileName transfile;
- transfile = "$base/translations/pdsExportImageImage.trn";
+ transfile = "$ISISROOT/appdata/translations/pdsExportImageImage.trn";
PvlToPvlTranslationManager Xlator(*inputLabel, transfile.expanded());
Xlator.Auto(mainPvl);
@@ -461,7 +461,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel8.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel8.typ");
}
else if((p_pixelType == Isis::UnsignedWord) && (p_endianType == Isis::Msb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -472,7 +472,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if((p_pixelType == Isis::UnsignedWord) && (p_endianType == Isis::Lsb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -483,7 +483,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if((p_pixelType == Isis::SignedWord) && (p_endianType == Isis::Msb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -494,7 +494,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if((p_pixelType == Isis::SignedWord) && (p_endianType == Isis::Lsb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -505,7 +505,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if(p_pixelType == Isis::Real) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "32");
@@ -522,7 +522,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString(Isis::ILOW_INSTR_SAT4));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString(Isis::IHIGH_REPR_SAT4));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString(Isis::IHIGH_INSTR_SAT4));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel32.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel32.typ");
}
else {
QString msg = "Unsupported PDS pixel type or sample size";
@@ -541,15 +541,15 @@ namespace Isis {
* @throws Isis::IException::Message
*/
void ProcessExportPds::StandardJP2Image(Pvl &mainPvl) {
- mainPvl.format()->add("$base/translations/pdsExportImageImage.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImage.typ");
if(m_pdsFileType == ProcessExportPds::JP2Image) {
- mainPvl.format()->add("$base/translations/pdsExportImageJP2.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageJP2.typ");
}
// Build up a JP2 IMAGE object:
// Auto translate standard keywords for the IMAGE object
Pvl *inputLabel = InputCubes[0]->label();
FileName transfile;
- transfile = "$base/translations/pdsExportImageJP2.trn";
+ transfile = "$ISISROOT/appdata/translations/pdsExportImageJP2.trn";
PvlToPvlTranslationManager Xlator(*inputLabel, transfile.expanded());
Xlator.Auto(mainPvl);
@@ -605,7 +605,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel8.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel8.typ");
}
else if((p_pixelType == Isis::UnsignedWord) && (p_endianType == Isis::Msb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -616,7 +616,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if((p_pixelType == Isis::UnsignedWord) && (p_endianType == Isis::Lsb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -627,7 +627,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if((p_pixelType == Isis::SignedWord) && (p_endianType == Isis::Msb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -638,7 +638,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if((p_pixelType == Isis::SignedWord) && (p_endianType == Isis::Lsb)) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "16");
@@ -649,7 +649,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString((int)OutputLis()));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString((int)OutputHrs()));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString((int)OutputHis()));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel16.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel16.typ");
}
else if(p_pixelType == Isis::Real) {
if(m_forceSampleBits) imgObj += PvlKeyword("SAMPLE_BITS", "32");
@@ -666,7 +666,7 @@ namespace Isis {
if(m_forceCoreLis) imgObj += PvlKeyword("CORE_LOW_INSTR_SATURATION", toString(Isis::ILOW_INSTR_SAT4));
if(m_forceCoreHrs) imgObj += PvlKeyword("CORE_HIGH_REPR_SATURATION", toString(Isis::IHIGH_REPR_SAT4));
if(m_forceCoreHis) imgObj += PvlKeyword("CORE_HIGH_INSTR_SATURATION", toString(Isis::IHIGH_INSTR_SAT4));
- mainPvl.format()->add("$base/translations/pdsExportImageImagePixel32.typ");
+ mainPvl.format()->add("$ISISROOT/appdata/translations/pdsExportImageImagePixel32.typ");
}
else {
QString msg = "Unsupported PDS pixel type or sample size";
@@ -694,12 +694,12 @@ namespace Isis {
// Translate the projection specific keywords for a PDS IMAGE_MAP_PROJECTION
QString projName = ProjectionName(*inputLabel);
PvlToPvlTranslationManager xlatSpecProj(*inputLabel,
- "$base/translations/pdsExport" + projName + ".trn");
+ "$ISISROOT/appdata/translations/pdsExport" + projName + ".trn");
xlatSpecProj.Auto(outputPvl);
// Translate the target name
PvlToPvlTranslationManager xlatTarget(*inputLabel,
- "$base/translations/pdsExportTarget.trn");
+ "$ISISROOT/appdata/translations/pdsExportTarget.trn");
xlatTarget.Auto(outputPvl);
// Add keywords to the PDS labels that could not be handled automatically
diff --git a/isis/src/base/objs/ProcessExportPds4/ProcessExportPds4.cpp b/isis/src/base/objs/ProcessExportPds4/ProcessExportPds4.cpp
index 39bc076100..b3919c5f8e 100644
--- a/isis/src/base/objs/ProcessExportPds4/ProcessExportPds4.cpp
+++ b/isis/src/base/objs/ProcessExportPds4/ProcessExportPds4.cpp
@@ -207,7 +207,7 @@ namespace Isis {
if (inputLabel->findObject("IsisCube").hasGroup("Instrument")) {
// Translate the Instrument group
- translationFileName = "$base/translations/pds4ExportInstrument.trn";
+ translationFileName = "$ISISROOT/appdata/translations/pds4ExportInstrument.trn";
PvlToXmlTranslationManager instXlator(*inputLabel, translationFileName.expanded());
instXlator.Auto(*m_domDoc);
@@ -269,7 +269,7 @@ namespace Isis {
}
// Translate the Target name
- translationFileName = "$base/translations/pds4ExportTargetFromInstrument.trn";
+ translationFileName = "$ISISROOT/appdata/translations/pds4ExportTargetFromInstrument.trn";
PvlToXmlTranslationManager targXlator(*inputLabel, translationFileName.expanded());
targXlator.Auto(*m_domDoc);
@@ -279,7 +279,7 @@ namespace Isis {
}
else if (inputLabel->findObject("IsisCube").hasGroup("Mapping")) {
- translationFileName = "$base/translations/pds4ExportTargetFromMapping.trn";
+ translationFileName = "$ISISROOT/appdata/translations/pds4ExportTargetFromMapping.trn";
PvlToXmlTranslationManager targXlator(*inputLabel, translationFileName.expanded());
targXlator.Auto(*m_domDoc);
}
@@ -468,7 +468,7 @@ namespace Isis {
void ProcessExportPds4::identificationArea() {
Pvl *inputLabel = InputCubes[0]->label();
FileName translationFileName;
- translationFileName = "$base/translations/pds4ExportIdentificationArea.trn";
+ translationFileName = "$ISISROOT/appdata/translations/pds4ExportIdentificationArea.trn";
PvlToXmlTranslationManager xlator(*inputLabel, translationFileName.expanded());
xlator.Auto(*m_domDoc);
@@ -533,7 +533,7 @@ namespace Isis {
Pvl *inputLabel = InputCubes[0]->label();
FileName translationFileName;
- translationFileName = "$base/translations/pds4ExportDisplaySettings.trn";
+ translationFileName = "$ISISROOT/appdata/translations/pds4ExportDisplaySettings.trn";
PvlToXmlTranslationManager xlator(*inputLabel, translationFileName.expanded());
xlator.Auto(*m_domDoc);
}
@@ -576,7 +576,7 @@ namespace Isis {
* Export BandBin group for 2D or 3D Image format.
*/
void ProcessExportPds4::translateBandBinImage(Pvl &inputLabel) {
- QString translationFile = "$base/translations/";
+ QString translationFile = "$ISISROOT/appdata/translations/";
translationFile += "pds4ExportBandBinImage.trn";
FileName translationFileName(translationFile);
PvlToXmlTranslationManager xlator(inputLabel, translationFileName.expanded());
@@ -588,7 +588,7 @@ namespace Isis {
* Export BandBin group for uniformly spaced 3D Spectral data format.
*/
void ProcessExportPds4::translateBandBinSpectrumUniform(Pvl &inputLabel) {
- QString translationFile = "$base/translations/";
+ QString translationFile = "$ISISROOT/appdata/translations/";
translationFile += "pds4ExportBandBinSpectrumUniform.trn";
FileName translationFileName(translationFile);
PvlToXmlTranslationManager xlator(inputLabel, translationFileName.expanded());
@@ -730,7 +730,7 @@ namespace Isis {
* Export BandBin group for non-uniformly spaced 3D Spectral data format.
*/
void ProcessExportPds4::translateBandBinSpectrumBinSet(Pvl &inputLabel) {
- QString translationFile = "$base/translations/";
+ QString translationFile = "$ISISROOT/appdata/translations/";
translationFile += "pds4ExportBandBinSpectrumBinSet.trn";
FileName translationFileName(translationFile);
PvlToXmlTranslationManager xlator(inputLabel, translationFileName.expanded());
@@ -809,7 +809,7 @@ namespace Isis {
Pvl *inputLabel = InputCubes[0]->label();
QString imageObject = "";
- QString translationFile = "$base/translations/pds4Export";
+ QString translationFile = "$ISISROOT/appdata/translations/pds4Export";
if (m_imageType == StandardImage) {
int bands = (int)inputLabel->findObject("IsisCube")
.findObject("Core")
@@ -1185,7 +1185,7 @@ namespace Isis {
QString projName = proj->Name();
try {
PvlToXmlTranslationManager xlatorSpecProj(*inputLabel,
- "$base/translations/pds4Export" + projName + ".trn");
+ "$ISISROOT/appdata/translations/pds4Export" + projName + ".trn");
xlatorSpecProj.Auto(*m_domDoc);
}
catch (IException &e) {
@@ -1457,7 +1457,7 @@ namespace Isis {
* This method uses a pvl config file to determine what the proper PDS4
* format is and what potential input formats are. The file is converted to
* a map which is then used to convert all of the input units. See
- * $base/translations/pds4ExportUnits.pvl for more information on this file.
+ * $ISISROOT/appdata/translations/pds4ExportUnits.pvl for more information on this file.
*
* This method is automatically called in StandardPds4Label(), but may need
* to be called again if the label is changed afterwards.
diff --git a/isis/src/base/objs/ProcessImportPds/ProcessImportPds.cpp b/isis/src/base/objs/ProcessImportPds/ProcessImportPds.cpp
index 1238078429..1dc6b97136 100644
--- a/isis/src/base/objs/ProcessImportPds/ProcessImportPds.cpp
+++ b/isis/src/base/objs/ProcessImportPds/ProcessImportPds.cpp
@@ -61,7 +61,7 @@ namespace Isis {
// Set up a translater for PDS file of type IMAGE
Isis::PvlGroup &dataDir = Isis::Preference::Preferences().findGroup("DataDirectory");
- p_transDir = (QString) dataDir["Base"];
+ p_transDir = "$ISISROOT/appdata";
}
@@ -373,7 +373,7 @@ namespace Isis {
yoff = 0.5;
// Open projectionOffsetMults file
- Isis::Pvl p(p_transDir + "/" + "translations/pdsProjectionLineSampToXY_V2.def");
+ Isis::Pvl p(p_transDir + "/" + "translations/pdsProjectionLineSampToXY.def");
Isis::PvlObject &projDef = p.findObject("ProjectionOffsetMults",
Pvl::Traverse);
@@ -1668,7 +1668,7 @@ namespace Isis {
// contain the projection specific translations from PDS to ISIS for each
// projection
- QString projSpecificFileName = "$base/translations/pdsImport";
+ QString projSpecificFileName = "$ISISROOT/appdata/translations/pdsImport";
projSpecificFileName += p_projection + ".trn";
Isis::PvlToPvlTranslationManager specificXlater(p_pdsLabel, projSpecificFileName);
diff --git a/isis/src/base/objs/SerialNumber/SerialNumber.cpp b/isis/src/base/objs/SerialNumber/SerialNumber.cpp
index 23e5ce86c0..b0bd76e56a 100644
--- a/isis/src/base/objs/SerialNumber/SerialNumber.cpp
+++ b/isis/src/base/objs/SerialNumber/SerialNumber.cpp
@@ -90,7 +90,6 @@ namespace Isis {
*/
PvlGroup SerialNumber::FindSerialTranslation(Pvl &label) {
Pvl outLabel;
- static PvlGroup dataDir(Preference::Preferences().findGroup("DataDirectory"));
// Get the mission name
static QString missionTransFile = "$ISISROOT/appdata/translations/MissionName2DataDir.trn";
@@ -122,8 +121,10 @@ namespace Isis {
// If we don't succeed, create one
if(translationIterator == missionTranslators.end()) {
// Get the file
- FileName snFile((QString) dataDir[mission] + "/translations/" +
- instrument + "SerialNumber????.trn");
+
+ FileName snFile((QString) "$ISISROOT/translations/" + mission + instrument + "SerialNumber????.trn");
+ std::cout << "SERIALNUMBER: " << snFile.baseName() << std::endl;
+
snFile = snFile.highestVersion();
// use the translation file to generate keywords
diff --git a/isis/src/base/objs/TiffImporter/TiffImporter.cpp b/isis/src/base/objs/TiffImporter/TiffImporter.cpp
index df47a30160..695a832cdf 100644
--- a/isis/src/base/objs/TiffImporter/TiffImporter.cpp
+++ b/isis/src/base/objs/TiffImporter/TiffImporter.cpp
@@ -122,7 +122,7 @@ namespace Isis {
if (GTIFKeyGet(m_geotiff, ProjectedCSTypeGeoKey, &coordSysType, 0, 1) == 1) {
// Get the mapping group data for this code: proj name, clat, clon, ...
- FileName transFile((QString) "$base/translations/geotiff/" +
+ FileName transFile((QString) "$ISISROOT/appdata/translations/" +
toString(coordSysType) + ".trn");
if (transFile.fileExists()) {
Pvl tmp;
diff --git a/isis/src/qisis/apps/cneteditor/CnetEditorWindow.cpp b/isis/src/qisis/apps/cneteditor/CnetEditorWindow.cpp
index 3ce1c246a5..fec92f568a 100644
--- a/isis/src/qisis/apps/cneteditor/CnetEditorWindow.cpp
+++ b/isis/src/qisis/apps/cneteditor/CnetEditorWindow.cpp
@@ -236,30 +236,30 @@ namespace Isis {
void CnetEditorWindow::createActions() {
- openNetAct = new QAction(QIcon(FileName("$base/icons/fileopen.png").expanded()),
+ openNetAct = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/fileopen.png").expanded()),
tr("&Open control network"), this);
openNetAct->setShortcut(tr("Ctrl+O"));
openNetAct->setStatusTip(tr("Open a control network file"));
connect(openNetAct, SIGNAL(triggered()), this, SLOT(openNet()));
- openCubeListAct = new QAction(QIcon(FileName("$base/icons/openList.png").expanded()),
+ openCubeListAct = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/openList.png").expanded()),
tr("Open cube &list"), this);
openCubeListAct->setShortcut(tr("Ctrl+L"));
openCubeListAct->setStatusTip(tr("Open a cube list file"));
connect(openCubeListAct, SIGNAL(triggered()), this, SLOT(openCubeList()));
- saveAct = new QAction(QIcon(FileName("$base/icons/filesave.png").expanded()),
+ saveAct = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/filesave.png").expanded()),
tr("&Save"), this);
saveAct->setShortcut(tr("Ctrl+S"));
saveAct->setStatusTip(tr("save changes"));
connect(saveAct, SIGNAL(triggered()), this, SLOT(save()));
- saveAsAct = new QAction(QIcon(FileName("$base/icons/filesaveas.png").expanded()),
+ saveAsAct = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/filesaveas.png").expanded()),
tr("Save&As"), this);
saveAsAct->setStatusTip(tr("Save control network to specified file"));
connect(saveAsAct, SIGNAL(triggered()), this, SLOT(saveAs()));
- closeAct = new QAction(QIcon(FileName("$base/icons/fileclose.png").expanded()),
+ closeAct = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/fileclose.png").expanded()),
tr("&Close"), this);
closeAct->setStatusTip(tr("Close control net file"));
connect(closeAct, SIGNAL(triggered()), this, SLOT(closeNetwork()));
@@ -268,7 +268,7 @@ namespace Isis {
aboutAct->setStatusTip(tr("Show cneteditor's about box"));
connect(aboutAct, SIGNAL(triggered()), this, SLOT(about()));
- quitAct = new QAction(QIcon(FileName("$base/icons/exit.png").expanded()),
+ quitAct = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/exit.png").expanded()),
tr("&Quit"), this);
quitAct->setShortcut(tr("Ctrl+Q"));
quitAct->setStatusTip(tr("Quit cneteditor"));
diff --git a/isis/src/qisis/apps/ipce/IpceMainWindow.cpp b/isis/src/qisis/apps/ipce/IpceMainWindow.cpp
index 6d875a7c7d..c4ad55b7c4 100644
--- a/isis/src/qisis/apps/ipce/IpceMainWindow.cpp
+++ b/isis/src/qisis/apps/ipce/IpceMainWindow.cpp
@@ -453,7 +453,7 @@ namespace Isis {
QAction *activateWhatsThisAct = new QAction("&What's This", this);
activateWhatsThisAct->setShortcut(Qt::SHIFT | Qt::Key_F1);
activateWhatsThisAct->setIcon(
- QPixmap(FileName("$base/icons/contexthelp.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/contexthelp.png").expanded()));
activateWhatsThisAct->setToolTip("Activate What's This and click on parts "
"this program to see more information about them");
connect(activateWhatsThisAct, SIGNAL(triggered()), this, SLOT(enterWhatsThisMode()));
diff --git a/isis/src/qisis/apps/qtie/QtieTool.cpp b/isis/src/qisis/apps/qtie/QtieTool.cpp
index 28f05c4876..239da5301b 100644
--- a/isis/src/qisis/apps/qtie/QtieTool.cpp
+++ b/isis/src/qisis/apps/qtie/QtieTool.cpp
@@ -207,7 +207,7 @@ namespace Isis {
*/
void QtieTool::createMenus() {
- p_saveNet = new QAction(QIcon(FileName("$base/icons/mActionFileSaveAs.png").expanded()),
+ p_saveNet = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/mActionFileSaveAs.png").expanded()),
"Save Control Network &As...",
p_tieTool);
p_saveNet->setToolTip("Save current control network to chosen file");
@@ -251,7 +251,7 @@ namespace Isis {
regMenu->addAction(viewTemplate);
// registrationMenu->addAction(interestOp);
- p_whatsThis = new QAction(QIcon(FileName("$base/icons/contexthelp.png").expanded()),
+ p_whatsThis = new QAction(QIcon(FileName("$ISISROOT/appdata/images/icons/contexthelp.png").expanded()),
"&Whats's This",
p_tieTool);
p_whatsThis->setShortcut(Qt::SHIFT | Qt::Key_F1);
diff --git a/isis/src/qisis/objs/BlinkTool/BlinkTool.cpp b/isis/src/qisis/objs/BlinkTool/BlinkTool.cpp
index b0e4c2dee6..745dac3ca5 100644
--- a/isis/src/qisis/objs/BlinkTool/BlinkTool.cpp
+++ b/isis/src/qisis/objs/BlinkTool/BlinkTool.cpp
@@ -175,9 +175,9 @@ namespace Isis {
*
*/
void BlinkTool::updateTool() {
- QString unlinkedIcon = FileName("$base/icons/unlinked.png").expanded();
+ QString unlinkedIcon = FileName("$ISISROOT/appdata/images/icons/unlinked.png").expanded();
static QIcon unlinked(unlinkedIcon);
- QString linkedIcon = FileName("$base/icons/linked.png").expanded();
+ QString linkedIcon = FileName("$ISISROOT/appdata/images/icons/linked.png").expanded();
static QIcon linked(linkedIcon);
p_listWidget->clear();
for(int i = 0; i < (int)cubeViewportList()->size(); i++) {
diff --git a/isis/src/qisis/objs/CnetEditorWidget/AbstractFilterSelector.cpp b/isis/src/qisis/objs/CnetEditorWidget/AbstractFilterSelector.cpp
index c0b0cf85ef..13a28806b7 100644
--- a/isis/src/qisis/objs/CnetEditorWidget/AbstractFilterSelector.cpp
+++ b/isis/src/qisis/objs/CnetEditorWidget/AbstractFilterSelector.cpp
@@ -71,7 +71,7 @@ namespace Isis {
void AbstractFilterSelector::createSelector() {
m_closeButton = new QPushButton;
- m_closeButton->setIcon(QIcon(FileName("$base/icons/editdelete.png").expanded()));
+ m_closeButton->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/editdelete.png").expanded()));
connect(m_closeButton, SIGNAL(clicked()), this, SLOT(sendClose()));
m_selector = new QComboBox;
diff --git a/isis/src/qisis/objs/CnetEditorWidget/CnetEditorWidget.cpp b/isis/src/qisis/objs/CnetEditorWidget/CnetEditorWidget.cpp
index 1e4c2880a9..e3c3eebe4d 100644
--- a/isis/src/qisis/objs/CnetEditorWidget/CnetEditorWidget.cpp
+++ b/isis/src/qisis/objs/CnetEditorWidget/CnetEditorWidget.cpp
@@ -299,7 +299,8 @@ namespace Isis {
void CnetEditorWidget::createActions() {
ASSERT(m_menuActions);
- QAction *freezeTablesAct = new QAction(QIcon(FileName("$base/icons/ice.png").expanded()),
+ QAction *freezeTablesAct = new QAction(QIcon(
+ FileName("$ISISROOT/appdata/images/icons/ice.png").expanded()),
tr("&Freeze Tables"), this);
freezeTablesAct->setCheckable(true);
freezeTablesAct->setToolTip(tr("Freeze tables (filters will not take "
@@ -315,7 +316,8 @@ namespace Isis {
freezeTablesLocation.append(tr("&Tables"));
m_menuActions->insert(freezeTablesAct, freezeTablesLocation);
- QAction *configureSortAct = new QAction(QIcon(FileName("$base/icons/sort.png").expanded()),
+ QAction *configureSortAct = new QAction(QIcon(
+ FileName("$ISISROOT/appdata/images/icons/sort.png").expanded()),
tr("&Sorting Options..."), this);
QString configureSortToolTipText = tr("Configure table sorting options");
configureSortAct->setToolTip(configureSortToolTipText);
diff --git a/isis/src/qisis/objs/CnetEditorWidget/FilterGroup.cpp b/isis/src/qisis/objs/CnetEditorWidget/FilterGroup.cpp
index 73cd7ced6d..442b268d9a 100644
--- a/isis/src/qisis/objs/CnetEditorWidget/FilterGroup.cpp
+++ b/isis/src/qisis/objs/CnetEditorWidget/FilterGroup.cpp
@@ -142,7 +142,8 @@ namespace Isis {
m_logicWidget->setLayout(logicLayout);
m_newSelectorButton = new QPushButton;
- m_newSelectorButton->setIcon(QIcon(FileName("$base/icons/add.png").expanded()));
+ m_newSelectorButton->setIcon(QIcon(
+ FileName("$ISISROOT/appdata/images/icons/add.png").expanded()));
QString newSelectorTooltip = "Add new filter";
m_newSelectorButton->setToolTip(newSelectorTooltip);
m_newSelectorButton->setStatusTip(newSelectorTooltip);
diff --git a/isis/src/qisis/objs/CnetEditorWidget/FilterWidget.cpp b/isis/src/qisis/objs/CnetEditorWidget/FilterWidget.cpp
index a7bcb43368..2fef8a559d 100644
--- a/isis/src/qisis/objs/CnetEditorWidget/FilterWidget.cpp
+++ b/isis/src/qisis/objs/CnetEditorWidget/FilterWidget.cpp
@@ -207,7 +207,7 @@ namespace Isis {
m_logicWidget->setLayout(buttonLayout);
m_addGroupButton = new QPushButton;
- m_addGroupButton->setIcon(QIcon(FileName("$base/icons/add.png").expanded()));
+ m_addGroupButton->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/add.png").expanded()));
QString addGroupTooltip = "Add new filter group";
m_addGroupButton->setToolTip(addGroupTooltip);
m_addGroupButton->setStatusTip(addGroupTooltip);
diff --git a/isis/src/qisis/objs/ControlMeasureEditWidget/ControlMeasureEditWidget.cpp b/isis/src/qisis/objs/ControlMeasureEditWidget/ControlMeasureEditWidget.cpp
index 11357d618f..34e0e404fc 100644
--- a/isis/src/qisis/objs/ControlMeasureEditWidget/ControlMeasureEditWidget.cpp
+++ b/isis/src/qisis/objs/ControlMeasureEditWidget/ControlMeasureEditWidget.cpp
@@ -70,7 +70,7 @@ namespace Isis {
m_leftGroundMap = 0;
m_rightGroundMap = 0;
- m_templateFileName = "$base/templates/autoreg/qnetReg.def";
+ m_templateFileName = "$ISISROOT/appdata/templates/autoreg/qnetReg.def";
createMeasureEditor(parent);
}
@@ -117,7 +117,7 @@ namespace Isis {
// grid row
int row = 0;
- QString tempFileName = FileName("$base/icons").expanded();
+ QString tempFileName = FileName("$ISISROOT/appdata/images/icons").expanded();
QString toolIconDir = tempFileName;
QSize isize(27, 27);
@@ -153,7 +153,7 @@ namespace Isis {
if ( m_allowLeftMouse ) {
// Add arrows for panning
leftPanUp = new QToolButton(parent);
- leftPanUp->setIcon(QIcon(FileName("$base/icons/up.png").
+ leftPanUp->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/up.png").
expanded()));
leftPanUp->setIconSize(isize);
leftPanUp->setToolTip("Move up 1 screen pixel");
@@ -161,7 +161,7 @@ namespace Isis {
leftPanUp->setWhatsThis("Move the left measure up 1 screen pixel.");
leftPanDown = new QToolButton(parent);
- leftPanDown->setIcon(QIcon(FileName("$base/icons/down.png").
+ leftPanDown->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/down.png").
expanded()));
leftPanDown->setIconSize(isize);
leftPanDown->setToolTip("Move down 1 screen pixel");
@@ -169,7 +169,7 @@ namespace Isis {
leftPanDown->setWhatsThis("Move the left measure down 1 screen pixel.");
leftPanLeft = new QToolButton(parent);
- leftPanLeft->setIcon(QIcon(FileName("$base/icons/back.png").
+ leftPanLeft->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/back.png").
expanded()));
leftPanLeft->setIconSize(isize);
leftPanLeft->setToolTip("Move left 1 screen pixel");
@@ -177,7 +177,7 @@ namespace Isis {
"pixel.");
leftPanRight = new QToolButton(parent);
- leftPanRight->setIcon(QIcon(FileName("$base/icons/forward.png").
+ leftPanRight->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/forward.png").
expanded()));
leftPanRight->setIconSize(isize);
leftPanRight->setToolTip("Move right 1 screen pixel");
@@ -200,7 +200,7 @@ namespace Isis {
m_rightZoomIn->setWhatsThis("Zoom In 2x on right measure.");
m_rightZoomOut = new QToolButton();
- m_rightZoomOut->setIcon(QIcon(FileName("$base/icons/viewmag-.png").
+ m_rightZoomOut->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/viewmag-.png").
expanded()));
m_rightZoomOut->setIconSize(isize);
m_rightZoomOut->setToolTip("Zoom Out 2x");
@@ -219,21 +219,21 @@ namespace Isis {
// Add arrows for panning
QToolButton *rightPanUp = new QToolButton(parent);
- rightPanUp->setIcon(QIcon(FileName("$base/icons/up.png").
+ rightPanUp->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/up.png").
expanded()));
rightPanUp->setIconSize(isize);
rightPanUp->setToolTip("Move up 1 screen pixel");
rightPanUp->setWhatsThis("Move the right measure up 1 screen pixel.");
QToolButton *rightPanDown = new QToolButton(parent);
- rightPanDown->setIcon(QIcon(FileName("$base/icons/down.png").
+ rightPanDown->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/down.png").
expanded()));
rightPanDown->setIconSize(isize);
rightPanDown->setToolTip("Move down 1 screen pixel");
rightPanUp->setWhatsThis("Move the right measure down 1 screen pixel.");
QToolButton *rightPanLeft = new QToolButton(parent);
- rightPanLeft->setIcon(QIcon(FileName("$base/icons/back.png").
+ rightPanLeft->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/back.png").
expanded()));
rightPanLeft->setIconSize(isize);
rightPanLeft->setToolTip("Move left 1 screen pixel");
@@ -241,7 +241,7 @@ namespace Isis {
"pixel.");
QToolButton *rightPanRight = new QToolButton(parent);
- rightPanRight->setIcon(QIcon(FileName("$base/icons/forward.png").
+ rightPanRight->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/forward.png").
expanded()));
rightPanRight->setIconSize(isize);
rightPanRight->setToolTip("Move right 1 screen pixel");
diff --git a/isis/src/qisis/objs/ControlPointEdit/ControlPointEdit.cpp b/isis/src/qisis/objs/ControlPointEdit/ControlPointEdit.cpp
index 9efdfb6b49..1fd315e9e1 100644
--- a/isis/src/qisis/objs/ControlPointEdit/ControlPointEdit.cpp
+++ b/isis/src/qisis/objs/ControlPointEdit/ControlPointEdit.cpp
@@ -68,7 +68,7 @@ namespace Isis {
p_leftGroundMap = 0;
p_rightGroundMap = 0;
- p_templateFileName = "$base/templates/autoreg/qnetReg.def";
+ p_templateFileName = "$ISISROOT/appdata/templates/autoreg/qnetReg.def";
createPointEditor(parent);
if (cnet != NULL) emit newControlNetwork(cnet);
@@ -114,7 +114,7 @@ namespace Isis {
// grid row
int row = 0;
- QString tempFileName = FileName("$base/icons").expanded();
+ QString tempFileName = FileName("$ISISROOT/appdata/images/icons").expanded();
QString toolIconDir = tempFileName;
QSize isize(27, 27);
@@ -150,7 +150,7 @@ namespace Isis {
if (p_allowLeftMouse) {
// Add arrows for panning
leftPanUp = new QToolButton(parent);
- leftPanUp->setIcon(QIcon(FileName("$base/icons/up.png").
+ leftPanUp->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/up.png").
expanded()));
leftPanUp->setIconSize(isize);
leftPanUp->setToolTip("Move up 1 screen pixel");
@@ -158,7 +158,7 @@ namespace Isis {
leftPanUp->setWhatsThis("Move the left measure up 1 screen pixel.");
leftPanDown = new QToolButton(parent);
- leftPanDown->setIcon(QIcon(FileName("$base/icons/down.png").
+ leftPanDown->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/down.png").
expanded()));
leftPanDown->setIconSize(isize);
leftPanDown->setToolTip("Move down 1 screen pixel");
@@ -166,7 +166,7 @@ namespace Isis {
leftPanDown->setWhatsThis("Move the left measure down 1 screen pixel.");
leftPanLeft = new QToolButton(parent);
- leftPanLeft->setIcon(QIcon(FileName("$base/icons/back.png").
+ leftPanLeft->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/back.png").
expanded()));
leftPanLeft->setIconSize(isize);
leftPanLeft->setToolTip("Move left 1 screen pixel");
@@ -174,7 +174,7 @@ namespace Isis {
"pixel.");
leftPanRight = new QToolButton(parent);
- leftPanRight->setIcon(QIcon(FileName("$base/icons/forward.png").
+ leftPanRight->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/forward.png").
expanded()));
leftPanRight->setIconSize(isize);
leftPanRight->setToolTip("Move right 1 screen pixel");
@@ -197,7 +197,7 @@ namespace Isis {
p_rightZoomIn->setWhatsThis("Zoom In 2x on right measure.");
p_rightZoomOut = new QToolButton();
- p_rightZoomOut->setIcon(QIcon(FileName("$base/icons/viewmag-.png").
+ p_rightZoomOut->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/viewmag-.png").
expanded()));
p_rightZoomOut->setIconSize(isize);
p_rightZoomOut->setToolTip("Zoom Out 2x");
@@ -216,21 +216,21 @@ namespace Isis {
// Add arrows for panning
QToolButton *rightPanUp = new QToolButton(parent);
- rightPanUp->setIcon(QIcon(FileName("$base/icons/up.png").
+ rightPanUp->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/up.png").
expanded()));
rightPanUp->setIconSize(isize);
rightPanUp->setToolTip("Move up 1 screen pixel");
rightPanUp->setWhatsThis("Move the right measure up 1 screen pixel.");
QToolButton *rightPanDown = new QToolButton(parent);
- rightPanDown->setIcon(QIcon(FileName("$base/icons/down.png").
+ rightPanDown->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/down.png").
expanded()));
rightPanDown->setIconSize(isize);
rightPanDown->setToolTip("Move down 1 screen pixel");
rightPanUp->setWhatsThis("Move the right measure down 1 screen pixel.");
QToolButton *rightPanLeft = new QToolButton(parent);
- rightPanLeft->setIcon(QIcon(FileName("$base/icons/back.png").
+ rightPanLeft->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/back.png").
expanded()));
rightPanLeft->setIconSize(isize);
rightPanLeft->setToolTip("Move left 1 screen pixel");
@@ -238,7 +238,7 @@ namespace Isis {
"pixel.");
QToolButton *rightPanRight = new QToolButton(parent);
- rightPanRight->setIcon(QIcon(FileName("$base/icons/forward.png").
+ rightPanRight->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/forward.png").
expanded()));
rightPanRight->setIconSize(isize);
rightPanRight->setToolTip("Move right 1 screen pixel");
diff --git a/isis/src/qisis/objs/CubePlotCurve/CubePlotCurve.cpp b/isis/src/qisis/objs/CubePlotCurve/CubePlotCurve.cpp
index 9719947142..92c3d5112b 100644
--- a/isis/src/qisis/objs/CubePlotCurve/CubePlotCurve.cpp
+++ b/isis/src/qisis/objs/CubePlotCurve/CubePlotCurve.cpp
@@ -455,7 +455,7 @@ namespace Isis {
contextMenu.addSeparator();
QString configureIconFile =
- FileName("$base/icons/plot_configure.png").expanded();
+ FileName("$ISISROOT/appdata/images/icons/plot_configure.png").expanded();
QAction *configureAct = new QAction(QPixmap(configureIconFile),
"Configure...", this);
contextMenu.addAction(configureAct);
diff --git a/isis/src/qisis/objs/Directory/Directory.cpp b/isis/src/qisis/objs/Directory/Directory.cpp
index 084c3a3faf..1dd2769bae 100644
--- a/isis/src/qisis/objs/Directory/Directory.cpp
+++ b/isis/src/qisis/objs/Directory/Directory.cpp
@@ -1,5 +1,5 @@
/**
- * @file
+ * @File
* $Revision: 1.19 $
* $Date: 2010/03/22 19:44:53 $
*
@@ -428,14 +428,14 @@ namespace Isis {
QAction *openProjectAction = m_openProjectWorkOrder->clone();
openProjectAction->setIcon(QIcon(FileName(
- "$base/icons/archive-insert-directory.png").expanded()));
+ "$ISISROOT/appdata/images/icons/archive-insert-directory.png").expanded()));
fileMenu->addAction(openProjectAction);
m_permToolBarActions.append(openProjectAction);
QAction *saveAction = m_saveProjectWorkOrder->clone();
saveAction->setShortcut(Qt::Key_S | Qt::CTRL);
- saveAction->setIcon( QIcon(FileName("$base/icons/document-save.png")
+ saveAction->setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/document-save.png")
.expanded()));
saveAction->setDisabled(true);
connect( project()->undoStack(), SIGNAL( cleanChanged(bool) ),
@@ -444,7 +444,7 @@ namespace Isis {
m_permToolBarActions.append(saveAction);
QAction *saveAsAction = m_saveProjectAsWorkOrder->clone();
- saveAsAction->setIcon(QIcon(FileName("$base/icons/document-save-as.png")
+ saveAsAction->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/document-save-as.png")
.expanded()));
fileMenu->addAction(saveAsAction);
m_permToolBarActions.append(saveAsAction);
diff --git a/isis/src/qisis/objs/JigsawSetupDialog/JigsawSetupDialog.cpp b/isis/src/qisis/objs/JigsawSetupDialog/JigsawSetupDialog.cpp
index ced53c15e2..fa936e0d98 100644
--- a/isis/src/qisis/objs/JigsawSetupDialog/JigsawSetupDialog.cpp
+++ b/isis/src/qisis/objs/JigsawSetupDialog/JigsawSetupDialog.cpp
@@ -202,19 +202,19 @@ namespace Isis {
if (name == "MOON")
m_ui->targetBodyComboBox->addItem(QIcon(FileName(
- "$base/icons/weather-clear-night.png").expanded()), name, v);
+ "$ISISROOT/appdata/images/icons/weather-clear-night.png").expanded()), name, v);
else if (name == "Enceladus")
m_ui->targetBodyComboBox->addItem(QIcon(FileName(
- "$base/icons/nasa_enceladus.png").expanded()), name, v);
+ "$ISISROOT/appdata/images/icons/nasa_enceladus.png").expanded()), name, v);
else if (name == "Mars")
m_ui->targetBodyComboBox->addItem(QIcon(FileName(
- "$base/icons/nasa_mars.png").expanded()), name, v);
+ "$ISISROOT/appdata/images/icons/nasa_mars.png").expanded()), name, v);
else if (name == "Titan")
m_ui->targetBodyComboBox->addItem(QIcon(FileName(
- "$base/icons/nasa_titan.png").expanded()), name, v);
+ "$ISISROOT/appdata/images/icons/nasa_titan.png").expanded()), name, v);
else
m_ui->targetBodyComboBox->addItem(QIcon(FileName(
- "$base/icons/weather-clear-night.png").expanded()), name, v);
+ "$ISISROOT/appdata/images/icons/weather-clear-night.png").expanded()), name, v);
}
m_ui->radiiButtonGroup->setId(m_ui->noneRadiiRadioButton,0);
diff --git a/isis/src/qisis/objs/MdiCubeViewport/MdiCubeViewport.cpp b/isis/src/qisis/objs/MdiCubeViewport/MdiCubeViewport.cpp
index 63c3c77860..9b1fe1ac0d 100644
--- a/isis/src/qisis/objs/MdiCubeViewport/MdiCubeViewport.cpp
+++ b/isis/src/qisis/objs/MdiCubeViewport/MdiCubeViewport.cpp
@@ -41,7 +41,7 @@ namespace Isis {
QWidget *parent) : CubeViewport(cube, cdt, parent) {
p_linked = false;
- QString unlinkedIcon = FileName("$base/icons/unlinked.png").expanded();
+ QString unlinkedIcon = FileName("$ISISROOT/appdata/images/icons/unlinked.png").expanded();
static QIcon unlinked(unlinkedIcon);
parentWidget()->setWindowIcon(unlinked);
@@ -71,9 +71,9 @@ namespace Isis {
if(!parentWidget() || !parentWidget()->parentWidget())
return;
- QString unlinkedIcon = FileName("$base/icons/unlinked.png").expanded();
+ QString unlinkedIcon = FileName("$ISISROOT/appdata/images/icons/unlinked.png").expanded();
static QIcon unlinked(unlinkedIcon);
- QString linkedIcon = FileName("$base/icons/linked.png").expanded();
+ QString linkedIcon = FileName("$ISISROOT/appdata/images/icons/linked.png").expanded();
static QIcon linked(linkedIcon);
bool notify = false;
diff --git a/isis/src/qisis/objs/MosaicMainWindow/MosaicMainWindow.cpp b/isis/src/qisis/objs/MosaicMainWindow/MosaicMainWindow.cpp
index 17a192392e..062888c8b1 100644
--- a/isis/src/qisis/objs/MosaicMainWindow/MosaicMainWindow.cpp
+++ b/isis/src/qisis/objs/MosaicMainWindow/MosaicMainWindow.cpp
@@ -173,7 +173,7 @@ namespace Isis {
// Create the file menu
m_fileMenu = menuBar()->addMenu("&File");
- IString iconDir = FileName("$base/icons").expanded();
+ IString iconDir = FileName("$ISISROOT/appdata/images/icons").expanded();
QAction *open = new QAction(this);
open->setText("Open Cube...");
@@ -249,7 +249,7 @@ namespace Isis {
QAction *activateWhatsThisAct = new QAction("&What's This", this);
activateWhatsThisAct->setShortcut(Qt::SHIFT | Qt::Key_F1);
activateWhatsThisAct->setIcon(
- QPixmap(FileName("$base/icons/contexthelp.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/contexthelp.png").expanded()));
activateWhatsThisAct->setToolTip("Activate What's This and click on parts "
"this program to see more information about them");
connect(activateWhatsThisAct, SIGNAL(triggered()),
diff --git a/isis/src/qisis/objs/MosaicSceneWidget/MosaicSceneWidget.cpp b/isis/src/qisis/objs/MosaicSceneWidget/MosaicSceneWidget.cpp
index a4dc3bbf0d..ee230cbe34 100644
--- a/isis/src/qisis/objs/MosaicSceneWidget/MosaicSceneWidget.cpp
+++ b/isis/src/qisis/objs/MosaicSceneWidget/MosaicSceneWidget.cpp
@@ -342,7 +342,7 @@ namespace Isis {
return proj->Mapping();
}
catch (IException &) {
- Pvl mappingPvl("$base/templates/maps/equirectangular.map");
+ Pvl mappingPvl("$ISISROOT/appdata/maps/equirectangular.map");
PvlGroup &mappingGrp = mappingPvl.findGroup("Mapping");
mappingGrp += PvlKeyword("LatitudeType", "Planetocentric");
mappingGrp += PvlKeyword("LongitudeDirection", "PositiveEast");
@@ -381,7 +381,7 @@ namespace Isis {
connect(this, SIGNAL(destroyed()), m_mapButton, SLOT(deleteLater()));
m_mapButton->setText(tr("View/Edit/Load Map File"));
m_mapButton->setToolTip(tr("View/Edit/Load Map File"));
- m_mapButton->setIcon(QIcon(FileName("$base/icons/ographic.png").expanded()));
+ m_mapButton->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/ographic.png").expanded()));
m_mapButton->setWhatsThis(tr("This is the projection used by the mosaic "
"scene. Cubes can not be shown in the scene without a projection, so "
"if one is not selected, a default of Equirectangular will be used. "
@@ -399,7 +399,7 @@ namespace Isis {
m_quickMapAction = new QAction(tr("Quick Load Map"), this);
m_quickMapAction->setToolTip(tr("Quick Load Map"));
- m_quickMapAction->setIcon(QIcon(FileName("$base/icons/quickopen.png").expanded()));
+ m_quickMapAction->setIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/quickopen.png").expanded()));
m_quickMapAction->setWhatsThis(tr("This is the projection used by the mosaic "
"scene. Cubes can not be shown in the scene without a projection, so "
"if one is not selected, a default of Equirectangular will be used."));
@@ -1100,7 +1100,7 @@ namespace Isis {
QLabel *overviewMapIcon = new QLabel;
overviewMapIcon->setPixmap(
- QIcon(FileName("$base/icons/ographic.png").expanded()).pixmap(32, 32));
+ QIcon(FileName("$ISISROOT/appdata/images/icons/ographic.png").expanded()).pixmap(32, 32));
mapHelpLayout->addWidget(overviewMapIcon);
QLabel *defaultMapFile = new QLabel(tr(
@@ -1151,10 +1151,9 @@ namespace Isis {
"on creating a custom map file that defines the desired projection, latitude "
"system, and longitude direction and domain. This program will use the latitude range "
"and longitude range if they exist in the loaded file. A choice of map templates that can be used as "
- "a starting point for supported map projections can be found in $base/templates/maps (refer "
+ "a starting point for supported map projections can be found in $ISISROOT/appdata/maps (refer "
"to maptemplate or mosrange for more details and information on the required parameters "
- "for a projection). Note that through the file name selection box, $base will need "
- "to be replaced with the specific Isis3 system path. The website: "
+ "for a projection). The website: "
"%1 also provides useful information about map projections.")
.arg(mapProjWorkshopUrl));
diff --git a/isis/src/qisis/objs/MosaicSceneWidget/MosaicTool.cpp b/isis/src/qisis/objs/MosaicSceneWidget/MosaicTool.cpp
index 1db4fd4145..cf29526a84 100644
--- a/isis/src/qisis/objs/MosaicSceneWidget/MosaicTool.cpp
+++ b/isis/src/qisis/objs/MosaicSceneWidget/MosaicTool.cpp
@@ -113,7 +113,7 @@ namespace Isis {
QPixmap MosaicTool::getIcon(QString iconName) const {
- QString path = FileName("$base/icons").expanded();
+ QString path = FileName("$ISISROOT/appdata/images/icons").expanded();
QString fullPathToFile = QString(path + "/" + iconName);
return QPixmap(fullPathToFile);
}
diff --git a/isis/src/qisis/objs/PlotWindow/PlotWindow.cpp b/isis/src/qisis/objs/PlotWindow/PlotWindow.cpp
index 96f9474b68..af791e3bd8 100644
--- a/isis/src/qisis/objs/PlotWindow/PlotWindow.cpp
+++ b/isis/src/qisis/objs/PlotWindow/PlotWindow.cpp
@@ -971,7 +971,7 @@ namespace Isis {
m_showHideAllCurves->setText("Show All Curves");
m_showHideAllCurves->setIcon(
- QPixmap(FileName("$base/icons/plot_showCurves.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_showCurves.png").expanded()));
}
else {
@@ -979,7 +979,7 @@ namespace Isis {
m_showHideAllCurves->setText("Hide All Curves");
m_showHideAllCurves->setIcon(
- QPixmap(FileName("$base/icons/plot_hideCurves.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_hideCurves.png").expanded()));
}
for (int i = 0; i < m_plot->itemList().size(); i ++) {
@@ -1013,13 +1013,13 @@ namespace Isis {
QLabel(" To configure the curve properties Right click on the legend and select Configure from
the menu"
" or click on the configure icon in the tool bar.");
QLabel *config = new QLabel();
- config->setPixmap(QPixmap(FileName("$base/icons/plot_configure.png").expanded()));
+ config->setPixmap(QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_configure.png").expanded()));
QLabel *tableLabel = new QLabel("
Table Options:");
QLabel *tableDirections = new
QLabel(" To view the table Click on the File menu and select Show Table or click on the table icon in the
tool bar.");
QLabel *table = new QLabel();
- table->setPixmap(QPixmap(FileName("$base/icons/plot_table.png").expanded()));
+ table->setPixmap(QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_table.png").expanded()));
QVBoxLayout *layout = new QVBoxLayout();
layout->addWidget(zoomLabel);
@@ -1082,7 +1082,7 @@ namespace Isis {
QAction *table = new QAction(m_plot);
table->setText("Show Table");
table->setIcon(
- QPixmap(FileName("$base/icons/plot_table.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_table.png").expanded()));
QString text =
"Function: Activates the table which displays the data of the "
"current plot";
@@ -1101,7 +1101,7 @@ namespace Isis {
QAction *track = new QAction(m_plot);
track->setText("Show Mouse &Tracking");
track->setIcon(
- QPixmap(FileName("$base/icons/goto.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/goto.png").expanded()));
track->setCheckable(true);
QString text =
"Function: Displays the x,y coordinates as the cursor moves "
@@ -1116,7 +1116,7 @@ namespace Isis {
QAction *backgrdSwitch = new QAction(m_plot);
backgrdSwitch->setText("White/Black &Background");
backgrdSwitch->setIcon(
- QPixmap(FileName("$base/icons/plot_switchBackgrd.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_switchBackgrd.png").expanded()));
QString text =
"Function: Switch the background color between black and "
"white.";
@@ -1131,7 +1131,7 @@ namespace Isis {
m_showHideGrid = new QAction(m_plot);
m_showHideGrid->setText("Show Grid");
m_showHideGrid->setIcon(
- QPixmap(FileName("$base/icons/plot_grid.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_grid.png").expanded()));
QString text =
"Function: Display grid lines on the plot.";
m_showHideGrid->setWhatsThis(text);
@@ -1144,7 +1144,7 @@ namespace Isis {
QAction *changeLabels = new QAction(m_plot);
changeLabels->setText("Rename Plot &Labels");
changeLabels->setIcon(
- QPixmap(FileName("$base/icons/plot_renameLabels.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_renameLabels.png").expanded()));
QString text =
"Function: Edit the plot title, x and y axis labels.";
changeLabels->setWhatsThis(text);
@@ -1159,7 +1159,7 @@ namespace Isis {
QAction *changeScale = new QAction(m_plot);
changeScale->setText("Set &Display Range");
changeScale->setIcon(
- QPixmap(FileName("$base/icons/plot_setScale.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_setScale.png").expanded()));
QString text =
"Function: Adjust the scale for the x and y axis on the "
"plot.";
@@ -1174,7 +1174,7 @@ namespace Isis {
m_showHideAllCurves = new QAction(m_plot);
m_showHideAllCurves->setText("Hide All Curves");
m_showHideAllCurves->setIcon(
- QPixmap(FileName("$base/icons/plot_showCurves.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_showCurves.png").expanded()));
QString text =
"Function: Displays or hides all the curves currently "
"displayed on the plot.";
@@ -1190,7 +1190,7 @@ namespace Isis {
m_showHideAllMarkers = new QAction(m_plot);
m_showHideAllMarkers->setText("Hide All Symbols");
m_showHideAllMarkers->setIcon(
- QPixmap(FileName("$base/icons/plot_markers.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_markers.png").expanded()));
QString text = "Function: Displays or hides a symbol for each "
"data point plotted on a plot.";
m_showHideAllMarkers->setWhatsThis(text);
@@ -1204,7 +1204,7 @@ namespace Isis {
QAction *resetScaleButton = new QAction(m_plot);
resetScaleButton->setText("Reset Scale");
resetScaleButton->setIcon(
- QPixmap(FileName("$base/icons/plot_resetscale.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_resetscale.png").expanded()));
QString text =
"Function: Reset the plot's scale.";
resetScaleButton->setWhatsThis(text);
@@ -1216,7 +1216,7 @@ namespace Isis {
QAction *clear = new QAction(m_plot);
clear->setText("Clear Plot");
clear->setIcon(
- QPixmap(FileName("$base/icons/plot_clear.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/plot_clear.png").expanded()));
QString text =
"Function: Removes all the curves from the plot.";
clear->setWhatsThis(text);
@@ -1228,7 +1228,7 @@ namespace Isis {
QAction *lineFit = new QAction(m_plot);
lineFit->setText("Create Best Fit Line");
lineFit->setIcon(
- QPixmap(FileName("$base/icons/linefit.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/linefit.png").expanded()));
QString text = "Function: Calculates a best fit line from an "
"existing curve.";
lineFit->setWhatsThis(text);
@@ -1241,7 +1241,7 @@ namespace Isis {
QAction *configurePlot = new QAction(m_plot);
configurePlot->setText("Configure Plot");
configurePlot->setIcon(
- QPixmap( FileName("$base/icons/plot_configure.png").expanded() ) );
+ QPixmap( FileName("$ISISROOT/appdata/images/icons/plot_configure.png").expanded() ) );
QString text = "Function: Change the name, color, style, and vertex symbol of the "
"curves.";
configurePlot->setWhatsThis(text);
diff --git a/isis/src/qisis/objs/ProjectItem/ProjectItem.cpp b/isis/src/qisis/objs/ProjectItem/ProjectItem.cpp
index a51eb7a50e..40bce6e5e7 100644
--- a/isis/src/qisis/objs/ProjectItem/ProjectItem.cpp
+++ b/isis/src/qisis/objs/ProjectItem/ProjectItem.cpp
@@ -781,7 +781,7 @@ namespace Isis {
void ProjectItem::setBundleResults(BundleResults bundleResults) {
setTextColor(Qt::black);
setText("Statistics");
- setIcon( QIcon(FileName("$base/icons/kchart.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/kchart.png")
.expanded()));
setData( QVariant::fromValue(bundleResults) );
}
@@ -795,7 +795,7 @@ namespace Isis {
void ProjectItem::setBundleSettings(BundleSettingsQsp bundleSettings) {
setTextColor(Qt::black);
setText("Settings");
- setIcon( QIcon(FileName("$base/icons/applications-system.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/applications-system.png")
.expanded()));
setData( QVariant::fromValue(bundleSettings) );
}
@@ -814,7 +814,7 @@ namespace Isis {
else {
setText( bundleSolutionInfo->runTime() );
}
- setIcon( QIcon(FileName("$base/icons/kchart.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/kchart.png")
.expanded()));
setData( QVariant::fromValue(bundleSolutionInfo) );
}
@@ -828,7 +828,7 @@ namespace Isis {
void ProjectItem::setImage(Image *image) {
setTextColor(Qt::black);
setText( QFileInfo( image->fileName() ).fileName() );
- setIcon( QIcon(FileName("$base/icons/view-preview.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/view-preview.png")
.expanded()));
setData( QVariant::fromValue(image) );
}
@@ -847,7 +847,7 @@ namespace Isis {
else {
setText( imageList->path() );
}
- setIcon( QIcon(FileName("$base/icons/folder-image.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-image.png")
.expanded()));
setData( QVariant::fromValue(imageList) );
}
@@ -859,7 +859,7 @@ namespace Isis {
void ProjectItem::setImages() {
setTextColor(Qt::black);
setText("Images");
- setIcon( QIcon(FileName("$base/icons/folder-image.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-image.png")
.expanded()));
setData( QVariant() );
}
@@ -873,7 +873,7 @@ namespace Isis {
void ProjectItem::setShape(Shape *shape) {
setTextColor(Qt::black);
setText( QFileInfo( shape->fileName() ).fileName() );
- setIcon( QIcon(FileName("$base/icons/rating.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/rating.png")
.expanded()));
setData( QVariant::fromValue(shape) );
}
@@ -892,7 +892,7 @@ namespace Isis {
else {
setText( shapeList->path() );
}
- setIcon( QIcon(FileName("$base/icons/folder-orange.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-orange.png")
.expanded()));
setData( QVariant::fromValue(shapeList) );
}
@@ -904,7 +904,7 @@ namespace Isis {
void ProjectItem::setShapes() {
setTextColor(Qt::black);
setText("Shapes");
- setIcon( QIcon(FileName("$base/icons/folder-red.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-red.png")
.expanded()));
setData( QVariant() );
}
@@ -936,7 +936,7 @@ namespace Isis {
else {
setText( templateList->path() );
}
- setIcon( QIcon(FileName("$base/icons/folder-orange.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-orange.png")
.expanded()));
setData( QVariant::fromValue(templateList) );
}
@@ -947,13 +947,13 @@ namespace Isis {
*/
void ProjectItem::setTemplates() {
setText("Templates");
- setIcon( QIcon(FileName("$base/icons/folder-red.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-red.png")
.expanded()));
setData( QVariant() );
ProjectItem *mapsItem = new ProjectItem();
mapsItem->setText("Maps");
- setIcon( QIcon(FileName("$base/icons/folder-red.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-red.png")
.expanded()));
mapsItem->setData( QVariant() );
appendRow(mapsItem);
@@ -961,7 +961,7 @@ namespace Isis {
ProjectItem *registrationsItem = new ProjectItem();
registrationsItem->setText("Registrations");
- setIcon( QIcon(FileName("$base/icons/folder-red.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-red.png")
.expanded()));
registrationsItem->setData( QVariant() );
appendRow(registrationsItem);
@@ -976,7 +976,7 @@ namespace Isis {
void ProjectItem::setControl(Control *control) {
setTextColor(Qt::black);
setText( QFileInfo( control->fileName() ).fileName() );
- setIcon( QIcon(FileName("$base/icons/network-server-database.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/network-server-database.png")
.expanded()));
setData( QVariant::fromValue(control) );
}
@@ -990,7 +990,7 @@ namespace Isis {
void ProjectItem::setControlList(ControlList *controlList) {
setTextColor(Qt::black);
setText( controlList->name() );
- setIcon( QIcon(FileName("$base/icons/folder.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder.png")
.expanded()));
setData( QVariant::fromValue(controlList) );
}
@@ -1002,7 +1002,7 @@ namespace Isis {
void ProjectItem::setControls() {
setTextColor(Qt::black);
setText("Control Networks");
- setIcon( QIcon(FileName("$base/icons/folder-remote.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-remote.png")
.expanded()));
setData( QVariant() );
}
@@ -1016,7 +1016,7 @@ namespace Isis {
void ProjectItem::setCorrelationMatrix(CorrelationMatrix correlationMatrix) {
setTextColor(Qt::black);
setText("Correlation Matrix");
- setIcon( QIcon(FileName("$base/icons/network-server-database.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/network-server-database.png")
.expanded()));
setData( QVariant::fromValue(correlationMatrix) );
}
@@ -1035,7 +1035,7 @@ namespace Isis {
void ProjectItem::setProject(Project *project) {
setTextColor(Qt::black);
setText( project->name() );
- setIcon( QIcon(FileName("$base/icons/folder-activities.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/folder-activities.png")
.expanded()));
setData( QVariant::fromValue(project) );
setToolTip(project->projectRoot());
@@ -1048,7 +1048,7 @@ namespace Isis {
void ProjectItem::setResults() {
setTextColor(Qt::black);
setText("Results");
- setIcon( QIcon(FileName("$base/icons/kchart.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/kchart.png")
.expanded()));
setData( QVariant() );
}
@@ -1062,7 +1062,7 @@ namespace Isis {
void ProjectItem::setGuiCamera(GuiCameraQsp guiCamera) {
setTextColor(Qt::black);
setText( guiCamera->displayProperties()->displayName() );
- setIcon( QIcon(FileName("$base/icons/camera-photo.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/camera-photo.png")
.expanded()));
setData( QVariant::fromValue(guiCamera) );
}
@@ -1074,7 +1074,7 @@ namespace Isis {
void ProjectItem::setGuiCameraList() {
setTextColor(Qt::black);
setText("Sensors");
- setIcon( QIcon(FileName("$base/icons/camera-photo.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/camera-photo.png")
.expanded()));
setData( QVariant() );
}
@@ -1086,7 +1086,7 @@ namespace Isis {
void ProjectItem::setSpacecraft() {
setTextColor(Qt::black);
setText("Spacecraft");
- setIcon( QIcon(FileName("$base/icons/preferences-desktop-launch-feedback.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/preferences-desktop-launch-feedback.png")
.expanded()));
setData( QVariant() );
}
@@ -1102,19 +1102,19 @@ namespace Isis {
setTextColor(Qt::black);
setText( targetBody->displayProperties()->displayName() );
if (targetBody->displayProperties()->displayName() == "MOON")
- setIcon( QIcon(FileName("$base/icons/weather-clear-night.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/weather-clear-night.png")
.expanded()));
else if (targetBody->displayProperties()->displayName() == "Enceladus")
- setIcon( QIcon(FileName("$base/icons/nasa_enceladus.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_enceladus.png")
.expanded()));
else if (targetBody->displayProperties()->displayName() == "Mars")
- setIcon( QIcon(FileName("$base/icons/nasa_mars.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_mars.png")
.expanded()));
else if (targetBody->displayProperties()->displayName() == "Titan")
- setIcon( QIcon(FileName("$base/icons/nasa_titan.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_titan.png")
.expanded()));
else
- setIcon( QIcon(FileName("$base/icons/view-web-browser-dom-tree.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/view-web-browser-dom-tree.png")
.expanded()));
setData( QVariant::fromValue(targetBody) );
@@ -1127,7 +1127,7 @@ namespace Isis {
void ProjectItem::setTargetBodyList() {
setTextColor(Qt::black);
setText("Target Body");
- setIcon( QIcon(FileName("$base/icons/view-web-browser-dom-tree.png")
+ setIcon( QIcon(FileName("$ISISROOT/appdata/images/icons/view-web-browser-dom-tree.png")
.expanded()));
setData( QVariant() );
}
diff --git a/isis/src/qisis/objs/ProjectItemModel/ProjectItemModel.cpp b/isis/src/qisis/objs/ProjectItemModel/ProjectItemModel.cpp
index a49a293add..22db1ee595 100644
--- a/isis/src/qisis/objs/ProjectItemModel/ProjectItemModel.cpp
+++ b/isis/src/qisis/objs/ProjectItemModel/ProjectItemModel.cpp
@@ -498,25 +498,25 @@ namespace Isis {
ProjectItem *bundleSummaryItem = new ProjectItem(FileItemQsp(
new FileItem(bundleSolutionInfo->savedBundleOutputFilename())),
"Summary", bundleSolutionInfo->savedBundleOutputFilename(),
- QIcon(FileName("$base/icons/office-chart-pie.png")
+ QIcon(FileName("$ISISROOT/appdata/images/icons/office-chart-pie.png")
.expanded()));
pItem->child(2)->appendRow(bundleSummaryItem);
ProjectItem *residualsItem = new ProjectItem(FileItemQsp(
new FileItem(bundleSolutionInfo->savedResidualsFilename())),
"Measure Residuals", bundleSolutionInfo->savedResidualsFilename(),
- QIcon(FileName("$base/icons/office-chart-pie.png")
+ QIcon(FileName("$ISISROOT/appdata/images/icons/office-chart-pie.png")
.expanded()));
pItem->child(2)->appendRow(residualsItem);
ProjectItem *imagesItem = new ProjectItem(FileItemQsp(
new FileItem(bundleSolutionInfo->savedImagesFilename())),
"Image", bundleSolutionInfo->savedImagesFilename(),
- QIcon(FileName("$base/icons/office-chart-pie.png")
+ QIcon(FileName("$ISISROOT/appdata/images/icons/office-chart-pie.png")
.expanded()));
pItem->child(2)->appendRow(imagesItem);
ProjectItem *pointsItem = new ProjectItem(FileItemQsp(
new FileItem(bundleSolutionInfo->savedPointsFilename())),
"Control Points", bundleSolutionInfo->savedPointsFilename(),
- QIcon(FileName("$base/icons/office-chart-pie.png")
+ QIcon(FileName("$ISISROOT/appdata/images/icons/office-chart-pie.png")
.expanded()));
pItem->child(2)->appendRow(pointsItem);
}
diff --git a/isis/src/qisis/objs/QnetTools/QnetTool.cpp b/isis/src/qisis/objs/QnetTools/QnetTool.cpp
index f665e05dd1..4f0e9b6cd2 100644
--- a/isis/src/qisis/objs/QnetTools/QnetTool.cpp
+++ b/isis/src/qisis/objs/QnetTools/QnetTool.cpp
@@ -604,7 +604,7 @@ namespace Isis {
SLOT(saveTemplateFileAs()));
m_whatsThis = new QAction(QIcon(FileName(
- "$base/icons/contexthelp.png").expanded()),"&Whats's This", m_qnetTool);
+ "$ISISROOT/appdata/images/icons/contexthelp.png").expanded()),"&Whats's This", m_qnetTool);
m_whatsThis->setShortcut(Qt::SHIFT | Qt::Key_F1);
m_whatsThis->setToolTip("Activate What's This and click on items on "
"user interface to see more information.");
diff --git a/isis/src/qisis/objs/ScatterPlotTool/ScatterPlotWindow.cpp b/isis/src/qisis/objs/ScatterPlotTool/ScatterPlotWindow.cpp
index f11cd2442e..dfacab82a1 100644
--- a/isis/src/qisis/objs/ScatterPlotTool/ScatterPlotWindow.cpp
+++ b/isis/src/qisis/objs/ScatterPlotTool/ScatterPlotWindow.cpp
@@ -119,21 +119,21 @@ namespace Isis {
m_colorize = new QAction(this);
m_colorize->setText("Colorize");
- m_colorize->setIcon(QPixmap(FileName("$base/icons/rgb.png").expanded()));
+ m_colorize->setIcon(QPixmap(FileName("$ISISROOT/appdata/images/icons/rgb.png").expanded()));
connect(m_colorize, SIGNAL(triggered()),
this, SLOT(colorPlot()));
m_contour = new QAction(this);
m_contour->setText("Hide Contour Lines");
m_contour->setIcon(
- QPixmap(FileName("$base/icons/scatterplotcontour.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/scatterplotcontour.png").expanded()));
connect(m_contour, SIGNAL(triggered()),
this, SLOT(showHideContour()));
QAction *configureAlarmingAct = new QAction(this);
configureAlarmingAct->setText("Change Alarming");
configureAlarmingAct->setIcon(
- QPixmap(FileName("$base/icons/scatterplotalarming.png").expanded()));
+ QPixmap(FileName("$ISISROOT/appdata/images/icons/scatterplotalarming.png").expanded()));
connect(configureAlarmingAct, SIGNAL(triggered()),
this, SLOT(configureAlarming()));
@@ -550,7 +550,7 @@ namespace Isis {
*/
void ScatterPlotWindow::colorPlot() {
if (m_colorize->text().compare("Colorize") == 0) {
- m_colorize->setIcon(QPixmap(FileName("$base/icons/gray.png").expanded()));
+ m_colorize->setIcon(QPixmap(FileName("$ISISROOT/appdata/images/icons/gray.png").expanded()));
m_colorize->setText("Gray");
QwtLinearColorMap *colorMap = new QwtLinearColorMap(Qt::darkCyan, Qt::red);
colorMap->addColorStop(DBL_EPSILON, Qt::cyan);
@@ -560,7 +560,7 @@ namespace Isis {
plot()->setCanvasBackground(Qt::darkCyan);
}
else {
- m_colorize->setIcon(QPixmap(FileName("$base/icons/rgb.png").expanded()));
+ m_colorize->setIcon(QPixmap(FileName("$ISISROOT/appdata/images/icons/rgb.png").expanded()));
m_colorize->setText("Colorize");
QwtLinearColorMap *colorMap = new QwtLinearColorMap(Qt::black, Qt::white);
colorMap->addColorStop(DBL_EPSILON, Qt::darkGray);
diff --git a/isis/src/qisis/objs/SensorInfoWidget/SensorInfoWidget.cpp b/isis/src/qisis/objs/SensorInfoWidget/SensorInfoWidget.cpp
index 44bc201bb1..d97c582073 100644
--- a/isis/src/qisis/objs/SensorInfoWidget/SensorInfoWidget.cpp
+++ b/isis/src/qisis/objs/SensorInfoWidget/SensorInfoWidget.cpp
@@ -38,7 +38,7 @@ namespace Isis {
image.load(":cassini-iss-nac");
}
else if (displayName.contains("Metric")) {
- image.load(FileName("$base/images/nasa_apollo_metric_camera.png")
+ image.load(FileName("$ISISROOT/images/icons/nasa_apollo_metric_camera.png")
.expanded());
}
else if (displayName.contains("HiRISE")) {
diff --git a/isis/src/qisis/objs/TargetInfoWidget/TargetInfoWidget.cpp b/isis/src/qisis/objs/TargetInfoWidget/TargetInfoWidget.cpp
index 299df12d69..9b30625b4e 100644
--- a/isis/src/qisis/objs/TargetInfoWidget/TargetInfoWidget.cpp
+++ b/isis/src/qisis/objs/TargetInfoWidget/TargetInfoWidget.cpp
@@ -30,25 +30,25 @@ namespace Isis {
// Ken TODO - set up map between target display names and icon/image names
QPixmap image;
if (name.compare("MOON") == 0) {
- image.load(FileName("$base/images/nasa_moon_large.png").expanded());
- setWindowIcon(QIcon(FileName("$base/icons/weather-clear-night.png")
+ image.load(FileName("$ISISROOT/appdata/images/targets/nasa_moon_large.png").expanded());
+ setWindowIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/weather-clear-night.png")
.expanded()));
}
else if (name.compare("Enceladus") == 0) {
- image.load(FileName("$base/images/nasa_enceladus_saturn.png").expanded());
- setWindowIcon(QIcon(FileName("$base/icons/nasa_enceladus.png").expanded()));
+ image.load(FileName("$ISISROOT/appdata/images/targets/nasa_enceladus_saturn.png").expanded());
+ setWindowIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_enceladus.png").expanded()));
}
else if (name.compare("Europa") == 0) {
- image.load(FileName("$base/images/nasa_europa_large.png").expanded());
- setWindowIcon(QIcon(FileName("$base/icons/nasa_europa.png").expanded()));
+ image.load(FileName("$ISISROOT/appdata/images/targets/nasa_europa_large.png").expanded());
+ setWindowIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_europa.png").expanded()));
}
else if (name.compare("Mars") == 0) {
- image.load(FileName("$base/images/nasa_mars_large.png").expanded());
- setWindowIcon(QIcon(FileName("$base/icons/nasa_mars.png").expanded()));
+ image.load(FileName("$ISISROOT/appdata/images/targets/nasa_mars_large.png").expanded());
+ setWindowIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_mars.png").expanded()));
}
else if (name.compare("Titan") == 0) {
- image.load(FileName("$base/images/nasa_titan_large.png").expanded());
- setWindowIcon(QIcon(FileName("$base/icons/nasa_titan.png").expanded()));
+ image.load(FileName("$ISISROOT/appdata/images/targets/nasa_titan_large.png").expanded());
+ setWindowIcon(QIcon(FileName("$ISISROOT/appdata/images/icons/nasa_titan.png").expanded()));
}
m_ui->bodySystemlabel->setText(tr("System: %1").arg(m_target->naifPlanetSystemName()));
diff --git a/isis/src/qisis/objs/Tool/Tool.cpp b/isis/src/qisis/objs/Tool/Tool.cpp
index 3d7ecd4e74..2d9d6ee4b5 100644
--- a/isis/src/qisis/objs/Tool/Tool.cpp
+++ b/isis/src/qisis/objs/Tool/Tool.cpp
@@ -32,7 +32,7 @@ namespace Isis {
m_toolBarWidget = NULL;
m_toolList = NULL;
- QString tempFileName = FileName("$base/icons").expanded();
+ QString tempFileName = FileName("$ISISROOT/appdata/images/icons").expanded();
m_toolIconDir = tempFileName;
}
diff --git a/isis/src/qisis/objs/WarningWidget/WarningWidget.cpp b/isis/src/qisis/objs/WarningWidget/WarningWidget.cpp
index 0959b9012f..64195986f3 100644
--- a/isis/src/qisis/objs/WarningWidget/WarningWidget.cpp
+++ b/isis/src/qisis/objs/WarningWidget/WarningWidget.cpp
@@ -20,7 +20,7 @@ namespace Isis {
WarningWidget::WarningWidget(QStatusBar *pParent): QObject(pParent) {
mSBar = pParent;
- QString sToolIconDir = FileName("$base/icons").expanded();
+ QString sToolIconDir = FileName("$ISISROOT/appdata/images/icons").expanded();
QString qsIconFile(sToolIconDir);
// default Action - No warning