Difference between revisions of "Subject field"

From EPrints Documentation
Jump to: navigation, search
(Additional Properties)
 
(17 intermediate revisions by 5 users not shown)
Line 1: Line 1:
* [[Metadata]]
+
{{fieldtypes}}
** [[Set field]]
+
 
*** [[Subject field]]
 
  
 
== Description ==
 
== Description ==
 +
This field is like a [[Set field]] but rather than explicitly defining its set of options within the field configuration, the field configuration attribute <code>top</code> specifies the root of the [[Admin/Config._Tools/Edit_subject|subjects]] sub-tree to use as a set of options.
  
== Properties ==
+
== Inheritance ==
 +
* [[Metadata]]
 +
** [[Id field]]
 +
*** [[Text field]]
 +
**** [[Set field]]
 +
***** [[Subject field]]
  
As for [[set field]]s with the following differences...
+
== Additional Properties ==
 +
As for [[Set field#Additional_Properties|Set fields]] except for
  
 
{| border="1" cellpadding="3" cellspacing="0"
 
{| border="1" cellpadding="3" cellspacing="0"
| name || default || description
+
! Name !! Default Value !! Required !! Description !! Notes
 
|-
 
|-
| '''input_style''' || 0 || as for [[set field]] but with a different default.
+
| '''input_style''' || <tt>0</tt> || NO || How field is displayed in input form. || Different from [[Set field]] default.
 
|-
 
|-
| '''showall''' || 0 || ...
+
| '''nestids''' || <tt>1</tt> || NO || Options are colon (<tt>:</tt>) separated path of sub-tree IDs rather than just the specific subject ID.
 +
|| Useful if subjects likely to appear at multiple positions in the tree.
 
|-
 
|-
| '''showtop''' || 0 || ...
+
| '''options''' || <tt>undef</tt> || NO || Options from which to choose. || NOT inherited from [[Set field]]. Options provided by subject sub-tree defined in <tt>top</tt>.
 
|-
 
|-
| '''nestids''' || 1 || ...
+
| '''search_input_style''' || <tt>default</tt> || NO || How to display options in search form || Display options as <tt>select</tt> box rather than set of checkboxes.
 
|-
 
|-
| '''top''' || subjects || ...
+
| '''showall''' || <tt>0</tt> || NO || Whether to show all options under <code>top</code>, not just those marked as <tt>depositable</tt>. ||
 +
|-
 +
| '''showtop''' || <tt>0</tt> || NO || Whether to show the subject option defined by <code>top</code> as well as the subjects underneath. ||
 +
|-
 +
| '''top''' || <tt>subjects</tt> || YES || Specifies the subject ID that is the root node of the sub-tree of the subjects to use as options. ||
 
|}
 
|}
 +
 +
== Required Phrases ==
 +
No additional phrases beyond those required for [[Set field#Required_Phrases|Set fields]].  Also, <code>datasetid + "_fieldopt_" + fieldname + "_" + optionname</code> phrases are not required, as these are taken from the name assigned to the subject.
 +
 +
== Database ==
 +
Namedset fields are stored in the database as
 +
fieldname VARCHAR(255)
 +
 +
== API ==
 +
See [[API:EPrints/MetaField/Subject|API page]].
 +
 +
== Examples ==
 +
Most basic example.  Using <tt>divisions</tt> subjects tree sub-tree to provide options.
 +
{
 +
    name => 'division',
 +
    type => 'subject',
 +
    top => 'divisions',
 +
}
 +
Allow multiple subject options to be selected.
 +
{
 +
    name => 'subjects',
 +
    type => 'subject',
 +
    multiple => 1,
 +
    top => 'subjects',
 +
}
 +
Rendered value will link to corresponding listings page in <tt>subjects</tt> browse view.
 +
{
 +
    name => 'subjects',
 +
    type => 'subject',
 +
    multiple => 1,
 +
    top => 'subjects',
 +
    browse_link => 'subjects',
 +
}

Latest revision as of 11:20, 16 April 2023

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 - Recaptcha3 - Relation - Search - Secret - Set - Storable - Subject - Subobject - Text - Time - Timestamp - Url - Uuid


Description

This field is like a Set field but rather than explicitly defining its set of options within the field configuration, the field configuration attribute top specifies the root of the subjects sub-tree to use as a set of options.

Inheritance

Additional Properties

As for Set fields except for

Name Default Value Required Description Notes
input_style 0 NO How field is displayed in input form. Different from Set field default.
nestids 1 NO Options are colon (:) separated path of sub-tree IDs rather than just the specific subject ID. Useful if subjects likely to appear at multiple positions in the tree.
options undef NO Options from which to choose. NOT inherited from Set field. Options provided by subject sub-tree defined in top.
search_input_style default NO How to display options in search form Display options as select box rather than set of checkboxes.
showall 0 NO Whether to show all options under top, not just those marked as depositable.
showtop 0 NO Whether to show the subject option defined by top as well as the subjects underneath.
top subjects YES Specifies the subject ID that is the root node of the sub-tree of the subjects to use as options.

Required Phrases

No additional phrases beyond those required for Set fields. Also, datasetid + "_fieldopt_" + fieldname + "_" + optionname phrases are not required, as these are taken from the name assigned to the subject.

Database

Namedset fields are stored in the database as

fieldname VARCHAR(255)

API

See API page.

Examples

Most basic example. Using divisions subjects tree sub-tree to provide options.

{
    name => 'division',
    type => 'subject',
    top => 'divisions',
}

Allow multiple subject options to be selected.

{
    name => 'subjects',
    type => 'subject',
    multiple => 1,
    top => 'subjects',
}

Rendered value will link to corresponding listings page in subjects browse view.

{
    name => 'subjects',
    type => 'subject',
    multiple => 1,
    top => 'subjects',
    browse_link => 'subjects',
}