Multipart field

From EPrints Documentation
Revision as of 16:38, 15 April 2023 by Drn@ecs.soton.ac.uk (talk | contribs) (Re-instated this field type as it is the super class of Name field.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


Metadata Fields: Arclanguage - Base64 - Bigint - Boolean - Compound - Counter - Dataobjref - Date - Decimal - Email - Fields - Float - Id - Idci - Image - Int - Itemref - Keywords - Langid - Longtext - Longtext_counter - Multilang - Multipart - Name - Namedset - Pagerange - Recaptcha - Relation - Search - Secret - Set - Storable - Subject - Subobject - Text - Time - Timestamp - Url - Uuid


Description

This field is similar to a Compound field but only intended for single sets of values (i.e. multiple => 0). So that it can be used to build complex fields like the Name field.

Inheritance

Additional Properties

Name Default Value Required Description Notes
fields n/a YES The sub-fields of the main field
fields_cache n/a NO A cache of the sub-fields This property is generated from fields.
fields_index {} NO Index of sub_name to field object This property is generated from fields.

Required Phrases

In addition tothe standard metadata field phrasestype. The sub-field names in the form:

 datasetid + "_fieldname_" + fieldname + "_" + subfieldname

Individual fieldhelp phrases are not required the help for sub-fields should be included in the fieldhelp for the main field.

Database

Multipart fields are stored in the database as multiple fields, whose types are determined in the sub-field configuration.

API

See API page.

Examples

Most basic example.

{
    name => 'email',
    type => 'multipart',
    fields => [
        {
            sub_name => 'subject'
            type => 'text'
        },
        {
            sub_name => 'body'
            type => 'longtext'
        },
}