Field Definition Restrictions

Introduction

Field definitions are sent to our search platform Apache Solr and hence must adhere to certain requirements in addition to our own business logic.

Key restrictions

Creating field definitions having a certain key, or saving metadata with a dynamic key, has the following restrictions on that key.

  1. Forbidden patterns (case insensitive): Global, searchtextplaceholder, *_lc, *_thesaurus, *_orig, *_index

  2. Must adhere to the regular expression [a-zA-Z0-9_-]+

Creating or saving a record with one or more invalid key names will also throw an error.

Type restriction

Creating a dynamic field definition of the type ComplexField is not allowed.

Changing standard field definitions

Changing the standard field definitions from https://mediahaven.atlassian.net/wiki/spaces/CS/pages/42074134 has been restricted to only the following operations

  • Setting global to true (setting to false is not allowed)

  • Setting index to true (setting to false is not allowed)

  • Adding or removing a field from the advanced search. Obsolete from version 24.2 due https://mediahaven.atlassian.net/wiki/spaces/CS/pages/3273949212of type advanced search

  • Changing the scheme name on limited categories.

  • Adding child fields under the following fields

    • Authors, Relations, ReferenceCodes, ReferenceTitles, Profiles, UserContact

    • Changes to children in these fields are allowed

To further prevent these keys from being used, the metadata validation has been made stricter. Trying to create or save a record with one or more invalid key names will throw an error.

For existing records with invalid keys, a standard migration has been provided that deletes such fields.

Child field definitions Restrictions

The following properties are for child field definitions always the same as the top field definition

  • Index name

  • Family