Tech Blog

Alma Indication Rule Examples

See also:

Retrieve all records which contain more than occurrence of 900 field subfield a with text Art and Design”

rule "Retrieve all records which contain more than occurrence of 900 field subfield a with text Art and Design"
when
(existsMoreThanOnce "900.a.Art and Design")
then
set indication."true"
end

Retrieve all records which have neither a 260 or a 264

rule "Retrieve all records which have neither a 260 or a 264"
when
     ((not exists "260") AND (not exists "264"))
then
                set indication."true"
end

Using wildcards in field codes: Retrieve all records which have a subfield 0 in a field which starts with ‘65’, for example 650 and 659:

rule "Contains a 65X subfield 0"
when
     exists "65*.0.*"
then
     set indication."true"
end

Using wildcards in field codes: Retrieve all records which have a subfield 0 in a field which starts with ‘6’, for example 600, 630, 650 and 659:

rule "Contains a 6XX subfield 0"
when
     exists "6**.0.*"
then
     set indication."true"
end

Retrieve all records which do have a 776 subfield x and do not have a 77s subfield z

rule "776x present 776z not present"
when
(exists "776.x" AND not exists "776.z")
then
set indication."true"
end

Retrieve all records which have Knopf in 260 subfield b or a 264 subfield b

rule "260 264 Palgrave"
when
(exists "260.b.*Knopf*" OR exists "264.b.*Knopf*")
then
set indication."true"
end

Retrieve all records which have a 300 subfield a with text loose leaf or loose-leaf

rule "300a loose leaf"
when
exists "300.a.*loose*leaf*"
then
set indication."true"
end

Retrieve all records which contain a 970 with subfield a “minesthesis”

rule "Contains 970 with subfield a minesthesis"
when
     exists "970.a.minesthesis"
then
     set indication."true"
end

Retrieve all records which do not contain a 970 with subfield a “minesthesis”

rule "Does not contain 970 with subfield a minesthesis"
when
     not exists "970.a.minesthesis"
then
     set indication."true"
end

Retrieve all records which contain a 76X – 78X Linking entry field

rule "Retrieve all records which contain a 76X - 78X Linking entry field"
when
     (exists "76*") OR (exists "77*") OR (exists "78*")
then
     set indication."true"
end

Retrieve all records which have an 830 that does not have a 2nd indicator 0

rule "830 without 2nd indicator 0"
when
((exists "830") AND ( not exists "830.{*,0}"))
then
set indication."true"
end

Retrieve all records which have a 6XX field with subfield 2 bisacsh

rule "650 2 bisacsh"
when
(exists "6**.2.bisacsh")
then
set indication."true"
end

Retrieve all records which have a 245 field with no second indicator or second indicator 0 and subfield a with an initial article

rule "Retrieve all records which have a 245 field with no second indicator or second indicator 0 and subfield a with an initial article"
when
   (  ( (exists "245.{*,-}.a.*") OR (exists "245.{*,0}.a.*") ) AND ( (exists "245.a.A *") OR (exists "245.a.An *") OR (exists "245.a.The *") ) )
then
     set indication."true"
end

Retrieve all records which have eng (English) in position 35-37 of the 008

rule "have eng for 008 pos. 35-37 (language)"
when
       existsControl "008.{35,3}.eng"
then
     set indication."true"
end

Retrieve all records which have blank (no language) in position 35-37 of the 008

rule "have blank for 008 pos. 35-37 (language)"
when
       existsControl "008.{35,3}.   "
then
     set indication."true"
end

Retrieve all records which have a 949 field with a subfield a with any contents

rule "Contains 949 with subfield a"
when
     exists "949.a.*"
then
     set indication."true"
end

Retrieve all records which have either a 1XX with a subfield 0 or 6XX with subfield 0 or a 7XX with subfield 0

rule "Contains a 1XX or 6XX or 7XX subfield 0"
when
     ((exists "1**.0.*") OR (exists "6**.0.*") OR (exists "7**.0.*"))
then
     set indication."true"
end

Retrieve all records which have a 700 without 2nd indicator 2 and also have either a 77X or 78X

rule "Retrieve all records which have a 700 field without 2nd indicator 2 and also have 77X or 78X"
when
     ( (exists "700.a.*") AND (not exists "700.{*,2}") ) AND ( (exists "77*") OR (exists "78*") )
then
     set indication."true"
end

Retrieve all records which have multiple 300 fields each having a subfield a

rule "Retrieve all records which contain two subfield a occurrences in 300"
    when
        existsMoreThanOnce "300.a"
    then
        set indication."true"
end

Retrieve all records which have a 773 field with 2nd indicator 8

rule "Retrieve all records which have a 773 field with 2nd indicator 8"
when
     (exists "773.{*,8}")
then
                set indication."true"
end

Retrieve all records which have a 773 field without 2nd indicator 8

rule "Retrieve all records which have a 773 field without 2nd indicator 8"
when
     ((exists "773") AND (not exists "773.{*,8}"))
then
                set indication."true"
end

Retrieve all records which contain one of the following in 100d d., b., ca., or fl.

rule "A list of catalog records containing abbreviations d., b., ca., or fl. in subfield d of a MARC 100"
when
     ((exists "100.d.*d\\\\.*") OR (exists "100.d.*b\\\\.*") OR (exists "100.d.*ac\\\\.*") OR (exists "100.d.*fl\\\\.*"))
then
                set indication."true"
end

Leave a Reply