def _set_definition()

in etl/glean.py [0:0]


    def _set_definition(self, full_defn: dict):
        # sort from latest to earliest
        self.definition_history = list(
            sorted(
                full_defn[self.HISTORY_KEY],
                key=lambda x: datetime.fromisoformat(x["dates"]["last"]),
                reverse=True,
            )
        )

        # The canonical definition for up-to-date schemas
        self.definition = self.definition_history[0]
        self.definition["name"] = full_defn[self.NAME_KEY]
        self.definition["origin"] = full_defn[self.ORIGIN_KEY]
        self.definition["in_source"] = full_defn[self.IN_SOURCE_KEY]
        self.definition["sampling_info"] = full_defn.get(self.SAMPLING_INFO_KEY)

        # first seen is the earliest date in the history
        self.definition["date_first_seen"] = self.definition_history[-1]["dates"]["first"]