@@ -693,33 +693,26 @@ def _filter_properties_required_field(
693693 prop_name = prop .get ("name" , "unknown" )
694694 node_label = node_type .get ("label" , "unknown" )
695695
696- if isinstance (required_value , str ):
697- if required_value .lower () in ("true" , "yes" , "1" ):
698- prop ["required" ] = True
699- logging .info (
700- f"Converted 'required' value { required_value } to True "
701- f"for property '{ prop_name } ' on node '{ node_label } '"
702- )
703- elif required_value .lower () in ("false" , "no" , "0" ):
704- prop ["required" ] = False
705- logging .info (
706- f"Converted 'required' value '{ required_value } ' to False "
707- f"for property '{ prop_name } ' on node '{ node_label } ' "
708- )
709- # Unknown string values
710- else :
711- logging .info (
712- f"Removing unrecognized 'required' value '{ required_value } ' "
713- f"for property '{ prop_name } ' on node '{ node_label } '. "
714- f"Using default (False) " # TODO: Not sure if we have to convert it to the default value - double check!
715- )
716- prop .pop ("required" , None )
696+ # Convert to string to handle int values like 1 or 0
697+ required_str = str (required_value ).lower ()
698+
699+ if required_str in ("true" , "yes" , "1" ):
700+ prop ["required" ] = True
701+ logging .info (
702+ f"Converted 'required' value '{ required_value } ' to True "
703+ f"for property '{ prop_name } ' on node '{ node_label } '"
704+ )
705+ elif required_str in ("false" , "no" , "0" ):
706+ prop ["required" ] = False
707+ logging .info (
708+ f"Converted 'required' value '{ required_value } ' to False "
709+ f"for property '{ prop_name } ' on node '{ node_label } '"
710+ )
717711 else :
718- # Non-string, non-boolean - remove
719712 logging .info (
720- f"Removing invalid 'required' value '{ required_value } ' (type: { type ( required_value ). __name__ } ) "
713+ f"Removing unrecognized 'required' value '{ required_value } ' "
721714 f"for property '{ prop_name } ' on node '{ node_label } '. "
722- f"Using default (False). "
715+ f"Using default (False)."
723716 )
724717 prop .pop ("required" , None )
725718
@@ -743,7 +736,7 @@ def _enforce_required_for_constraint_properties(
743736 if label and prop :
744737 constraint_props .setdefault (label , set ()).add (prop )
745738
746- # Skop node_types without constraints
739+ # Skip node_types without constraints
747740 for node_type in node_types :
748741 label = node_type .get ("label" )
749742 if label not in constraint_props :
0 commit comments