@@ -575,12 +575,16 @@ def recursive_validator(self, stac_type: str) -> bool:
575575 self .schema = set_schema_addr (self .version , stac_type .lower ())
576576 message = self .create_message (stac_type , "recursive" )
577577 message ["valid_stac" ] = False
578+ # Add validator_engine field to track validation method
579+ message ["validator_engine" ] = "pydantic" if self .pydantic else "jsonschema"
578580
579581 try :
580582 if self .pydantic :
581- # pydantic_validator will set its own schema message
583+ # Set pydantic model info in schema field
584+ model_name = f"stac-pydantic { stac_type .capitalize ()} model"
585+ message ["schema" ] = [model_name ]
586+ # Run pydantic validation
582587 msg = self .pydantic_validator (stac_type )
583- message ["schema" ] = msg ["schema" ]
584588 else :
585589 msg = self .default_validator (stac_type )
586590 message ["schema" ] = msg ["schema" ]
@@ -682,11 +686,14 @@ def recursive_validator(self, stac_type: str) -> bool:
682686 if link ["rel" ] == "item" :
683687 self .schema = set_schema_addr (self .version , stac_type .lower ())
684688 message = self .create_message (stac_type , "recursive" )
689+ message ["validator_engine" ] = "pydantic" if self .pydantic else "jsonschema"
685690 try :
686691 if self .pydantic :
687- # Use pydantic validator for child items
692+ # Set pydantic model info in schema field for child items
693+ model_name = f"stac-pydantic { stac_type .capitalize ()} model"
694+ message ["schema" ] = [model_name ]
695+ # Run pydantic validation
688696 msg = self .pydantic_validator (stac_type )
689- message ["schema" ] = msg ["schema" ]
690697 elif self .version == "0.7.0" :
691698 schema = fetch_and_parse_schema (self .schema )
692699 # Prevent unknown url type issue
0 commit comments