--- /dev/null
+Display alternate graphic (880) fields
+======================================
+
+By default, Evergreen displays alternate graphic fields, if any, for
+contributors (1xx / 7xx), titles (245), edition statements (250), imprints
+(260), notes (5xx), and subjects (6xx) in search results and record details
+per the Library of Congress MARC21 specifications:
+
+* http://www.loc.gov/marc/bibliographic/bd880.html
+* http://www.loc.gov/marc/bibliographic/ecbdcntf.html
+* http://www.loc.gov/marc/bibliographic/ecbdmulti.html (Model A)
+
+Default display
+---------------
+In general, alternate graphic fields display below the corresponding
+primary field. One exception is the attribution summary on the record details
+page, in which the alternate graphic field contents display between the
+primary field content and the attribution statement. To support CSS
+customizations, HTML elements for the graphic fields have the class attribute
+value `graphic880`.
+
+Implementation details
+----------------------
+The template file `parts/misc_util.tt2` defines two macros for retrieving
+linked 880 fields:
+
+* `get_graphic_880s`: given a _target_field_ scalar value representing a MARC
+ field tag, populate the _graphic_880s_ list with hashes containing the
+ target field tag and any graphic fields linked to that particular tag, with
+ the values for each being a simple concatenation of all subfields that are
+ not control subfields (per
+ http://www.loc.gov/marc/bibliographic/ecbdcntf.html). The structure of the
+ `graphic_880s` list is as follows:
++
+------------------------------------------------------------------------
+[
+ {
+ "primary": {"occur": 01, "value": "foo foo"},
+ "graphic": [
+ {
+ "occur": 01,
+ "value": "bar bar",
+ "orient": "rtl",
+ "script": "CJK"
+ }
+ ]
+ }
+]
+------------------------------------------------------------------------
+* `get_linked_880s` macro iterates over the content of the `linked_fields`
+ list, in which each element of the list to be a scalar representing the $6
+ control subfield link info. The macro populates the `graphics` list with a
+ set of graphic field hashes with the following structure:
++
+------------------------------------------------------------------------
+[
+ {
+ "occur": 01,
+ "value": "bar bar",
+ "orient": "rtl",
+ "script": "CJK"
+ }
+]
+------------------------------------------------------------------------
+
+`misc_util.tt2` preserves legacy attribute lists to enable previous TPAC
+customizations to continue to function normally.