使用されているのはRevit2021だと予想して、そちらで試してみました!
すると色々問題があることが分かりました・・・。
たぶん、ORやANDノードがリストに対応していません。
なので、nullになってしまうのだと思います。
ノードのみでどうにかしようとトライしましたが、
うまくいかず・・・すみません、諦めました。
代わりにORやANDの動きをするPython Scriptを作りました。
とりあえず、こちらを使用していただければ、乗り切れると思います。
また、==ノードも挙動がおかしかったので、List.Equalsに変更しています。
長くなりそうですが、下に色々添付します。
@meme1 さんは書きました:
加えてご質問したいのですが、わたしが自分でOrのノードを配置した際にはノード右側のboolという表示は出てきません。こちらはバージョンの違いなどで特に気にする必要はないのでしょうか。
これは、気にする必要はないですし、ORノードは使う必要もないです。

ANDのコード
# リスト入力じゃなかったら強制リスト化
bools1 = IN[0] if isinstance(IN[0], list) else [IN[0]]
bools2 = IN[1] if isinstance(IN[1], list) else [IN[1]]
# AND処理
and_bools = []
for bool1, bool2 in zip(bools1, bools2):
if bool1 and bool2:
and_bools.append(True)
else:
and_bools.append(False)
OUT = and_bools
ORのコード
# リスト入力じゃなかったら強制リスト化
bools1 = IN[0] if isinstance(IN[0], list) else [IN[0]]
bools2 = IN[1] if isinstance(IN[1], list) else [IN[1]]
# OR処理
or_bools = []
for bool1, bool2 in zip(bools1, bools2):
if bool1 or bool2:
or_bools.append(True)
else:
or_bools.append(False)
OUT = or_bools
ついでに、ノードとかもPython化したもの
import clr
clr.AddReference("RevitNodes")
from Revit.Elements import *
elements = IN[0]
level = IN[1]
family_name1 = IN[2]
family_name2 = IN[3]
list = []
for element in elements:
element_lvl = Element.GetParameterValueByName(element, "参照レベル")
element_family_name = element.Type.FamilyName
if element_lvl == level:
if (element_family_name == family_name1
or element_family_name == family_name2):
list.append(element)
OUT = list