{Z39-50-userInfoFormat editReplaceActionQualifier (10)} DEFINITIONS ::= BEGIN -- Batch edit / replace is a form of special update enabling an origin to convey -- instructions to a target for a group of records to be changed in a similar way. -- The special action reduces the traffic that would be required to process -- multiple element update requests. -- To request a batch edit / replace, the origin: -- - Conducts a search to identify candidate records -- - Uses the Persistent Result Set Extended Service to request -- the target to create a persistent result from the transient result -- set with a specific name. -- - Creates an edit / replace record. -- - Sends a special update request to the target -- with the edit / replace record as an external -- parameter in the actionQualifier. --The target may fail some, e.g. because a record is not available for update, -- or because its version is incorrect, but process others. -- Detailed results are reported to the task package including results for each -- record processed or not processed. EditReplaceActionQualifier ::= SEQUENCE{ persistentResultSetPackageName [1] IMPLICIT InternationalString, numberOfRecords [2] IMPLICIT INTEGER, -- number of records from the transient result -- set is included as a check. If this differs -- from the number of records in the persistent -- result set, the target should not proceed -- with the update request. creationDateTime [3] IMPLICIT EXTERNAL, -- use Z39.50 Date/Time 1.2.840.10003.10.6 -- Date and time the persistent result set task -- package was created by the target. -- If the date and time of last update of a record -- in the persistent result set is more recent, -- the target should not process the update for that record. reviewCode [4] IMPLICIT InternationalString OPTIONAL, reviewNote [5] IMPLICIT InternationalString OPTIONAL, changeDataInfo [6] IMPLICIT SEQUENCE OF SEQUENCE{ fieldIdentifier [1] IMPLICIT InternationalString OPTIONAL, -- The field identifiers must correlate with the database -- name and schema cited in the element update package. -- If there is more than a single occurrence of a specified -- field in the record, the update should be applied to all -- occurrences of the field matching the update criteria. -- If the origin does not specify any field identifiers in the -- edit / replace record, the target should look for the -- old value anywhere in the record. oldValue [2] IMPLICIT InternationalString OPTIONAL, -- The old value should consist of the entire value to be -- replaced or deleted as it would appear in the field, -- with punctuation and spaces. The old value truncation-- attribute should include values from Bib1 Table A3-5, e.g. -- 1 = right truncation, 100 = do not truncate. In the absence -- of a truncation attribute, the target defines the default. oldValueTruncationAttribute [3] IMPLICIT InternationalString OPTIONAL, conditionalField [4] IMPLICIT InternationalString OPTIONAL, conditionalValue [5] IMPLICIT InternationalString OPTIONAL, -- The update should only occur if the conditional -- field/ value pair is present in the record, taking -- into account the specified conditional truncation attribute. conditionalTruncationAttribute [6] IMPLICIT InternationalString OPTIONAL, newValue [7] IMPLICIT InternationalString OPTIONAL, -- The new value is a mandatory field except where the -- edit / replace type is set to field or subfield delete. editReplaceType [8] IMPLICIT INTEGER{ fieldInsert (0), fieldDelete (1), fieldReplace (2), subfieldInsert (3), subfieldDelete (4), subfieldReplace (5), subfieldMerge (6), indicatorChange (7), dataStringChange (8)}, case [9] IMPLICIT BOOLEAN OPTIONAL -- 'true' means 'case dependent' }} END