scripts/cif_parse: tests/cases/cif_parse_010.inp: NOTE, 0 error(s) encountered while processing the file.
$datablock1 = {
  'cifversion' => {
    'major' => 2,
    'minor' => 0
  },
  'inloop' => {
    '_dictionary_audit.date' => 1,
    '_dictionary_audit.revision' => 1,
    '_dictionary_audit.version' => 1,
    '_dictionary_valid.application' => 0,
    '_dictionary_valid.attributes' => 0
  },
  'loops' => [
    [
      '_dictionary_valid.application',
      '_dictionary_valid.attributes'
    ],
    [
      '_dictionary_audit.version',
      '_dictionary_audit.date',
      '_dictionary_audit.revision'
    ]
  ],
  'name' => 'DDL_DIC',
  'precisions' => {},
  'save_blocks' => [
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'ATTRIBUTES',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Head'
        ],
        '_definition.id' => [
          'ATTRIBUTES'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-07-27'
        ],
        '_description.text' => [
          '
     This category is parent of all other categories in the DDLm
     dictionary.'
        ],
        '_name.object_id' => [
          'ATTRIBUTES'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'ALIAS',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_alias.definition_id'
        ],
        '_category_key.name' => [
          '_alias.definition_id'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'ALIAS'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     The attributes used to specify the aliased names of definitions.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'ALIAS'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'alias.definition_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_alias.definition_id'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     Identifier tag of an aliased definition.'
        ],
        '_name.category_id' => [
          'alias'
        ],
        '_name.object_id' => [
          'definition_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'alias.deprecation_date',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_alias.deprecation_date'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Date that the aliased tag was deprecated as a definition tag.'
        ],
        '_name.category_id' => [
          'alias'
        ],
        '_name.object_id' => [
          'deprecation_date'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Date'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'alias.dictionary_uri',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_alias.dictionary_uri'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     Dictionary URI in which the aliased definition belongs.'
        ],
        '_name.category_id' => [
          'alias'
        ],
        '_name.object_id' => [
          'dictionary_uri'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Uri'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'CATEGORY',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'CATEGORY'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     The attributes used to specify the properties of a
     "category" of data items.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'CATEGORY'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'category.key_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_category.key_id'
        ],
        '_definition.update' => [
          '2011-07-27'
        ],
        '_description.text' => [
          '
     Tag of a single data item in a Loop category which is the generic key
     to access other items in the category. The value of this
     item must be unique in order to provide unambiguous access to
     a packet (row) in the table of values.  This may be assumed to be a function
     of the datanames listed in category_key.name.'
        ],
        '_name.category_id' => [
          'category'
        ],
        '_name.object_id' => [
          'key_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'CATEGORY_KEY',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_category_key.name'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'CATEGORY_KEY'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2014-09-18'
        ],
        '_description.text' => [
          '
     The attributes used to specify (possibly multiple) 
     keys for a given category.'
        ],
        '_name.category_id' => [
          'CATEGORY'
        ],
        '_name.object_id' => [
          'CATEGORY_KEY'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'category_key.name',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_category_key.name'
        ],
        '_definition.update' => [
          '2014-09-18'
        ],
        '_description.text' => [
          '
     A minimal list of tag(s) that together constitute a compound key
     to access other items in a Loop category. In other words, the combined values of the
     datanames listed in this loop must be unique, so that unambiguous access 
     to a packet (row) in the table of values is possible.  The dataname associated with
     category.key_id is only included in this loop if no other set of datanames can form
     a compound key.'
        ],
        '_name.category_id' => [
          'category_key'
        ],
        '_name.object_id' => [
          'name'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'DEFINITION',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'DEFINITION'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-20'
        ],
        '_description.text' => [
          '
     The attributes for classifying dictionary definitions.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'DEFINITION'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'definition.class',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_definition.class'
        ],
        '_definition.update' => [
          '2013-03-08'
        ],
        '_description.text' => [
          '
     The nature and the function of a definition or definitions.'
        ],
        '_enumeration.default' => [
          'Datum'
        ],
        '_enumeration_set.detail' => [
          '                 Item used as an attribute in the definition
                  of other data items in DDLm dictionaries. 
                  These items never appear in data instance files.',
          '                 Category of items that are transient function
                  definitions used only in dREL methods scripts.
                  These items never appear in data instance files.',
          '                 Item defined in a domain-specific dictionary.  
                  These items appear only in data instance files.',
          '                 Category of items that is the parent of
                  all other categories in the dictionary.',
          '                 Category of items that in a data file must
                  reside in a loop-list with a key item defined.',
          '                 Category of items that form a set (but not a
                  loopable list). These items may be referenced 
                  as a class of items in a dREL methods expression.',
          '                 A category containing one item that identifies the     
                  a category of items that is repeated in a sequence
                  of save frames. The item, which is specifies as a
                  as a Ref-table value (see type.container), is looped. 
                  This construction is for loop categories that contain 
                  child categories.
                  If in the instance file, the child items have only
                  one set of values, the Ref-loop item need not be used
                  and child items need not be placed in a save frame.'
        ],
        '_enumeration_set.state' => [
          'Attribute',
          'Functions',
          'Datum',
          'Head',
          'Loop',
          'Set',
          'Ref-loop'
        ],
        '_name.category_id' => [
          'definition'
        ],
        '_name.object_id' => [
          'class'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'definition.id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_definition.id'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     Identifier name of the Item or Category definition contained 
     within a save frame.'
        ],
        '_name.category_id' => [
          'definition'
        ],
        '_name.object_id' => [
          'id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'definition.scope',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_definition.scope'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The extent to which a definition affects other definitions.'
        ],
        '_enumeration.default' => [
          'Item'
        ],
        '_enumeration_set.detail' => [
          'applies to all defined items in the dictionary',
          'applies to all defined items in the category',
          'applies to a single item definition'
        ],
        '_enumeration_set.state' => [
          'Dictionary',
          'Category',
          'Item'
        ],
        '_name.category_id' => [
          'definition'
        ],
        '_name.object_id' => [
          'scope'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'definition.update',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_definition.update'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The date that a definition was last changed.'
        ],
        '_name.category_id' => [
          'definition'
        ],
        '_name.object_id' => [
          'update'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Date'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'definition.xref_code',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_definition.xref_code'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     Code identifying the equivalent definition in the dictionary
     referenced by the DICTIONARY_XREF attributes.'
        ],
        '_name.category_id' => [
          'definition'
        ],
        '_name.object_id' => [
          'xref_code'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'DESCRIPTION',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'DESCRIPTION'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-20'
        ],
        '_description.text' => [
          '
     The attributes of descriptive (non-machine parseable) parts of
     definitions.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'DESCRIPTION'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'description.common',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_description.common'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.common' => [
          'SQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_description.common'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.common' => [
          'common name'
        ],
        '_description.text' => [
          '
     Commonly-used identifying name for the item.'
        ],
        '_name.category_id' => [
          'description'
        ],
        '_name.object_id' => [
          'common'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Describe'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'description.key_words',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_description.common'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.common' => [
          'SQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_description.key_words'
        ],
        '_definition.update' => [
          '2013-03-06'
        ],
        '_description.common' => [
          'key words'
        ],
        '_description.text' => [
          '
     List of key-words categorising the item.'
        ],
        '_name.category_id' => [
          'description'
        ],
        '_name.object_id' => [
          'key_words'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Encode'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'description.text',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_description.common'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.common' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_description.text'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.common' => [
          'description'
        ],
        '_description.text' => [
          '
     The text description of the defined item.'
        ],
        '_name.category_id' => [
          'description'
        ],
        '_name.object_id' => [
          'text'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Describe'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'DESCRIPTION_EXAMPLE',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_description_example.case'
        ],
        '_category_key.name' => [
          '_description_example.case'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'DESCRIPTION_EXAMPLE'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     The attributes of descriptive (non-machine parseable) examples of
     values of the defined items.'
        ],
        '_name.category_id' => [
          'DESCRIPTION'
        ],
        '_name.object_id' => [
          'DESCRIPTION_EXAMPLE'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'description_example.case',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_description_example.case'
        ],
        '_definition.update' => [
          '2013-03-08'
        ],
        '_description.text' => [
          '
     An example case of the defined item.'
        ],
        '_name.category_id' => [
          'description_example'
        ],
        '_name.object_id' => [
          'case'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Implied'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'description_example.detail',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_description_example.detail'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     A description of an example case for the defined item.'
        ],
        '_name.category_id' => [
          'description_example'
        ],
        '_name.object_id' => [
          'detail'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Describe'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'DICTIONARY',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'DICTIONARY'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-20'
        ],
        '_description.text' => [
          '
     Attributes for identifying and registering the dictionary. The items
     in this category are NOT used as attributes of INDIVIDUAL data items.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'DICTIONARY'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'dictionary.class',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.class'
        ],
        '_definition.update' => [
          '2012-05-07'
        ],
        '_description.text' => [
          '
     The nature, or field of interest, of data items defined in the dictionary.'
        ],
        '_enumeration.default' => [
          'Instance'
        ],
        '_enumeration_set.detail' => [
          'DDLm reference attribute definitions',
          'domain-specific data instance definitions',
          'domain-specific attribute/enumeration templates',
          'domain-specific method function scripts'
        ],
        '_enumeration_set.state' => [
          'Reference',
          'Instance',
          'Template',
          'Function'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'class'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary.date',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.date'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The date that the last dictionary revision took place.'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'date'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Date'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary.ddl_conformance',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.ddl_conformance'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The version number of the DDL dictionary that this dictionary
     conforms to.'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'ddl_conformance'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Version'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary.namespace',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.namespace'
        ],
        '_definition.update' => [
          '2006-12-05'
        ],
        '_description.text' => [
          '
     The namespace code that may be prefixed (with a trailing colon
     ":") to an item tag defined in the defining dictionary when used 
     in particular applications. Because tags must be unique, namespace
     codes are unlikely to be used in data files.'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'namespace'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary.title',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.title'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The common title of the dictionary. Will usually match the name
     attached to the data_ statement of the dictionary file.'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'title'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary.uri',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.uri'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The universal resource indicator of this dictionary.'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'uri'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Uri'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary.version',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary.version'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     A unique version identifier for the dictionary.'
        ],
        '_name.category_id' => [
          'dictionary'
        ],
        '_name.object_id' => [
          'version'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Version'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'DICTIONARY_AUDIT',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_dictionary_audit.version'
        ],
        '_category_key.name' => [
          '_dictionary_audit.version'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'DICTIONARY_AUDIT'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Attributes for identifying and registering the dictionary. The items
     in this category are NOT used as attributes of individual data items.'
        ],
        '_name.category_id' => [
          'DICTIONARY'
        ],
        '_name.object_id' => [
          'DICTIONARY_AUDIT'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_audit.date',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_audit.date'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     The date of each dictionary revision.'
        ],
        '_name.category_id' => [
          'dictionary_audit'
        ],
        '_name.object_id' => [
          'date'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Date'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_audit.revision',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_audit.revision'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     A description of the revision applied for the _dictionary_audit.version.'
        ],
        '_name.category_id' => [
          'dictionary_audit'
        ],
        '_name.object_id' => [
          'revision'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Describe'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_audit.version',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_audit.version'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     A unique version identifier for each revision of the dictionary.'
        ],
        '_name.category_id' => [
          'dictionary_audit'
        ],
        '_name.object_id' => [
          'version'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Version'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'DICTIONARY_VALID',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_dictionary_valid.application'
        ],
        '_category_key.name' => [
          '_dictionary_valid.application'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'DICTIONARY_VALID'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Data items which are used to specify the contents of definitions in
     the dictionary in terms of the _definition.scope     and the required
     and prohibited attributes.'
        ],
        '_name.category_id' => [
          'DICTIONARY'
        ],
        '_name.object_id' => [
          'DICTIONARY_VALID'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_method.expression' => 0,
        '_method.purpose' => 0
      },
      'loops' => [
        [
          '_method.purpose',
          '_method.expression'
        ]
      ],
      'name' => 'dictionary_valid.application',
      'precisions' => {
        '_type.dimension' => [
          [
            undef
          ]
        ]
      },
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_type.dimension',
        '_method.purpose',
        '_method.expression'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_method.expression' => [
          'TEXTFIELD'
        ],
        '_method.purpose' => [
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.dimension' => [
          [
            'INT'
          ]
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_valid.application'
        ],
        '_definition.update' => [
          '2013-02-12'
        ],
        '_description.text' => [
          '
     Provides the information identifying the definition scope (
     from the _definition.scope enumeration list) and the validity 
     options (from the _dictionary_valid.option enumeration list), 
     as a two element list. This list signals the validity of applying
     the attributes given in _dictionary_valid.attributes.'
        ],
        '_method.expression' => [
          '
     _dictionary_valid.application 
                      = [_dictionary_valid.scope,_dictionary_valid.option]'
        ],
        '_method.purpose' => [
          'Definition'
        ],
        '_name.category_id' => [
          'dictionary_valid'
        ],
        '_name.object_id' => [
          'application'
        ],
        '_type.container' => [
          'List'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.dimension' => [
          [
            '2'
          ]
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_valid.attributes',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_type.dimension'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.dimension' => [
          []
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_valid.attributes'
        ],
        '_definition.update' => [
          '2013-03-06'
        ],
        '_description.text' => [
          '
     A list of the attribute names and categories that are assessed
     for application in the item, category and dictionary definitions.'
        ],
        '_name.category_id' => [
          'dictionary_valid'
        ],
        '_name.object_id' => [
          'attributes'
        ],
        '_type.container' => [
          'List'
        ],
        '_type.contents' => [
          'Name'
        ],
        '_type.dimension' => [
          []
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'dictionary_valid.scope',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_valid.scope'
        ],
        '_definition.update' => [
          '2015-01-28'
        ],
        '_description.text' => [
          '
     The scope to which the specified restriction on usable
     attributes applies.  '
        ],
        '_enumeration_set.detail' => [
          'restriction applies to dictionary definition data frame',
          'restriction applies to a category definition save frame',
          'restriction applies to an item definition save frame'
        ],
        '_enumeration_set.state' => [
          'Dictionary',
          'Category',
          'Item'
        ],
        '_name.category_id' => [
          'dictionary_valid'
        ],
        '_name.object_id' => [
          'scope'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'dictionary_valid.option',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_valid.option'
        ],
        '_definition.update' => [
          '2013-03-06'
        ],
        '_description.text' => [
          '
     Option codes for applicability of attributes in definitions.'
        ],
        '_enumeration.default' => [
          'Recommended'
        ],
        '_enumeration_set.detail' => [
          'attribute must be present in definition frame',
          'attribute is usually in definition frame',
          'attribute must not be used in definition frame'
        ],
        '_enumeration_set.state' => [
          'Mandatory',
          'Recommended',
          'Prohibited'
        ],
        '_name.category_id' => [
          'dictionary_valid'
        ],
        '_name.object_id' => [
          'option'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'DICTIONARY_XREF',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_dictionary_xref.code'
        ],
        '_category_key.name' => [
          '_dictionary_xref.code'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'DICTIONARY_XREF'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Data items which are used to cross reference other dictionaries that
     have defined the same data items. Data items in this category are NOT 
    o used as attributes of individual data items.'
        ],
        '_name.category_id' => [
          'DICTIONARY'
        ],
        '_name.object_id' => [
          'DICTIONARY_XREF'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_xref.code',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_xref.code'
        ],
        '_definition.update' => [
          '2006-11-27'
        ],
        '_description.text' => [
          '
     A code identifying the cross-referenced dictionary.'
        ],
        '_name.category_id' => [
          'dictionary_xref'
        ],
        '_name.object_id' => [
          'code'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_xref.date',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_xref.date'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     Date of the cross-referenced dictionary.'
        ],
        '_name.category_id' => [
          'dictionary_xref'
        ],
        '_name.object_id' => [
          'date'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Date'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_xref.format',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_xref.format'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     Format of the cross referenced dictionary.'
        ],
        '_name.category_id' => [
          'dictionary_xref'
        ],
        '_name.object_id' => [
          'format'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_xref.name',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_xref.name'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     The name and description of the cross-referenced dictionary.'
        ],
        '_name.category_id' => [
          'dictionary_xref'
        ],
        '_name.object_id' => [
          'name'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'dictionary_xref.uri',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_dictionary_xref.uri'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     The source URI of the cross referenced dictionary data.'
        ],
        '_name.category_id' => [
          'dictionary_xref'
        ],
        '_name.object_id' => [
          'uri'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Uri'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'ENUMERATION',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'ENUMERATION'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-20'
        ],
        '_description.text' => [
          '
     The attributes for restricting the values of defined data items.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'ENUMERATION'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration.def_index_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration.def_index_id'
        ],
        '_definition.update' => [
          '2012-05-07'
        ],
        '_description.text' => [
          '
     Specifies the data name with a value used as an index to the 
     DEFAULT enumeration list (in category enumeration_default)
     in order to select the default enumeration value for the 
     defined item. The value of the identified data item must match 
     one of the _enumeration_default.index values.'
        ],
        '_name.category_id' => [
          'enumeration'
        ],
        '_name.object_id' => [
          'def_index_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration.default',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration.default'
        ],
        '_definition.update' => [
          '2013-03-08'
        ],
        '_description.text' => [
          '
     The default value for the defined item if it is not specified explicitly.'
        ],
        '_name.category_id' => [
          'enumeration'
        ],
        '_name.object_id' => [
          'default'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Implied'
        ],
        '_type.purpose' => [
          'Encode'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'enumeration.mandatory',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration.mandatory'
        ],
        '_definition.update' => [
          '2012-05-07'
        ],
        '_description.text' => [
          '   
     Yes or No flag on whether the enumerate states specified for an
     item in the current definition (in which item appears) MUST be
     used on instantiation.'
        ],
        '_enumeration.default' => [
          'Yes'
        ],
        '_enumeration_set.detail' => [
          'Use of state is mandatory',
          'Use of state is unnecessary'
        ],
        '_enumeration_set.state' => [
          'Yes',
          'No'
        ],
        '_name.category_id' => [
          'enumeration'
        ],
        '_name.object_id' => [
          'mandatory'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration.range',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration.range'
        ],
        '_definition.update' => [
          '2013-04-17'
        ],
        '_description.text' => [
          '
     The inclusive range of values "from:to" allowed for the defined item.'
        ],
        '_name.category_id' => [
          'enumeration'
        ],
        '_name.object_id' => [
          'range'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Range'
        ],
        '_type.purpose' => [
          'Encode'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'ENUMERATION_DEFAULT',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_enumeration_default.index'
        ],
        '_category_key.name' => [
          '_enumeration_default.index'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'ENUMERATION_DEFAULT'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Loop of pre-determined default enumeration values indexed to a 
     data item by the item _enumeration.def_index_id.'
        ],
        '_name.category_id' => [
          'ENUMERATION'
        ],
        '_name.object_id' => [
          'ENUMERATION_DEFAULT'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration_default.index',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration_default.index'
        ],
        '_definition.update' => [
          '2013-04-17'
        ],
        '_description.text' => [
          '
     Index key in the list default values referenced to by the value
     of _enumeration.def_index_id .'
        ],
        '_name.category_id' => [
          'enumeration_default'
        ],
        '_name.object_id' => [
          'index'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration_default.value',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration_default.value'
        ],
        '_definition.update' => [
          '2013-04-17'
        ],
        '_description.text' => [
          '
     Default enumeration value in the list referenced by the value of
     _enumeration.def_index_id. The reference index key is given by
     the value of _enumeration_default.index value.'
        ],
        '_name.category_id' => [
          'enumeration_default'
        ],
        '_name.object_id' => [
          'value'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Implied'
        ],
        '_type.purpose' => [
          'Encode'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'ENUMERATION_SET',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_enumeration_set.state'
        ],
        '_category_key.name' => [
          '_enumeration_set.state'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'ENUMERATION_SET'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Attributes of data items which are used to define a
     set of unique pre-determined values.'
        ],
        '_name.category_id' => [
          'ENUMERATION'
        ],
        '_name.object_id' => [
          'ENUMERATION_SET'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration_set.detail',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration_set.detail'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     The meaning of the code (identified by _enumeration_set.state)
     in terms of the value of the quantity it describes.'
        ],
        '_name.category_id' => [
          'enumeration_set'
        ],
        '_name.object_id' => [
          'detail'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Describe'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration_set.state',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration_set.state'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     Permitted value state for the defined item.'
        ],
        '_name.category_id' => [
          'enumeration_set'
        ],
        '_name.object_id' => [
          'state'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration_set.xref_code',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration_set.xref_code'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     Identity of the equivalent item in the dictionary
     referenced by the DICTIONARY_XREF attributes.'
        ],
        '_name.category_id' => [
          'enumeration_set'
        ],
        '_name.object_id' => [
          'xref_code'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'enumeration_set.xref_dictionary',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_enumeration_set.xref_dictionary'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '
     Code identifying the dictionary in the DICTIONARY_XREF 
     list.'
        ],
        '_name.category_id' => [
          'enumeration_set'
        ],
        '_name.object_id' => [
          'xref_dictionary'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Audit'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'IMPORT',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'IMPORT'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-27'
        ],
        '_description.text' => [
          '   
     Used to import the values of specific attributes from other dictionary 
     definitions within and without the current dictionary.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'IMPORT'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_method.expression' => 0,
        '_method.purpose' => 0
      },
      'loops' => [
        [
          '_method.purpose',
          '_method.expression'
        ]
      ],
      'name' => 'import.get',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_type.contents_referenced_id',
        '_method.purpose',
        '_method.expression'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_method.expression' => [
          'TEXTFIELD'
        ],
        '_method.purpose' => [
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.contents_referenced_id' => [
          'SQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import.get'
        ],
        '_definition.update' => [
          '2015-01-06'
        ],
        '_description.text' => [
          '
     A list of tables of attributes defined individually in the category IMPORT_DETAILS,  
     used to import definitions from other dictionaries. '
        ],
        '_method.expression' => [
          '
     imp_order_list = []
     loop id as import_details {
         imp_order_list ++= id.order
     } 
     sort(imp_order_list)
     final_val = []
     for ord in imp_order_list {
         final_val ++= import_details[ord].single
     }
    _import.get = final_val'
        ],
        '_method.purpose' => [
          'Evaluation'
        ],
        '_name.category_id' => [
          'import'
        ],
        '_name.object_id' => [
          'get'
        ],
        '_type.container' => [
          'List'
        ],
        '_type.contents' => [
          'ByReference'
        ],
        '_type.contents_referenced_id' => [
          '_import_details.single'
        ],
        '_type.purpose' => [
          'Import'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'IMPORT_DETAILS',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_name.category_id',
        '_name.object_id',
        '_definition.class',
        '_category.key_id',
        '_category_key.name',
        '_description.text'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_import_details.order'
        ],
        '_category_key.name' => [
          '_import_details.order'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'IMPORT_DETAILS'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_description.text' => [
          '
    Items in IMPORT_DETAILS describe individual attributes of an import operation.'
        ],
        '_name.category_id' => [
          'IMPORT'
        ],
        '_name.object_id' => [
          'IMPORT_DETAILS'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'import_details.file_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.file_id'
        ],
        '_definition.update' => [
          '2015-05-06'
        ],
        '_description.text' => [
          '
     The file name/URI of the source dictionary'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'file_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Uri'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'import_details.frame_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.frame_id'
        ],
        '_definition.update' => [
          '2015-05-06'
        ],
        '_description.text' => [
          '
     The framecode of the definition frame to be imported.'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'frame_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'import_details.order',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.container',
        '_type.contents',
        '_type.source',
        '_type.purpose'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'SQSTRING'
        ],
        '_name.object_id' => [
          'SQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.order'
        ],
        '_definition.update' => [
          '2015-05-07'
        ],
        '_description.text' => [
          '
     	The order in which the import described by the referenced row should be      	
        executed.'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'order'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Integer'
        ],
        '_type.purpose' => [
          'Key'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'import_details.if_dupl',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.if_dupl'
        ],
        '_definition.update' => [
          '2015-05-06'
        ],
        '_description.text' => [
          '
     Code identifying the action taken if the requested definition block 
     already exists within the importing dictionary.'
        ],
        '_enumeration.default' => [
          'Exit'
        ],
        '_enumeration_set.detail' => [
          'ignore imported definitions if id conflict',
          'replace existing with imported definitions',
          'issue error exception and exit'
        ],
        '_enumeration_set.state' => [
          'Ignore',
          'Replace',
          'Exit'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'if_dupl'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'import_details.if_miss',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.if_miss'
        ],
        '_definition.update' => [
          '2015-05-06'
        ],
        '_description.text' => [
          '
     Code identifying the action taken if the requested definition block 
     is missing from the source dictionary.'
        ],
        '_enumeration.default' => [
          'Exit'
        ],
        '_enumeration_set.detail' => [
          'ignore import',
          'issue error exception and exit'
        ],
        '_enumeration_set.state' => [
          'Ignore',
          'Exit'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'if_miss'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'import_details.mode',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.mode'
        ],
        '_definition.update' => [
          '2015-05-06'
        ],
        '_description.text' => [
          '
     Code identifying how a definition save frame is to be imported.
     "Full" imports the entire definition frame including the leading 
            and trailing save statements.
     "Contents" imports only the lines within the save frame.'
        ],
        '_enumeration.default' => [
          'Contents'
        ],
        '_enumeration_set.detail' => [
          'import requested definition with frame',
          'import contents of requested defn frame'
        ],
        '_enumeration_set.state' => [
          'Full',
          'Contents'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'mode'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_method.expression' => 0,
        '_method.purpose' => 0
      },
      'loops' => [
        [
          '_method.purpose',
          '_method.expression'
        ]
      ],
      'name' => 'import_details.single',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.update',
        '_definition.class',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.container',
        '_type.contents',
        '_type.indices',
        '_type.indices_referenced_id',
        '_method.purpose',
        '_method.expression'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_method.expression' => [
          'TEXTFIELD'
        ],
        '_method.purpose' => [
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.indices' => [
          'UQSTRING'
        ],
        '_type.indices_referenced_id' => [
          'SQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.single'
        ],
        '_definition.update' => [
          '2015-04-24'
        ],
        '_description.text' => [
          ' 
     A Table mapping attributes defined individually in category IMPORT to
     their values; used to import definitions from other dictionaries.  '
        ],
        '_method.expression' => [
          '
	with id as import_details
	_import_details.single = {"file":id.file_id, 
 					"save":id.frame_id,
					"mode":id.mode,
					"dupl":id.if_dupl, 
					"miss":id.if_miss}'
        ],
        '_method.purpose' => [
          'Evaluation'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'single'
        ],
        '_type.container' => [
          'Table'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.indices' => [
          'ByReference'
        ],
        '_type.indices_referenced_id' => [
          '_import_details.single_index'
        ],
        '_type.purpose' => [
          'Internal'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'import_details.single_index',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.update',
        '_definition.class',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_import_details.single_index'
        ],
        '_definition.update' => [
          '2015-04-24'
        ],
        '_description.text' => [
          ' 
     One of the indices permitted in the entries of values of attribute _import_details.single.'
        ],
        '_enumeration_set.detail' => [
          'filename/URI of source dictionary',
          'save framecode of source definition',
          'mode for including save frames',
          'option for duplicate entries',
          'option for missing duplicate entries'
        ],
        '_enumeration_set.state' => [
          'file',
          'save',
          'mode',
          'dupl',
          'miss'
        ],
        '_name.category_id' => [
          'import_details'
        ],
        '_name.object_id' => [
          'single_index'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'Internal'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'LOOP',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'LOOP'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-20'
        ],
        '_description.text' => [
          '
     Attributes for looped lists.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'LOOP'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'loop.level',
      'precisions' => {
        '_enumeration.default' => [
          undef
        ]
      },
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration.default',
        '_enumeration.range'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'INT'
        ],
        '_enumeration.range' => [
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_loop.level'
        ],
        '_definition.update' => [
          '2012-05-07'
        ],
        '_description.text' => [
          '
     Specifies the level of the loop structure in which a defined
     item must reside if it used in a looped list.'
        ],
        '_enumeration.default' => [
          '1'
        ],
        '_enumeration.range' => [
          '1:'
        ],
        '_name.category_id' => [
          'loop'
        ],
        '_name.object_id' => [
          'level'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Index'
        ],
        '_type.purpose' => [
          'Number'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_category_key.name' => 0
      },
      'loops' => [
        [
          '_category_key.name'
        ]
      ],
      'name' => 'METHOD',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_category.key_id',
        '_category_key.name'
      ],
      'types' => {
        '_category.key_id' => [
          'SQSTRING'
        ],
        '_category_key.name' => [
          'SQSTRING'
        ],
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_category.key_id' => [
          '_method.purpose'
        ],
        '_category_key.name' => [
          '_method.purpose'
        ],
        '_definition.class' => [
          'Loop'
        ],
        '_definition.id' => [
          'METHOD'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-09-08'
        ],
        '_description.text' => [
          '
     Methods used for evaluating, validating and defining items.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'METHOD'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'method.expression',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_method.expression'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The method expression for the defined item.'
        ],
        '_name.category_id' => [
          'method'
        ],
        '_name.object_id' => [
          'expression'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Text'
        ],
        '_type.purpose' => [
          'Method'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'method.purpose',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_method.purpose'
        ],
        '_definition.update' => [
          '2006-11-16'
        ],
        '_description.text' => [
          '
     The purpose and scope of the method expression.'
        ],
        '_enumeration.default' => [
          'Evaluation'
        ],
        '_enumeration_set.detail' => [
          'method evaluates an item from related item values',
          'method generates attribute value(s) in the definition',
          'method compares an evaluation with existing item value'
        ],
        '_enumeration_set.state' => [
          'Evaluation',
          'Definition',
          'Validation'
        ],
        '_name.category_id' => [
          'method'
        ],
        '_name.object_id' => [
          'purpose'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'NAME',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'NAME'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-20'
        ],
        '_description.text' => [
          '
     Attributes for identifying items and item categories.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'NAME'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'name.category_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_name.category_id'
        ],
        '_definition.update' => [
          '2011-07-27'
        ],
        '_description.text' => [
          '
     The name of the category in which a category or item resides.'
        ],
        '_name.category_id' => [
          'name'
        ],
        '_name.object_id' => [
          'category_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Name'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'name.linked_item_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_name.linked_item_id'
        ],
        '_definition.update' => [
          '2011-12-08'
        ],
        '_description.text' => [
          '
     Dataname of an equivalent item in another category which has a 
     common set of values, or, in the definition of a type Su
     item is the name of the associated Measurement item to 
     which the standard uncertainty applies.'
        ],
        '_name.category_id' => [
          'name'
        ],
        '_name.object_id' => [
          'linked_item_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'name.object_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_name.object_id'
        ],
        '_definition.update' => [
          '2011-07-27'
        ],
        '_description.text' => [
          '
     The object name of a category or name unique within the 
     category or family of categories.'
        ],
        '_name.category_id' => [
          'name'
        ],
        '_name.object_id' => [
          'object_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Name'
        ],
        '_type.purpose' => [
          'Identify'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'TYPE',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'TYPE'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2011-06-26'
        ],
        '_description.text' => [
          '
    Attributes which specify the \'typing\' of data items.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'TYPE'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'type.container',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQ3STRING',
          'SQ3STRING',
          'SQ3STRING',
          'SQSTRING',
          'SQ3STRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.container'
        ],
        '_definition.update' => [
          '2013-04-07'
        ],
        '_description.text' => [
          '
     The CONTAINER type of the defined data item value. '
        ],
        '_enumeration.default' => [
          'Single'
        ],
        '_enumeration_set.detail' => [
          'single value',
          'values as List or by boolean ,|&!* or range : ops',
          'ordered set of values bounded by [] and separated by
                             commas. Elements need not be of same contents type.',
          'ordered set of numerical values bounded by [] and 
                             separated by commas. Operations across arrays are
                             equivalent to operations across elements of the Array.',
          'ordered set of numerical values for a tensor bounded by 
                             [] and separated by commas. Tensor operations such as
                             dot and cross products, are valid cross matrix objects.',
          'id:value elements bounded by {}; separated by commas',
          'a STAR construction with key:value elements bounded
                             by ${..}$ and separated by commas.
                             The id tags below are privileged and optional.
                             source  - filename or URI
                             block   - data blockname
                             frame   - framecode or [framecode,framecode,..]
                             item    - dataname or [dataname,dataname,..]
                             key     - key value if item is in a list'
        ],
        '_enumeration_set.state' => [
          'Single',
          'Multiple',
          'List',
          'Array',
          'Matrix',
          'Table',
          'Ref-table'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'container'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_description_example.case' => 1,
        '_description_example.detail' => 1,
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ],
        [
          '_description_example.case',
          '_description_example.detail'
        ]
      ],
      'name' => 'type.contents',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default',
        '_description_example.case',
        '_description_example.detail'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_description_example.case' => [
          'DQSTRING',
          'DQSTRING',
          'DQSTRING',
          'DQSTRING'
        ],
        '_description_example.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'DQ3STRING'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.contents'
        ],
        '_definition.update' => [
          '2013-04-24'
        ],
        '_description.text' => [
          '
     Syntax of the value elements within the container type. 
     This may be a single enumerated code, or, in the case of a list, 
     a comma-delimited sequence of codes, or, if there are alternate 
     types, a boolean-linked (or range) sequence of codes.
     The typing of elements is determined by the replication 
     of the minimum set of states declared.   Where the definition is of
     a \'Table\' container this attribute describes
     the construction of the value elements within those (Table) values.'
        ],
        '_description_example.case' => [
          'Integer',
          'Real,Integer',
          'List(Real,Code)',
          'Text|Real'
        ],
        '_description_example.detail' => [
          'content is a single or multiple integer(s)',
          'List elements of a real number and an integer',
          'List of Lists of a real number and a code',
          'content is either text OR a real number'
        ],
        '_enumeration.default' => [
          'Text'
        ],
        '_enumeration_set.detail' => [
          'case-sens strings or lines of STAR characters',
          'case-insens contig. string of STAR characters',
          'case-insens contig. string of alpha-num chars or underscore',
          'case-insens contig. STAR string with leading underscore',
          'case-sens string indentifying an external file',
          'case-sens string as universal resource indicator of a file',
          'ISO standard date format <yyyy>-<mm>-<dd>',
          'version digit string of the form <major>.<version>.<update>',
          'integer limits of an Array/Matrix/List in square brackets',
          'inclusive range of numerical values min:max',
          'unsigned integer number',
          'unsigned non-zero integer number',
          'positive or negative integer number',
          'floating-point real number',
          'floating-point imaginary number',
          'complex number <R>+j<I>',
          'binary number \\b<N>',
          'hexadecimal number \\x<N>',
          'octal number \\o<N>',
          'implied by the context of the attribute',
          'The contents have the same form as those of the attribute referenced by
                            _type.contents_referenced_id.'
        ],
        '_enumeration_set.state' => [
          'Text',
          'Code',
          'Name',
          'Tag',
          'Filename',
          'Uri',
          'Date',
          'Version',
          'Dimension',
          'Range',
          'Count',
          'Index',
          'Integer',
          'Real',
          'Imag',
          'Complex',
          'Binary',
          'Hexadecimal',
          'Octal',
          'Implied',
          'ByReference'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'contents'
        ],
        '_type.container' => [
          'Multiple'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'type.contents_referenced_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.update',
        '_definition.class',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.contents_referenced_id'
        ],
        '_definition.update' => [
          '2015-04-24'
        ],
        '_description.text' => [
          '
     The value of the _definition.id attribute of an attribute definition
     whose type is to be used also as the type of this item.  Meaningful only
     when this item\'s _type.contents attribute has value \'ByReference\'.'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'contents_referenced_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_description_example.case' => 0,
        '_description_example.detail' => 0
      },
      'loops' => [
        [
          '_description_example.case',
          '_description_example.detail'
        ]
      ],
      'name' => 'type.dimension',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_description_example.case',
        '_description_example.detail'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_description_example.case' => [
          'DQSTRING',
          'DQSTRING',
          'DQSTRING'
        ],
        '_description_example.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.dimension'
        ],
        '_definition.update' => [
          '2013-04-17'
        ],
        '_description.text' => [
          '
     The dimensions of a list or matrix of elements as a text string 
     within bounding square brackets.'
        ],
        '_description_example.case' => [
          '[3,3]',
          '[6]',
          '[]'
        ],
        '_description_example.detail' => [
          '3x3 matrix of elements',
          'list of 6 elements',
          'unknown number of list elements'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'dimension'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Dimension'
        ],
        '_type.purpose' => [
          'Encode'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_description_example.case' => 1,
        '_description_example.detail' => 1,
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ],
        [
          '_description_example.case',
          '_description_example.detail'
        ]
      ],
      'name' => 'type.indices',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.update',
        '_definition.class',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default',
        '_description_example.case',
        '_description_example.detail'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_description_example.case' => [
          'SQSTRING',
          'SQSTRING'
        ],
        '_description_example.detail' => [
          'SQSTRING',
          'SQSTRING'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'SQSTRING',
          'TEXTFIELD'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.indices'
        ],
        '_definition.update' => [
          '2015-04-24'
        ],
        '_description.text' => [
          '
     Used to specify the syntax construction of indices of the entries in the
     defined object when the defined object has \'Table\' as its
     _type.container attribute.  Values are a subset of the codes and
     constructions defined for attribute _type.contents, accounting
     for the fact that syntactically, indices are always case-sensitive
     quoted strings.

     Meaningful only when the defined item has _type.container \'Table\'.'
        ],
        '_description_example.case' => [
          'Code',
          'Uri'
        ],
        '_description_example.detail' => [
          'indices belong to an enumerated set of pre-defined codes',
          'indices have the form of URIs'
        ],
        '_enumeration.default' => [
          'Text'
        ],
        '_enumeration_set.detail' => [
          'a case-sensitive string/lines of text',
          'name of an external file',
          'code used for indexing data or referencing data resources',
          'ISO date format yyyy-mm-dd',
          'an universal resource identifier string, per RFC 3986',
          'version digit string of the form <major>.<version>.<update>',
          '
     Indices have the same form as the contents of the attribute identified by
     _type.indices_referenced_id'
        ],
        '_enumeration_set.state' => [
          'Text',
          'Filename',
          'Code',
          'Date',
          'Uri',
          'Version',
          'ByReference'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'indices'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'type.indices_referenced_id',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.update',
        '_definition.class',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.container',
        '_type.contents'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.indices_referenced_id'
        ],
        '_definition.update' => [
          '2015-04-24'
        ],
        '_description.text' => [
          '
     The _definition.id attribute of a definition whose type describes the
     form and construction of the indices of entries in values of the present item.

     Meaningful only when the defined item\'s _type.container attribute has
     value \'Table\', and its _type.indices attribute has value \'ByReference\'.'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'indices_referenced_id'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Tag'
        ],
        '_type.purpose' => [
          'Identify'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'type.purpose',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.purpose'
        ],
        '_definition.update' => [
          '2013-03-06'
        ],
        '_description.text' => [
          '
     The primary purpose or function the defined data item serves in a
     dictionary or a specific data instance.'
        ],
        '_enumeration.default' => [
          'Describe'
        ],
        '_enumeration_set.detail' => [
          '                  >>> Applied ONLY in the DDLm Reference Dictionary <<<
                   Used to type the SPECIAL attribute "_import.get" that
                   is present in dictionaries to instigate the importation
                   of external dictionary definitions.',
          '                  >>> Applied ONLY in the DDLm Reference Dictionary <<<
                   Used to type the attribute "_method.expression" that 
                   is present in dictionary definitions to provide the 
                   text method expressing the defined item in terms of
                   other defined items.',
          '                  >>> Applied ONLY in the DDLm Reference Dictionary <<<
                   Used to type attributes employed to record the audit 
                   definition information (creation date, update version and
                   cross reference codes) of items, categories and files.',
          '                  >>> Applied ONLY in the DDLm Reference Dictionary <<<
                   Used to type attributes that identify an item tag (or
                   part thereof), save frame or the URI of an external file. ',
          '                  *** Used to EXTEND the DDLm Reference Dictionary ***
                   Used in a definition, residing in the "extensions" 
                   save frame of a domain dictionary, to specify a new
                   enumeration state using an Evaluation method.',
          '                  Used to type items with values that are descriptive
                   text intended for human interpretation.',
          '                  Used to type items with values that are text or codes 
                   that are formatted to be machine parsible.',
          '                  Used to type items with values that are restricted to 
                   codes present in their "enumeration_set.state" lists.',
          '                  Used to type an item with a value that is unique within   
                   the looped list of these items, and may be used as a
                   reference "key" to identify a specific packet of items 
                   within the category.',
          '                  Used to type an item with a value that is unique within
                   a looped list of items belonging to another category.
                   The definition of this item must contain the attribute
                   "_name.linked_item_id" specifying the data name of the
                   key item for this list. The defined item represents a
                   a foreign key linking packets in this category list to 
                   packets in another category.',
          '                  Used to type items with value strings composed of
                   separate parts. These will usually need to be separated 
                   and parsed for complete interpretation and application.',
          '                  Used to type items that are numerical and exact (i.e. 
                   no standard uncertainty value). ',
          '                  Used to type an item with a numerically estimated value 
                   that has been recorded by measurement or derivation. This 
                   value must be accompanied by its standard uncertainty 
                   (SU) value, expressed either as:
                     1) appended integers, in parentheses (), at the
                        precision of the trailing digits,       or
                     2) a separately defined item with the same name as the 
                        measurand item but with an additional suffix \'_su\'.',
          '                  Used to type an item with a numerical value that is the 
                   standard uncertainty of an item with the identical name
                   except for the suffix \'_su\'. The definition of an SU item 
                   must include the attribute "_name.linked_item_id" which
                   explicitly identifies the associated measurand item.',
          '                  Used to type items that serve only internal purposes of the dictionary
                   in which they appear.  The particular purpose served is not defined by
                   this state.'
        ],
        '_enumeration_set.state' => [
          'Import',
          'Method',
          'Audit',
          'Identify',
          'Extend',
          'Describe',
          'Encode',
          'State',
          'Key',
          'Link',
          'Composite',
          'Number',
          'Measurand',
          'SU',
          'Internal'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'purpose'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {
        '_enumeration_set.detail' => 0,
        '_enumeration_set.state' => 0
      },
      'loops' => [
        [
          '_enumeration_set.state',
          '_enumeration_set.detail'
        ]
      ],
      'name' => 'type.source',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration_set.state',
        '_enumeration_set.detail',
        '_enumeration.default'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_enumeration_set.detail' => [
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD',
          'TEXTFIELD'
        ],
        '_enumeration_set.state' => [
          'UQSTRING',
          'UQSTRING',
          'UQSTRING',
          'UQSTRING'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_type.source'
        ],
        '_definition.update' => [
          '2013-04-16'
        ],
        '_description.text' => [
          '
     The origin or source of the defined data item, indicating by what 
     recording process it has been added to the domain instance.'
        ],
        '_enumeration.default' => [
          'Selected'
        ],
        '_enumeration_set.detail' => [
          '               A value (numerical or otherwise) recorded by
                observation or measurement during the experimental 
                collection of data. This item is PRIMITIVE.',
          '               A value (numerical or otherwise) assigned as part of
                the data collection, analysis or modelling required
                for a specific domain instance. These assignments 
                often represent a decision made that determines the
                course of the experiment (and therefore may be deemed
                PRIMITIVE) or a particular choice in the way the data
                was analysed (and therefore may be considered NOT
                PRIMITIVE). ',
          '               A value or tag used in the construction of looped   
                lists of data. Typically identifying an item whose
                unique value is the reference key for a loop category
                and/or an item which as values in common with those 
                of another loop category and is considered a Link
                between these lists.',
          '               A quantity derived from other data items within the 
                domain instance. This item is NOT PRIMITIVE.'
        ],
        '_enumeration_set.state' => [
          'Recorded',
          'Assigned',
          'Related',
          'Derived'
        ],
        '_name.category_id' => [
          'type'
        ],
        '_name.object_id' => [
          'source'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'UNITS',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'UQSTRING'
        ],
        '_definition.scope' => [
          'UQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Set'
        ],
        '_definition.id' => [
          'UNITS'
        ],
        '_definition.scope' => [
          'Category'
        ],
        '_definition.update' => [
          '2013-03-06'
        ],
        '_description.text' => [
          '
    The attributes for specifying units of measure.'
        ],
        '_name.category_id' => [
          'ATTRIBUTES'
        ],
        '_name.object_id' => [
          'UNITS'
        ]
      }
    },
    {
      'cifversion' => {
        'major' => 2,
        'minor' => 0
      },
      'inloop' => {},
      'loops' => [],
      'name' => 'units.code',
      'precisions' => {},
      'save_blocks' => [],
      'tags' => [
        '_definition.id',
        '_definition.class',
        '_definition.update',
        '_description.text',
        '_name.category_id',
        '_name.object_id',
        '_type.purpose',
        '_type.source',
        '_type.container',
        '_type.contents',
        '_enumeration.default',
        '_import.get'
      ],
      'types' => {
        '_definition.class' => [
          'UQSTRING'
        ],
        '_definition.id' => [
          'SQSTRING'
        ],
        '_definition.update' => [
          'UQSTRING'
        ],
        '_description.text' => [
          'TEXTFIELD'
        ],
        '_enumeration.default' => [
          'UQSTRING'
        ],
        '_import.get' => [
          [
            {
              'file' => 'UQSTRING',
              'save' => 'UQSTRING'
            }
          ]
        ],
        '_name.category_id' => [
          'UQSTRING'
        ],
        '_name.object_id' => [
          'UQSTRING'
        ],
        '_type.container' => [
          'UQSTRING'
        ],
        '_type.contents' => [
          'UQSTRING'
        ],
        '_type.purpose' => [
          'UQSTRING'
        ],
        '_type.source' => [
          'UQSTRING'
        ]
      },
      'values' => {
        '_definition.class' => [
          'Attribute'
        ],
        '_definition.id' => [
          '_units.code'
        ],
        '_definition.update' => [
          '2012-01-25'
        ],
        '_description.text' => [
          '
     A code which identifies the units of measurement.'
        ],
        '_enumeration.default' => [
          'Arbitrary'
        ],
        '_import.get' => [
          [
            {
              'file' => 'templ_enum.cif',
              'save' => 'units_code'
            }
          ]
        ],
        '_name.category_id' => [
          'units'
        ],
        '_name.object_id' => [
          'code'
        ],
        '_type.container' => [
          'Single'
        ],
        '_type.contents' => [
          'Code'
        ],
        '_type.purpose' => [
          'State'
        ],
        '_type.source' => [
          'Assigned'
        ]
      }
    }
  ],
  'tags' => [
    '_dictionary.title',
    '_dictionary.class',
    '_dictionary.version',
    '_dictionary.date',
    '_dictionary.uri',
    '_dictionary.ddl_conformance',
    '_dictionary.namespace',
    '_description.text',
    '_dictionary_valid.application',
    '_dictionary_valid.attributes',
    '_dictionary_audit.version',
    '_dictionary_audit.date',
    '_dictionary_audit.revision'
  ],
  'types' => {
    '_description.text' => [
      'TEXTFIELD'
    ],
    '_dictionary.class' => [
      'UQSTRING'
    ],
    '_dictionary.date' => [
      'UQSTRING'
    ],
    '_dictionary.ddl_conformance' => [
      'UQSTRING'
    ],
    '_dictionary.namespace' => [
      'UQSTRING'
    ],
    '_dictionary.title' => [
      'UQSTRING'
    ],
    '_dictionary.uri' => [
      'UQSTRING'
    ],
    '_dictionary.version' => [
      'UQSTRING'
    ],
    '_dictionary_audit.date' => [
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING'
    ],
    '_dictionary_audit.revision' => [
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD',
      'TEXTFIELD'
    ],
    '_dictionary_audit.version' => [
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING',
      'UQSTRING'
    ],
    '_dictionary_valid.application' => [
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ]
    ],
    '_dictionary_valid.attributes' => [
      [
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING'
      ],
      [
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING'
      ],
      [
        'SQSTRING',
        'SQSTRING',
        'SQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING',
        'UQSTRING'
      ],
      [
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING'
      ],
      [
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING',
        'SQSTRING'
      ],
      [
        'UQSTRING',
        'UQSTRING'
      ]
    ]
  },
  'values' => {
    '_description.text' => [
      '
     This dictionary contains the definitions of attributes that
     make up the DDLm dictionary definition language.  It provides 
     the meta meta data for all CIF dictionaries.'
    ],
    '_dictionary.class' => [
      'Reference'
    ],
    '_dictionary.date' => [
      '2015-05-07'
    ],
    '_dictionary.ddl_conformance' => [
      '3.11.09'
    ],
    '_dictionary.namespace' => [
      'DdlDic'
    ],
    '_dictionary.title' => [
      'DDL_DIC'
    ],
    '_dictionary.uri' => [
      'www.iucr.org/cif/dic/ddl.dic'
    ],
    '_dictionary.version' => [
      '3.11.09'
    ],
    '_dictionary_audit.date' => [
      '2004-11-09',
      '2004-11-10',
      '2004-11-11',
      '2004-11-12',
      '2004-11-13',
      '2004-11-16',
      '2004-11-18',
      '2005-11-22',
      '2005-12-12',
      '2006-02-02',
      '2006-02-07',
      '2006-02-12',
      '2006-02-16',
      '2006-03-07',
      '2006-03-22',
      '2006-05-09',
      '2006-06-16',
      '2006-06-17',
      '2006-06-18',
      '2006-06-20',
      '2006-06-27',
      '2006-07-18',
      '2006-08-30',
      '2006-08-31',
      '2006-10-31',
      '2006-11-09',
      '2006-11-16',
      '2006-12-05',
      '2006-12-21',
      '2007-02-06',
      '2007-02-08',
      '2007-03-18',
      '2007-10-11',
      '2008-01-17',
      '2008-02-12',
      '2008-03-28',
      '2008-05-18',
      '2008-08-05',
      '2011-01-27',
      '2011-03-25',
      '2011-06-07',
      '2011-06-21',
      '2011-06-22',
      '2011-06-23',
      '2011-06-27',
      '2011-06-29',
      '2011-06-30',
      '2011-07-28',
      '2011-08-15',
      '2011-12-08',
      '2012-01-25',
      '2012-05-07',
      '2012-10-16',
      '2012-11-20',
      '2013-02-12',
      '2013-02-22',
      '2013-02-25',
      '2013-03-03',
      '2013-03-06',
      '2013-04-11',
      '2013-04-16',
      '2013-04-24',
      '2013-09-08',
      '2014-09-18',
      '2015-01-27',
      '2015-01-27',
      '2015-01-28',
      '2015-05-07'
    ],
    '_dictionary_audit.revision' => [
      '
   Change definition.import_id to definition_import.id in many defs.
   Insert category DEFINITION_IMPORT and the items .id, .conflict,
   .protocol and .source.',
      '
   Make further changes to the DEFINITION_IMPORT definitions and
   introduce the DEFINITION_TEMPLATE category.',
      '
   Introduce an IMPORT category containing IMPORT_DICTIONARY, 
   IMPORT_DEFINITION, IMPORT_CATEGORY, IMPORT_ATTRIBUTE.
   Change DEFINITION_TEMPLATE to IMPORT_TEMPLATE.',
      '
   Major changes to all the new attributes. Introduce categories
   DEFINITION_CONTEXT.',
      '
   Cleaned up the IMPORT changes and cases of enumerates.',
      '
   Further changes to IMPORT definitions.',
      '
  Some minor correction of typos',
      '
  Changed _dictionary.name to _dictionary.filename
  Changed _dictionary_xref.name to _dictionary_xref.filename
  Added _dictionary.title to describe the common name of the dictionary',
      '
  Changed ddl to ddl_attr
  Added Template and Function to _dictionary.class',
      '
  Add the definition of _dictionary_xref.source.',
      '
  Add import attribute definitions',
      '
  Remove save frames from dictionary attributes.
  Change the attribute _dictionary.parent_name to _dictionary.parent_id',
      '
  In the import_*.conflict definitions change the enumeration state Unique 
  to Ignore, and change the default state to Error.
  In the import_*.missing definitions change default enumeration state to
  Error.',
      '
  Structural changes to the file to conform with the import model 3.
  Move the template file for *.relational_id to com_att.dic
  Change all references to *.relational_id into the tuple format.
  Move the _codes_ddl.units_code to enum_set.dic and insert the
  import_enum_set.id tuples.',
      '
  Rename _enumeration.default_index_id to _enumeration.def_index_id.
  Correct the attributes _enumeration_default.index and *.value.',
      '
  Reword many of the import attributes.
  Correct the tuple description for import_dictionary.
  Insert all of the definitions for import_defaults attributes.
  Update _dictionary.class definition - change "Template" to "Import".
  Remove _enumeration.scope "open" from _definition_context.domain.',
      '
  Major revamp of TYPE attributes... changed:
     _type.value to _type.contents and expand enumeration list.
     _type.purpose has new role and different enumeration states.
  _name.object_id changed to _name.object_id.
  _enumeration_set.code becomes _enumeration_set.state.
  Changed the _type.value (now .contents) states to match expanded list.
  Added _dictionary.ddl_conformance attribute.
  Changed _category.join_set_id to _category.join_cat_id.
  Remove _enumeration.scope definition.',
      '
  Change the states of _type.purpose.        ',
      '
  Correct _type.contents value in import_dictionary.id.        ',
      '
  Change state \'Point\' to \'Link\' in _type.contents definition.
  Add Formula to _type.contents',
      '
  Change all IMPORT attributes and apply.
  Add _dictionary.namespace attribute and apply.
  Add states to _definition.class and apply.
  Add _enumeration_set.scope.
  Add .context to ENUMERATE_SET, ENUMERATE_DEFAULT, DESCRIPTION_EXAMPLE',
      '
  Change the descriptions of the _type.container states.
  The _enumeration_set.scope removed (enumeration.mandatory used).
  In _type_array.dimension change _type.contents to List.',
      '
  Change \'att\' to \'sta\' in the imports of _type.contents and _units.code.
  Replace states \'vector\' and \'matrix\' in _type.container with \'array\'.
  In _type.purpose change \'model\' to \'assigned\'; \'observe\' to \'observed\';
  and \'measure\' to \'measured\'.',
      '
  Remove the category TYPE_ARRAY and insert _type.dimension
  Replace _description.compact with _description.common
  Replace _description.abbreviated with _description.key_words',
      '
  Remove all attributes and categories referring to \'context\'.',
      '
  Replace _method.id with method.purpose.
  Redefine the DICTIONARY_VALID values.',
      '
  Apply _definition.scope changes.
  Add _category.parent_join.    
  Add _dictionary.xref_code.            
  Add _enumeration_set.xref_dictionary.
  Remove all relational keys.',
      '
  Rewording of description.text in DDL_ATTR and definition.namespace
  Rewording of category_mandatory.item_id
  Reworded descriptions of definition.class descriptions.
  Removed dictionary.filename.
  Corrected examples in type.dimension.
  Remove dictionary.parent_id and dictionary.parent_uri.',
      '
  Default for _category.parent_join is now "No"',
      '
  Change _category_key.item_id to _category_key.generic
  Add _category_key.primitive',
      '
  Change the _type.purpose of _category_key.generic and .primitive
  to Identify',
      '
  Change the description for _name.linked_item_id',
      '
  Correct the _type.dimension assignments to [n[m]].
  Remove _type_array.dimension from _type.dimension definition.',
      '
  Change \'Definition\' to \'Evaluation\' in import_list.id.      
  Changed import.scope entries to leading uc character.',
      '
  Change \'Itm\' to \'Def\' in import.scope.',
      '
  Update the definition of _type.dimension.',
      '
  Changed 2 type.contents values from "Implied" to "Inherited"
  Change import_list.id to be ((.....))
',
      '
  Correct _type.dimension definition.',
      '
  Change definition scope of Head category to "Dictionary"
  Remove all tabs and replace with blank string',
      '
  In the attribute import_list.id
  Change _type.contents  Tuple(Code,Tag,Uri,Code,Code)  
  To     _type.contents  Tuple(Code,Ctag,Uri,Code,Code)
 In the attribute import.block
  Change _type.contents    Tag
  To     _type.contents    Ctag
  And change the case examples',
      '
  Remove the Tuple and Array enumerations from _type.container
  Change category class enumeration from List to Loop; and change
  all invocations of _category.class in the definitions
  Introduce nested save frames for expressing nested categories.',
      '
Reconfigure _dictionary_valid attribures into lists, and reset the
attribute application criteria at the rear of the DDL dictionary.',
      '
Change IMPORT_LIST to IMPORT_TABLE. Change the IMPORT arguments to
match this. Change the import_list.id invocations to import_table
equivalents. Add _enumeration_set.table_tag.',
      '
Remove IMPORT_TABLE. Change the IMPORT to a set category.
Insert a import.get attribute to replace import_table.id
Rename the DDL_ATTR category as ATTRIBUTES',
      '
Change the _name.category_id value to reflect the parent category.',
      '
Change Reference in _type.purpose to Ref-key',
      '
Change Reference in _definition.class to Ref-loop.
Remove import from type.contents and insert enumeration_set list.
Insert name.category_id into every category definition.',
      '
Add name.category_id and name.object_id to category definitions.
Remove category.parent_id from category definitions.
Remove definitions for category.parent_id and the CATEGORY_KEY
and CATEGORY_MANDATORY definitions. Define category.key_id',
      '
Add the state "Extend" to the type.purpose" attribute.',
      '
Add types "Array" and "Matrix" to type.container attribute definition.
Add type "Su" to the type.purpose attribute definition.',
      '
For import.get change the key "fram" to "save".',
      '
Revamp the type.purpose states. Remove state "Limit"
Add the new attribute type.source
Change dictionary.class "Attribute" to "Reference"
Removed attribute enumeration_set.construct',
      '
Correct enum states for type.contents and type.container',
      '
Remove "Implied" as an enumeration state for type.contents ',
      '
Added missing loop statement to methods of dictionary_valid.application.
Corrected the definition of the enumeration state \'Code\' in type.contents.',
      '
Add state value to enum_set loop of import.get defn as the key ',
      '
Remove the quotes from Multiple string in type.container definition 
Add \'Functions\' to the enumeration states of definition.class',
      '
Added type.contents enum state "Implied" for category key definitions',
      '
Added various attributes to conform with ALIGN requirements',
      '
Added type.source to all definitions
Change type.contents state "Table" to "Pairs"',
      '
Removed \'Measured\' as a state for type.source',
      '
   Changed type.source \'Quantity\' to \'Number\' or \'Encode\'
   State \'Float\' in type.contents removed.',
      '
   Attribute _alias.deprecation_date added.
   Attribute _category.key_list      added.
   The attribute _category.key_list added to all Loop category defs.',
      '
   Looped category _category_key replaces _category.key_list
   Added _category_key.name and changed all occurrences of 
   _category.key_list to _category_key.name
   Changed _type.source and _type.purpose to Recommended (JRH)',
      '
   Replaced stub category names with full category names in _name.category_id
   and _name.object_id.
   Corrected all _category.key_name to _category_key.name (JRH)',
      '
   Converted to CIF2 format using automatic tool and post-editing for 
   presentation (JRH). ',
      '
   Created _dictionary_valid.scope and corrected dREL method for 
   _dictionary_valid.application. ',
      '
   Removed _enumerated.table_id and replaced with ByReference attributes
   _type.contents_referenced_id and _type.indices_referenced_id. Updated
   _type.contents and _type.purpose to describe the ByReference approach.
   Fixed _import.get dREL methods by moving individual table entries into
   a sub-category and adding reference and order attributes. (James Hester/
   John Bollinger)'
    ],
    '_dictionary_audit.version' => [
      '3.3.00',
      '3.3.01',
      '3.3.02',
      '3.3.03',
      '3.3.04',
      '3.3.05',
      '3.3.06',
      '3.3.07',
      '3.3.08',
      '3.3.09',
      '3.3.10',
      '3.4.01',
      '3.4.02',
      '3.5.01',
      '3.5.02',
      '3.5.03',
      '3.6.01',
      '3.6.02',
      '3.6.03',
      '3.6.04',
      '3.6.05',
      '3.6.06',
      '3.6.07',
      '3.6.08',
      '3.6.09',
      '3.6.10',
      '3.7.01',
      '3.7.02',
      '3.7.03',
      '3.7.04',
      '3.7.05',
      '3.7.06',
      '3.7.07',
      '3.7.08',
      '3.7.09',
      '3.7.10',
      '3.7.11',
      '3.7.12',
      '3.7.13',
      '3.7.14',
      '3.8.01',
      '3.8.02',
      '3.8.03',
      '3.8.04',
      '3.8.05',
      '3.8.06',
      '3.8.07',
      '3.8.08',
      '3.8.08',
      '3.9.01',
      '3.9.02',
      '3.10.01',
      '3.10.02',
      '3.10.03',
      '3.10.04',
      '3.10.05',
      '3.10.06',
      '3.10.07',
      '3.10.08',
      '3.11.01',
      '3.11.02',
      '3.11.03',
      '3.11.04',
      '3.11.05',
      '3.11.06',
      '3.11.07',
      '3.11.08',
      '3.11.09'
    ],
    '_dictionary_valid.application' => [
      [
        'Dictionary',
        'Mandatory'
      ],
      [
        'Dictionary',
        'Recommended'
      ],
      [
        'Dictionary',
        'Prohibited'
      ],
      [
        'Category',
        'Mandatory'
      ],
      [
        'Category',
        'Recommended'
      ],
      [
        'Category',
        'Prohibited'
      ],
      [
        'Item',
        'Mandatory'
      ],
      [
        'Item',
        'Recommended'
      ],
      [
        'Item',
        'Prohibited'
      ]
    ],
    '_dictionary_valid.attributes' => [
      [
        '_dictionary.title',
        '_dictionary.class',
        '_dictionary.version',
        '_dictionary.date',
        '_dictionary.uri',
        '_dictionary.ddl_conformance',
        '_dictionary.namespace'
      ],
      [
        '_description.text',
        '_dictionary_audit.version',
        '_dictionary_audit.date',
        '_dictionary_audit.revision'
      ],
      [
        'ALIAS',
        'CATEGORY',
        'DEFINITION',
        'ENUMERATION',
        'LOOP',
        'METHOD',
        'NAME',
        'TYPE',
        'UNITS'
      ],
      [
        '_definition.id',
        '_definition.scope',
        '_definition.class',
        '_name.category_id',
        '_name.object_id'
      ],
      [
        '_category.key_id',
        '_category_key.name',
        '_description.text'
      ],
      [
        'ALIAS',
        'DICTIONARY',
        'ENUMERATION',
        'IMPORT',
        'LOOP',
        'TYPE',
        'UNITS'
      ],
      [
        '_definition.id',
        '_definition.update',
        '_name.object_id',
        '_name.category_id',
        '_type.container',
        '_type.contents'
      ],
      [
        '_definition.scope',
        '_definition.class',
        '_type.source',
        '_type.purpose',
        '_description.text',
        '_description.common'
      ],
      [
        'CATEGORY',
        'DICTIONARY'
      ]
    ]
  }
};
