:py:mod:`ITR.interfaces` ======================== .. py:module:: ITR.interfaces Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: ITR.interfaces.AggregationContribution ITR.interfaces.Aggregation ITR.interfaces.ScoreAggregation ITR.interfaces.ScoreAggregationScopes ITR.interfaces.ScoreAggregations ITR.interfaces.ScenarioInterface ITR.interfaces.PortfolioCompany ITR.interfaces.IDataProviderCompany ITR.interfaces.SortableEnum ITR.interfaces.EScope ITR.interfaces.ETimeFrames ITR.interfaces.ETargetReference ITR.interfaces.S3Category ITR.interfaces.IDataProviderTarget .. py:class:: AggregationContribution Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: company_name :annotation: :str .. py:attribute:: company_id :annotation: :str .. py:attribute:: temperature_score :annotation: :float .. py:attribute:: contribution_relative :annotation: :Optional[float] .. py:attribute:: contribution :annotation: :Optional[float] .. py:method:: __getitem__(self, item) .. py:class:: Aggregation Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: score :annotation: :float .. py:attribute:: proportion :annotation: :float .. py:attribute:: contributions :annotation: :List[AggregationContribution] .. py:method:: __getitem__(self, item) .. py:class:: ScoreAggregation Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: all :annotation: :Aggregation .. py:attribute:: influence_percentage :annotation: :float .. py:attribute:: grouped :annotation: :Dict[str, Aggregation] .. py:method:: __getitem__(self, item) .. py:class:: ScoreAggregationScopes Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: S1 :annotation: :Optional[ScoreAggregation] .. py:attribute:: S2 :annotation: :Optional[ScoreAggregation] .. py:attribute:: S1S2 :annotation: :Optional[ScoreAggregation] .. py:attribute:: S3 :annotation: :Optional[ScoreAggregation] .. py:attribute:: S1S2S3 :annotation: :Optional[ScoreAggregation] .. py:method:: __getitem__(self, item) .. py:class:: ScoreAggregations Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: short :annotation: :Optional[ScoreAggregationScopes] .. py:attribute:: mid :annotation: :Optional[ScoreAggregationScopes] .. py:attribute:: long :annotation: :Optional[ScoreAggregationScopes] .. py:method:: __getitem__(self, item) .. py:class:: ScenarioInterface Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: number :annotation: :int .. py:attribute:: engagement_type :annotation: :Optional[str] .. py:class:: PortfolioCompany Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: company_name :annotation: :str .. py:attribute:: company_id :annotation: :str .. py:attribute:: company_isin :annotation: :Optional[str] .. py:attribute:: company_lei :annotation: :Optional[str] .. py:attribute:: investment_value :annotation: :float .. py:attribute:: engagement_target :annotation: :Optional[bool] = False .. py:attribute:: user_fields :annotation: :Optional[dict] .. py:class:: IDataProviderCompany Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: company_name :annotation: :str .. py:attribute:: company_id :annotation: :str .. py:attribute:: isic :annotation: :str .. py:attribute:: ghg_s1 :annotation: :Optional[float] .. py:attribute:: ghg_s2 :annotation: :Optional[float] .. py:attribute:: ghg_s1s2 :annotation: :Optional[float] .. py:attribute:: ghg_s3 :annotation: :Optional[float] .. py:attribute:: ghg_s3_1 :annotation: :Optional[float] .. py:attribute:: ghg_s3_2 :annotation: :Optional[float] .. py:attribute:: ghg_s3_3 :annotation: :Optional[float] .. py:attribute:: ghg_s3_4 :annotation: :Optional[float] .. py:attribute:: ghg_s3_5 :annotation: :Optional[float] .. py:attribute:: ghg_s3_6 :annotation: :Optional[float] .. py:attribute:: ghg_s3_7 :annotation: :Optional[float] .. py:attribute:: ghg_s3_8 :annotation: :Optional[float] .. py:attribute:: ghg_s3_9 :annotation: :Optional[float] .. py:attribute:: ghg_s3_10 :annotation: :Optional[float] .. py:attribute:: ghg_s3_11 :annotation: :Optional[float] .. py:attribute:: ghg_s3_12 :annotation: :Optional[float] .. py:attribute:: ghg_s3_13 :annotation: :Optional[float] .. py:attribute:: ghg_s3_14 :annotation: :Optional[float] .. py:attribute:: ghg_s3_15 :annotation: :Optional[float] .. py:attribute:: country :annotation: :Optional[str] .. py:attribute:: region :annotation: :Optional[str] .. py:attribute:: sector :annotation: :Optional[str] .. py:attribute:: industry_level_1 :annotation: :Optional[str] .. py:attribute:: industry_level_2 :annotation: :Optional[str] .. py:attribute:: industry_level_3 :annotation: :Optional[str] .. py:attribute:: industry_level_4 :annotation: :Optional[str] .. py:attribute:: company_revenue :annotation: :Optional[float] = 0.0 .. py:attribute:: company_market_cap :annotation: :Optional[float] = 0.0 .. py:attribute:: company_enterprise_value :annotation: :Optional[float] = 0.0 .. py:attribute:: company_total_assets :annotation: :Optional[float] = 0.0 .. py:attribute:: company_cash_equivalents :annotation: :Optional[float] = 0.0 .. py:attribute:: sbti_validated :annotation: :bool .. py:class:: SortableEnum Bases: :py:obj:`enum.Enum` Generic enumeration. Derive from this class to define new enumerations. .. py:method:: __str__(self) Return str(self). .. py:method:: __ge__(self, other) Return self>=value. .. py:method:: __gt__(self, other) Return self>value. .. py:method:: __le__(self, other) Return self<=value. .. py:method:: __lt__(self, other) Return self List[EScope] :classmethod: Get a list of scopes that should be calculated if the user leaves it open. :return: A list of EScope objects .. py:class:: ETimeFrames Bases: :py:obj:`SortableEnum` Generic enumeration. Derive from this class to define new enumerations. .. py:attribute:: SHORT :annotation: = short .. py:attribute:: MID :annotation: = mid .. py:attribute:: LONG :annotation: = long .. py:class:: ETargetReference Bases: :py:obj:`SortableEnum` Generic enumeration. Derive from this class to define new enumerations. .. py:attribute:: ABSOLUTE :annotation: = absolute .. py:attribute:: INT_TO_ABS :annotation: = int_to_abs .. py:attribute:: INTENSITY :annotation: = intensity .. py:attribute:: T_SCORE :annotation: = t_score .. py:class:: S3Category Bases: :py:obj:`SortableEnum` Generic enumeration. Derive from this class to define new enumerations. .. py:attribute:: CAT_1 :annotation: = 1 .. py:attribute:: CAT_2 :annotation: = 2 .. py:attribute:: CAT_3 :annotation: = 3 .. py:attribute:: CAT_4 :annotation: = 4 .. py:attribute:: CAT_5 :annotation: = 5 .. py:attribute:: CAT_6 :annotation: = 6 .. py:attribute:: CAT_7 :annotation: = 7 .. py:attribute:: CAT_8 :annotation: = 8 .. py:attribute:: CAT_9 :annotation: = 9 .. py:attribute:: CAT_10 :annotation: = 10 .. py:attribute:: CAT_11 :annotation: = 11 .. py:attribute:: CAT_12 :annotation: = 12 .. py:attribute:: CAT_13 :annotation: = 13 .. py:attribute:: CAT_14 :annotation: = 14 .. py:attribute:: CAT_15 :annotation: = 15 .. py:attribute:: CAT_H_LINE :annotation: = 0 .. py:attribute:: N_A .. py:class:: IDataProviderTarget Bases: :py:obj:`pydantic.BaseModel` .. py:attribute:: company_id :annotation: :str .. py:attribute:: target_type :annotation: :str .. py:attribute:: intensity_metric :annotation: :Optional[str] .. py:attribute:: base_year_ts :annotation: :Optional[float] .. py:attribute:: end_year_ts :annotation: :Optional[float] .. py:attribute:: scope :annotation: :EScope .. py:attribute:: s3_category :annotation: :Optional[S3Category] .. py:attribute:: coverage_s1 :annotation: :Optional[float] .. py:attribute:: coverage_s2 :annotation: :Optional[float] .. py:attribute:: coverage_s3 :annotation: :Optional[float] .. py:attribute:: reduction_ambition :annotation: :Optional[float] .. py:attribute:: base_year :annotation: :int .. py:attribute:: base_year_ghg_s1 :annotation: :Optional[float] .. py:attribute:: base_year_ghg_s2 :annotation: :Optional[float] .. py:attribute:: base_year_ghg_s1s2 :annotation: :Optional[float] .. py:attribute:: base_year_ghg_s3 :annotation: :Optional[float] .. py:attribute:: start_year :annotation: :Optional[int] .. py:attribute:: end_year :annotation: :int .. py:attribute:: statement_date :annotation: :Optional[datetime.date] .. py:attribute:: time_frame :annotation: :Optional[ETimeFrames] .. py:attribute:: achieved_reduction :annotation: :Optional[float] = 0.0 .. py:attribute:: to_calculate :annotation: :Optional[bool] = False .. py:attribute:: target_ids :annotation: :List[str] .. py:method:: pre(cls, values) :classmethod: .. py:method:: validate_e(cls, val) .. py:method:: convert_to_list(cls, v) targets can be combined so target_ids field must be a list pre=True is used to ensure that the validator is called before the default_factory with pre=True and default_factory the users can supply single strings, e.g. "Target1" .. py:method:: equals(self, other: IDataProviderTarget) -> bool Check if two targets are equal. :param other: The other target :return: True if the targets are equal, False otherwise