#\#CIF_2.0
##############################################################################
#                                                                            #
#    FAKE DICTIONARY WITH IMPROPERLY LINKED DATA ITEM FOR TESTING PURPOSES   #
#                                                                            #
##############################################################################
data_FAKE_ILLEGALLY_LINKED_ITEM_DIC
_dictionary.title            FAKE_ILLEGALLY_LINKED_ITEM_DIC
_dictionary.class            Instance
_dictionary.version          0.1.0
_dictionary.date             2019-02-11
_dictionary.uri              http://www.fake.org/illegally_linked_item.dic
_dictionary.ddl_conformance  3.13.1
_dictionary.namespace        FakeIllegallyLinkedItemDic
_description.text
;
 This dictionary purposely contains data item definitions that contain
 improper links to other data items.
;
loop_
_dictionary_audit.version
_dictionary_audit.date
_dictionary_audit.revision
0.1.0 2019-02-11 'Creating the dictionary.'

save_ILLEGALLY_LINKED_ITEM_HEAD
_definition.id               ILLEGALLY_LINKED_ITEM_HEAD
_definition.scope            Category
_definition.class            HEAD
_definition.update           2019-02-11
_description.text
;
 The HEAD category of the dictionary.
;
_name.category_id            FAKE_ILLEGALLY_LINKED_ITEM_DIC
_name.object_id              ILLEGALLY_LINKED_ITEM_HEAD
save_

save_ILLEGALLY_LINKED_ITEM
_definition.id               ILLEGALLY_LINKED_ITEM
_definition.scope            Category
_definition.class            Set
_definition.update           2019-02-11
_description.text
;
  Data items in the ILLEGALLY_LINKED_ITEM category intentionally
  contain illegal links to other data items.
;
_name.category_id            ILLEGALLY_LINKED_ITEM_HEAD
_name.object_id              ILLEGALLY_LINKED_ITEM
save_

save_illegally_linked_item.undefined_reference_su

  _definition.id               '_illegally_linked_item.undefined_reference_su'
  _definition.update            2019-02-11
  _description.text
;
  Data item with the 'SU' purpose that references a data item
  that is not defined in the given dictionary.
;
  _name.category_id             illegally_linked_item
  _name.object_id               undefined_reference_su
  _type.purpose                 SU
  _name.linked_item_id          '_illegally_linked_item.undefined_reference'
  _type.source                  Related
  _type.container               Single
  _type.contents                Real
  _units.code                   none

save_

save_illegally_linked_item.undefined_reference_link

  _definition.id               '_illegally_linked_item.undefined_reference_link'
  _definition.update            2019-02-11
  _description.text
;
  Data item with the 'Link' purpose that references a data item
  that is not defined in the given dictionary.
;
  _name.category_id             illegally_linked_item
  _name.object_id               undefined_reference_link
  _type.purpose                 Link
  _name.linked_item_id          '_illegally_linked_item.undefined_reference'
  _type.source                  Assigned
  _type.container               Single
  _type.contents                Text

save_

save_illegally_linked_item.self_reference_link_id

  _definition.id               '_illegally_linked_item.self_reference_link_id'
  _definition.update            2019-02-11
  _description.text
;
  Data item with the 'Link' purpose that references itself.
  In this case the '_definition.id' attribute value is used
  as the referece value.
;
  _name.category_id             illegally_linked_item
  _name.object_id               self_reference_link_id
  _type.purpose                 Link
  _name.linked_item_id          '_illegally_linked_item.self_reference_link_id'
  _type.source                  Assigned
  _type.container               Single
  _type.contents                Text

save_

save_illegally_linked_item.self_reference_link_alias

  _definition.id               '_illegally_linked_item.self_reference_alias'
  loop_
  _alias.definition_id
        '_illegally_linked_item.alt_name'
        '_illegally_linked_item.alTernaTive_name'
  _definition.update            2019-02-11
  _description.text
;
  Data item with the 'Link' purpose that references itself.
  In this case the '_alias.definition_id' attribute value is
  used as the referece value.
;
  _name.category_id             illegally_linked_item
  _name.object_id               self_reference_link_alias
  _type.purpose                 Link
  _name.linked_item_id          '_illegally_linked_item.Alternative_Name'
  _type.source                  Assigned
  _type.container               Single
  _type.contents                Text

save_


save_illegally_linked_item.non_measurand_su

  _definition.id               '_illegally_linked_item.non_measurand_su'
  _definition.update            2019-02-11
  _description.text
;
 Data item definition that incorrectly links data item with the 'SU'
 purpose to a non-measurand data item.
;
  _name.category_id             illegally_linked_item
  _name.object_id               non_measurand_su
  _type.purpose                 SU
  _name.linked_item_id          '_illegally_linked_item.non_measurand'
  _type.source                  Related
  _type.container               Single
  _type.contents                Real
  _units.code                   none

save_

save_illegally_linked_item.non_measurand
_definition.id               '_illegally_linked_item.non_measurand'
_definition.update            2019-02-11
_description.text
;
 Data item that has an SU data item linked to it, but is not of the
 'Measurand' type.
;
_name.category_id             illegally_linked_item
_name.object_id               non_measurand
_type.purpose                 Describe
_type.source                  Assigned
_type.container               Single
_type.contents                Real
_units.code                   none
save_

save_illegally_linked_item.incompatible_type_purpose
_definition.id               '_illegally_linked_item.incompatible_type_purpose'
_definition.update            2019-02-11
_description.text
;
 Data item that contains a link to an item even though the type
 purpose does not allow it.
;
_name.category_id             illegally_linked_item
_name.object_id               incompatible_type_purpose
_type.purpose                 Describe
_name.linked_item_id          '_illegally_linked_item.non_measurand'
_type.source                  Assigned
_type.container               Single
_type.contents                Real
_units.code                   none
save_

save_LEGALLY_LINKED_ITEM
_definition.id               LEGALLY_LINKED_ITEM
_definition.scope            Category
_definition.class            Set
_definition.update           2019-02-11
_description.text
;
 Data items in the LEGALLY_LINKED_ITEM category contain links to
 other data items.
;
_name.category_id            ILLEGALLY_LINKED_ITEM_HEAD
_name.object_id              LEGALLY_LINKED_ITEM
save_

save_legally_linked_item.measurand_su
_definition.id               '_legally_linked_item.measurand_su'
_definition.update            2019-02-11
_description.text
;
 Data item definition that contains a valid 'Link' purpose.
;
_name.category_id             legally_linked_item
_name.object_id               measurand_su
_type.purpose                 SU
_name.linked_item_id          '_legally_linked_item.measurand'
_type.source                  Related
_type.container               Single
_type.contents                Real
_units.code                   none
save_

save_legally_linked_item.measurand
_definition.id               '_legally_linked_item.measurand'
_definition.update            2019-02-11
_description.text
;
 Data item that has an SU data item linked to it and is of the
 correct 'Measurand' type.
;
_name.category_id             legally_linked_item
_name.object_id               measurand
_type.purpose                 Measurand
_type.source                  Assigned
_type.container               Single
_type.contents                Real
_units.code                   none
save_
