Overview

A struct is an Ontology property base type that allows users to create schema-based properties with multiple fields. Struct properties are created from struct type dataset columns. Struct property fields can have different data sources as long as the property is transformed into a single struct type column before being defined in the Ontology.

Many common object properties can be modeled as structs. For example, a Full Name property with the fields First Name and Last Name, or an Address property that includes Street, City, Postal Code, and Country fields.

Struct configuration

The following is a list of struct property constraints and allowed configurations:

  • Structs have a depth of one and cannot be nested.
  • Structs must have at least 1 field, and can contain up to 10 fields.
  • Only the following field types are currently supported:
    • BOOLEAN
    • BYTE
    • DATE
    • DECIMAL
    • DOUBLE
    • FLOAT
    • GEOHASH
    • INTEGER
    • LONG
    • SHORT
    • STRING
    • TIMESTAMP

Current levels of support

As support for struct property types expands, availability will vary across the Palantir platform.

Structs are currently supported in the following applications and services:

  • Ontology Manager: Define and edit structs.
  • Pipeline Builder: Define and edit structs.
  • Workshop: Display and use struct properties as variables.
  • Marketplace: Package and install struct properties.
  • Object Explorer: Search for objects by their struct property values (struct field search is under development).
  • Ontology SDK: Load struct properties and search for objects by their struct property values in Ontology SDK applications.

Structs are not yet supported in the following services:

  • Functions: Use of struct properties in Functions is not currently supported.
  • Actions: Use of struct properties in Actions is not currently supported.

Structs will not be supported in Object Storage V1 (Phonograph) and can currently only be created from datasets and Restricted Views.