HomeGuidesAPI ReferenceChangelog
HomeGuidesTamr API ReferenceTutorialsEnrichment API ReferenceSupport Help CenterLog In

The Attribute Object

Attributes are associated with datasets and are defined by their name and type. The type can be primitive or complex.

The primitive types in Tamr are:

  • BOOLEAN
  • DOUBLE
  • INT
  • LONG
  • NULL
  • STRING

The complex types in Tamr are:

  • ARRAY- Arrays are multi-value fields, and are common in many Tamr datasets.
  • MAP- Maps are defined by keys and values, where the key is a STRING. The values can be of any type, primitive or complex.
  • RECORD- Records contain a list of attributes, and each of these attributes can be simple or complex. For example, a Pairs Deduplication Dataset.

An attribute is described by its base type. Complex types (ARRAY, MAP, and RECORD) need to specify their nested types. To do so, ARRAY and MAP should specify inner_type, whereas RECORD should specify attributes.

Types list associated attributes, which could be complex or primitive. If there are no attributes associated with the base type of an attribute, such as for primitive types, an empty array [ ] is returned.

FieldDescriptionType
nameThe user-given name of the attribute. Must be unique to the dataset.String
descriptionOptional. The description of the attribute. Defaults to an empty string "". Not applicable to the attributes contained within a RECORD attribute.String
typeThe type of the attribute. Can be primitive or complex. If complex, there will be nested inner and base types, as described in this topic.Attribute Type
isNullableWhether the attribute can be empty. Defaults to false.Boolean
{
  "name": "zipcodes",
  "description": "",
  "type": {
    "baseType": "ARRAY",
    "innerType": {
      "baseType": "STRING",
      "attributes": []
    },
  },
  "isNullable": true
}
{
    "name": "feedback",
    "description": "",
    "type": {
      "baseType": "MAP",
      "innerType": {
        "baseType": "RECORD",
        "attributes": [
          {
            "name": "username",
            "type": {
              "baseType": "STRING",
              "attributes": []
            },
            "isNullable": false
          },
          {
            "name": "assignmentInfo",
            "type": {
              "baseType": "RECORD",
              "attributes": [
                {
                  "name": "status",
                  "type": {
                    "baseType": "STRING",
                    "attributes": []
                 },
                 "isNullable": true
                },
                {
                  "name": "created",
                  "type": {
                    "baseType": "LONG",
                    "attributes": []
                  },
                  "isNullable": true
                },
                {
                  "name": "lastModified",
                  "type": {
                    "baseType": "LONG",
                    "attributes": []
                  },
                  "isNullable": true
                }
              ]
            },
            "isNullable": false
          }
        ]
      },
      "isNullable": false
    },
    "isNullable": false
}
{
  "name": "record1",
  "description": "",
  "type": {
    "baseType": "RECORD",
    "attributes": [
      {
        "name": "foo",
        "type": {
          "baseType": "STRING", 
          "attributes": []
        }, 
        "isNullable": true
      },
      {
        "name": "bar",
        "type": {
          "baseType": "LONG", 
          "attributes": []
        },
        "isNullable": true
      },
      {
        "name": "baz",
        "type": {
          "baseType": "ARRAY", 
          "innerType": {
            "baseType": "STRING", 
            "attributes": []
          },
          "isNullable": true
        },
        "isNullable": true
      }
    ]
  },
  "isNullable": false
}