:py:mod:`SBTi.interfaces` ========================= .. py:module:: SBTi.interfaces Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: SBTi.interfaces.AggregationContribution SBTi.interfaces.Aggregation SBTi.interfaces.ScoreAggregation SBTi.interfaces.ScoreAggregationScopes SBTi.interfaces.ScoreAggregations SBTi.interfaces.ScenarioInterface SBTi.interfaces.PortfolioCompany SBTi.interfaces.IDataProviderCompany SBTi.interfaces.SortableEnum SBTi.interfaces.EScope SBTi.interfaces.ETimeFrames SBTi.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:: 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] = nan .. 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_s1s2 :annotation: :Optional[float] .. py:attribute:: ghg_s3 :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] .. py:attribute:: company_market_cap :annotation: :Optional[float] .. py:attribute:: company_enterprise_value :annotation: :Optional[float] .. py:attribute:: company_total_assets :annotation: :Optional[float] .. py:attribute:: company_cash_equivalents :annotation: :Optional[float] .. py:attribute:: sbti_validated :annotation: :bool .. py:class:: SortableEnum(*args, **kwds) Bases: :py:obj:`enum.Enum` Create a collection of name/value pairs. Example enumeration: >>> class Color(Enum): ... RED = 1 ... BLUE = 2 ... GREEN = 3 Access them by: - attribute access:: >>> Color.RED - value lookup: >>> Color(1) - name lookup: >>> Color['RED'] Enumerations can be iterated over, and know how many members they have: >>> len(Color) 3 >>> list(Color) [, , ] Methods can be added to enumerations, and members can have their own attributes -- see the documentation for details. .. 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>> class Color(Enum): ... RED = 1 ... BLUE = 2 ... GREEN = 3 Access them by: - attribute access:: >>> Color.RED - value lookup: >>> Color(1) - name lookup: >>> Color['RED'] Enumerations can be iterated over, and know how many members they have: >>> len(Color) 3 >>> list(Color) [, , ] Methods can be added to enumerations, and members can have their own attributes -- see the documentation for details. .. py:attribute:: S1 :annotation: = S1 .. py:attribute:: S2 :annotation: = S2 .. py:attribute:: S3 :annotation: = S3 .. py:attribute:: S1S2 :annotation: = S1+S2 .. py:attribute:: S1S2S3 :annotation: = S1+S2+S3 .. py:method:: get_result_scopes(cls) -> 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(*args, **kwds) Bases: :py:obj:`SortableEnum` Create a collection of name/value pairs. Example enumeration: >>> class Color(Enum): ... RED = 1 ... BLUE = 2 ... GREEN = 3 Access them by: - attribute access:: >>> Color.RED - value lookup: >>> Color(1) - name lookup: >>> Color['RED'] Enumerations can be iterated over, and know how many members they have: >>> len(Color) 3 >>> list(Color) [, , ] Methods can be added to enumerations, and members can have their own attributes -- see the documentation for details. .. py:attribute:: SHORT :annotation: = short .. py:attribute:: MID :annotation: = mid .. py:attribute:: LONG :annotation: = long .. 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:: scope :annotation: :EScope .. py:attribute:: coverage_s1 :annotation: :float .. py:attribute:: coverage_s2 :annotation: :float .. py:attribute:: coverage_s3 :annotation: :float .. py:attribute:: reduction_ambition :annotation: :float .. py:attribute:: base_year :annotation: :int .. py:attribute:: base_year_ghg_s1 :annotation: :float .. py:attribute:: base_year_ghg_s2 :annotation: :float .. py:attribute:: base_year_ghg_s3 :annotation: :float .. py:attribute:: start_year :annotation: :Optional[int] .. py:attribute:: end_year :annotation: :int .. py:attribute:: time_frame :annotation: :Optional[ETimeFrames] .. py:attribute:: achieved_reduction :annotation: :Optional[float] = 0 .. py:method:: validate_e(cls, val)