ISIS Application Documentation
Modifies cube labels
| 
             Overview
            | 
              Parameters
               | 
              Example 1 | 
              Example 2 | 
              Example 3 | 
              Example 4 | 
              Example 5 | 
              Example 6 | 
 
          Description
        
      This program is designed to make modifications to various objects and groups found in ISIS
      cube labels, but a .pvl file can also be used. When a PVL is used, an interim processing file
      will be created, which you can later remove. Using either file type, you can add/delete or
      modify keywords in a group (e.g.: 2, 3, 5), or add or remove entire groups (e.g.: 1, 6) within
      the labels. For simplicity's sake, use a template (e.g.: 4) to modify labels, as this makes it
      unnecessary to run the program multiple times when adding new groups. Examples can be found at
      the end of this document.
   
 
          Categories
        
 
            Related Applications to Previous Versions of ISIS
          
          This program replaces the following
          
            application
            
          existing in previous versions of ISIS:
          
 
Applications
 
              History
          
| Elizabeth Ribelin | 2005-01-13 | 
      Original version
     | 
 
| Elizabeth Miller | 2005-10-27 | 
        Fixed appTest
     | 
 
| Elizabeth Miller | 2006-05-08 | 
      Fixed xml issues
     | 
 
| Brendan George | 2006-09-26 | 
        Documentation fixes
     | 
 
| Christopher Austin | 2008-04-18 | 
       Added Comment allocation and fixed documentation.
     | 
 
| Christopher Austin | 2011-03-08 | 
       Added the SETKEY parameter to prevent non-explicit duplicate keywords,
       greatly cleaned and reduced code, and added support for non-cube Pvls.
     | 
 
| Jeannie Backer | 2012-12-20 | 
       Modified to update history in the labels and show appropriate files 
       in the dialog box for choosing FROM parameter filenames.
       Fixes #655. Fixes #1084
     | 
 
| Andrew Stebenne | 2015-04-03 | 
        Modified the description to indicate that editlab always adds a blank cube to a pvl if one
        isn't present.
     | 
 
| Andrew Stebenne | 2015-04-24 | 
        Reworked documentation for clarity.
     | 
 
 
 | 
 
 
                Parameter Groups
            
Files
| 
                    Name
                     | 
                    Description
                     | 
 
| FROM | 
          Pvl file containing the label to be modified
         | 
 
 
Modification Options
| 
                    Name
                     | 
                    Description
                     | 
 
| OPTIONS | Options for modifying label | 
 
 
Input Values
| 
                    Name
                     | 
                    Description
                     | 
 
| GRPNAME | Group to modify | 
 
| KEYWORD | Keyword to modify | 
 
| VALUE | Value of Keyword being modified | 
 
| UNITS | Units of Keyword being modified | 
 
| TEMPFILE | Template file being added to label | 
 
| COMMENT | Comment to be added to the change | 
 
 
 | 
 
Files:
                        FROM
                         Description
                       
          The pvl or cube file containing the label to be modified.
        
| 
                             Type
                            | filename | 
| 
                               File Mode
                              | input | 
| 
                               Filter
                              | 
          *.cub *.pvl
         | 
 
 
Modification Options:
                        OPTIONS
                         Description
                       
               A list of the different types of modifications allowed on the label.
           
| 
                             Type
                            | string | 
| 
                               Default
                              | SETKEY | 
| 
                               Option List:
                              | 
| 
                                   Option | 
                                   Brief | 
                                   Description | 
 
| ADDG | Add Group | 
                       Adds a group to the file label.
                   Exclusions
- KEYWORD
 
- VALUE
 
- UNITS
 
- TEMPFILE
 
 
Inclusions
 | 
 
| DELG | Delete Group | 
                        Deletes specified group from the file label.
                    Exclusions
- KEYWORD
 
- VALUE
 
- UNITS
 
- TEMPFILE
 
- COMMENT
 
 
Inclusions
 | 
 
| ADDKEY | Add Keyword | 
                       Adds a keyword to the specified group in the file label.
                   Exclusions
Inclusions
 | 
 
| DELKEY | Delete Keyword | 
                        Deletes specified keyword from the specified group on the file label.
                    Exclusions
- VALUE
 
- UNITS
 
- TEMPFILE
 
- COMMENT
 
 
Inclusions
 | 
 
| MODKEY | Modify Keyword | 
                       Modifies existing keyword in specified group on the file label.
                   Exclusions
Inclusions
 | 
 
| SETKEY | Set Keyword: deletes duplicates | 
                       Adds or modifies an existing keyword to the specified
                       group in the file label. If there are duplicates of the
                       provided keyword, all duplicates are removed from the
                       group, leaving only the new, provided value.
                   Exclusions
Inclusions
 | 
 
| ADDTEMP | Add Template File | 
                       Adds a template file to the file label.
                   Exclusions
- GRPNAME
 
- KEYWORD
 
- VALUE
 
- UNITS
 
- COMMENT
 
 
Inclusions
 | 
 
 
 | 
 
 
 
                Example 1
Adding a group  
                Description
                
        This example uses the editlab application to add a new group to a previously blank label.  The new
        group created will be empty.
         
                  Command Line
                  
editlab  from=new.cub option=addg grpname=NewGroup
            
                Run the editlab application to add a group to a label
             
 
                        Data Files
                 
                  Links open in a new window.
                  
 | 
                        
        Starting Label
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
End_Object
End
        
                 | 
 
 | 
        Label after the command line is ran
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
  Group = NewGroup
  End_Group
End_Object
End
      
                | 
 
 
 
 | 
 
 
                Example 2
Adding a keyword 
                Description
                
            This example uses the editlab application to add a keyword to the empty group created in the last example.
         
                  Command Line
                  
editlab  from=new.cub option=addkey grpname=NewGroup keyword=Keyword value=new
            
                Run the editlab application to add a keyword to an existing group
             
 
                   Data File
                 
                  Links open in a new window.
                  
 | 
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
  Group = NewGroup
    Keyword = new
  End_Group
End_Object
End
        
                 | 
 
 
 
 | 
 
 
                Example 3
Modifying a keyword 
                Description
                
            This example uses the editlab application to modify the keyword created in the previous example to change its value.
         
                  Command Line
                  
editlab  from=new.cub option=modkey grpname=NewGroup keyword=Keyword value=old
            
                Run the editlab application to modify a preexisting keyword
             
 
                   Data File
                 
                  Links open in a new window.
                  
 | 
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
  Group = NewGroup
    Keyword = old
  End_Group
End_Object
End
        
                 | 
 
 
 
 | 
 
 
                Example 4
Adding a template file 
                Description
                
            This example uses the editlab application to add more than one group (containing keywords) at a time
            by using a template file containing only groups and keywords to the label.
         
                  Command Line
                  
editlab  from=new.cub option=addtemp tempfile=template1.txt
            
                Run the editlab application to add a template file to the label
             
 
                   Data File
                 
                  Links open in a new window.
                  
 | 
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
  Group = NewGroup
    Keyword = old
  End_Group
  Group = test
    Key = insertme
  End_Group
  Group = TwoKeys
    Key1 = (1, 2, 3)
    Key2 = "a b c"
  End_Group
End_Object
End
        
                 | 
 
 
 
 | 
 
 
                Example 5
Deleting a keyword 
                Description
                
            This example uses the editlab application to erase a keyword added by the template file in example 4.
         
                  Command Line
                  
editlab  from=new.cub option=delkey grpname=TwoKeys keyword=Key1
            
                Run the editlab application to delete a keyword
           
 
                   Data File
                 
                  Links open in a new window.
                  
 | 
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
  Group = NewGroup
    Keyword = old
  End_Group
  Group = test
    Key = insertme
  End_Group
  Group = TwoKeys
    Key2 = "a b c"
  End_Group
End_Object
End
        
                 | 
 
 
 
 | 
 
 
                Example 6
Deleting a group 
                Description
                
            This example uses the editlab application to delete a group from a label.  Deleting a group will also
            delete any keywords inside of the group.
         
                  Command Line
                  
editlab  from=new.cub option=delg grpname=TwoKeys
            
                Run the editlab application to delete a group
             
 
                        Data Files
                 
                  Links open in a new window.
                  
 | 
                    template1.txt
        
Group = test
  Key = insertme
End_Group
Group = TwoKeys
  Key1 = ( 1, 2, 3)
  Key2 = "a b c"
End_Group
        
                 | 
 
 | 
            Label
        
Object = Label
  Bytes = 65536
End_Object
Object = IsisCube
  Object = Core
    /* Location of the core
    StartByte   = 65537
    Format      = Tile
    TileSamples = 128
    TileLines   = 128
    Group = Dimensions
      Samples = 1024
      Lines   = 1024
      Bands   = 7
    End_Group
    Group = Pixels
      Type       = Real
      ByteOrder  = LSB
      Base       = 0.0
      Multiplier = 1.0
    End_Group
  End_Object
  Group = NewGroup
    Keyword = old
  End_Group
  Group = test
    Key = insertme
  End_Group
End_Object
End
        
                 | 
 
 
 
 |