<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with Wdesk from Workiva-->
<!--Copyright 2023 Workiva-->
<!--r:1840064d-fe0d-4a74-8aaa-9ad0e5f63ae5,g:c5df48a4-5655-45ef-86e6-534b1d74c73c-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:ottr="http://www.otpco.com/20230331" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.otpco.com/20230331">
  <xs:import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ottr-20230331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ottr-20230331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ottr-20230331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ottr-20230331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="Cover" roleURI="http://www.otpco.com/role/Cover">
        <link:definition>0000001 - Document - Cover</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDBALANCESHEETSunaudited" roleURI="http://www.otpco.com/role/CONSOLIDATEDBALANCESHEETSunaudited">
        <link:definition>0000002 - Statement - CONSOLIDATED BALANCE SHEETS (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDBALANCESHEETSunauditedParentheticals" roleURI="http://www.otpco.com/role/CONSOLIDATEDBALANCESHEETSunauditedParentheticals">
        <link:definition>0000003 - Statement - CONSOLIDATED BALANCE SHEETS (unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFINCOMEunaudited" roleURI="http://www.otpco.com/role/CONSOLIDATEDSTATEMENTSOFINCOMEunaudited">
        <link:definition>0000004 - Statement - CONSOLIDATED STATEMENTS OF INCOME (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEunaudited" roleURI="http://www.otpco.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEunaudited">
        <link:definition>0000005 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEunauditedParentheticals" roleURI="http://www.otpco.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEINCOMEunauditedParentheticals">
        <link:definition>0000006 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYunaudited" roleURI="http://www.otpco.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYunaudited">
        <link:definition>0000007 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYunauditedParentheticals" roleURI="http://www.otpco.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYunauditedParentheticals">
        <link:definition>0000008 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CONSOLIDATEDSTATEMENTSOFCASHFLOWSunaudited" roleURI="http://www.otpco.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSunaudited">
        <link:definition>0000009 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (unaudited)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPolicies" roleURI="http://www.otpco.com/role/SummaryofSignificantAccountingPolicies">
        <link:definition>0000010 - Disclosure - Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformation" roleURI="http://www.otpco.com/role/SegmentInformation">
        <link:definition>0000011 - Disclosure - Segment Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Revenue" roleURI="http://www.otpco.com/role/Revenue">
        <link:definition>0000012 - Disclosure - Revenue</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformation" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformation">
        <link:definition>0000013 - Disclosure - Select Balance Sheet Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RegulatoryMatters" roleURI="http://www.otpco.com/role/RegulatoryMatters">
        <link:definition>0000014 - Disclosure - Regulatory Matters</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShortTermandLongTermBorrowings" roleURI="http://www.otpco.com/role/ShortTermandLongTermBorrowings">
        <link:definition>0000015 - Disclosure - Short-Term and Long-Term Borrowings</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeePostretirementBenefits" roleURI="http://www.otpco.com/role/EmployeePostretirementBenefits">
        <link:definition>0000016 - Disclosure - Employee Postretirement Benefits</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://www.otpco.com/role/IncomeTaxes">
        <link:definition>0000017 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingencies" roleURI="http://www.otpco.com/role/CommitmentsandContingencies">
        <link:definition>0000018 - Disclosure - Commitments and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquity" roleURI="http://www.otpco.com/role/StockholdersEquity">
        <link:definition>0000019 - Disclosure - Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccumulatedOtherComprehensiveIncomeLoss" roleURI="http://www.otpco.com/role/AccumulatedOtherComprehensiveIncomeLoss">
        <link:definition>0000020 - Disclosure - Accumulated Other Comprehensive Income (Loss)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedPayments" roleURI="http://www.otpco.com/role/ShareBasedPayments">
        <link:definition>0000021 - Disclosure - Share-Based Payments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShare" roleURI="http://www.otpco.com/role/EarningsPerShare">
        <link:definition>0000022 - Disclosure - Earnings Per Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstruments" roleURI="http://www.otpco.com/role/DerivativeInstruments">
        <link:definition>0000023 - Disclosure - Derivative Instruments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurements" roleURI="http://www.otpco.com/role/FairValueMeasurements">
        <link:definition>0000024 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesPolicies" roleURI="http://www.otpco.com/role/SummaryofSignificantAccountingPoliciesPolicies">
        <link:definition>0000025 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationTables" roleURI="http://www.otpco.com/role/SegmentInformationTables">
        <link:definition>0000026 - Disclosure - Segment Information (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueTables" roleURI="http://www.otpco.com/role/RevenueTables">
        <link:definition>0000027 - Disclosure - Revenue (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationTables" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationTables">
        <link:definition>0000028 - Disclosure - Select Balance Sheet Information (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RegulatoryMattersTables" roleURI="http://www.otpco.com/role/RegulatoryMattersTables">
        <link:definition>0000029 - Disclosure - Regulatory Matters (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShortTermandLongTermBorrowingsTables" roleURI="http://www.otpco.com/role/ShortTermandLongTermBorrowingsTables">
        <link:definition>0000030 - Disclosure - Short-Term and Long-Term Borrowings (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeePostretirementBenefitsTables" roleURI="http://www.otpco.com/role/EmployeePostretirementBenefitsTables">
        <link:definition>0000031 - Disclosure - Employee Postretirement Benefits (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesTables" roleURI="http://www.otpco.com/role/IncomeTaxesTables">
        <link:definition>0000032 - Disclosure - Income Taxes (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccumulatedOtherComprehensiveIncomeLossTables" roleURI="http://www.otpco.com/role/AccumulatedOtherComprehensiveIncomeLossTables">
        <link:definition>0000033 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedPaymentsTables" roleURI="http://www.otpco.com/role/ShareBasedPaymentsTables">
        <link:definition>0000034 - Disclosure - Share-Based Payments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShareTables" roleURI="http://www.otpco.com/role/EarningsPerShareTables">
        <link:definition>0000035 - Disclosure - Earnings Per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsTables" roleURI="http://www.otpco.com/role/FairValueMeasurementsTables">
        <link:definition>0000036 - Disclosure - Fair Value Measurements (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesDetails" roleURI="http://www.otpco.com/role/SummaryofSignificantAccountingPoliciesDetails">
        <link:definition>0000037 - Disclosure - Summary of Significant Accounting Policies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationNarrativeDetails" roleURI="http://www.otpco.com/role/SegmentInformationNarrativeDetails">
        <link:definition>0000038 - Disclosure - Segment Information - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SegmentInformationScheduleofSegmentReportingInformationbySegmentDetails" roleURI="http://www.otpco.com/role/SegmentInformationScheduleofSegmentReportingInformationbySegmentDetails">
        <link:definition>0000039 - Disclosure - Segment Information - Schedule of Segment Reporting Information, by Segment (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueDetails" roleURI="http://www.otpco.com/role/RevenueDetails">
        <link:definition>0000040 - Disclosure - Revenue (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationScheduleofReceivablesDetails" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationScheduleofReceivablesDetails">
        <link:definition>0000041 - Disclosure - Select Balance Sheet Information - Schedule of Receivables (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationSummaryofActivityinAllowanceforCreditLossesDetails" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationSummaryofActivityinAllowanceforCreditLossesDetails">
        <link:definition>0000042 - Disclosure - Select Balance Sheet Information - Summary of Activity in Allowance for Credit Losses (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationScheduleofInventoriesDetails" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationScheduleofInventoriesDetails">
        <link:definition>0000043 - Disclosure - Select Balance Sheet Information - Schedule of Inventories (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationScheduleofInvestmentsDetails" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationScheduleofInvestmentsDetails">
        <link:definition>0000044 - Disclosure - Select Balance Sheet Information - Schedule of Investments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationScheduleofPropertyPlantandEquipmentDetails" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationScheduleofPropertyPlantandEquipmentDetails">
        <link:definition>0000045 - Disclosure - Select Balance Sheet Information - Schedule of Property, Plant and Equipment (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SelectBalanceSheetInformationAdditionalInformationDetails" roleURI="http://www.otpco.com/role/SelectBalanceSheetInformationAdditionalInformationDetails">
        <link:definition>0000046 - Disclosure - Select Balance Sheet Information - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RegulatoryMattersScheduleofRegulatoryAssetsandLiabilitiesDetails" roleURI="http://www.otpco.com/role/RegulatoryMattersScheduleofRegulatoryAssetsandLiabilitiesDetails">
        <link:definition>0000047 - Disclosure - Regulatory Matters - Schedule of Regulatory Assets and Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShortTermandLongTermBorrowingsLinesofCreditDetails" roleURI="http://www.otpco.com/role/ShortTermandLongTermBorrowingsLinesofCreditDetails">
        <link:definition>0000048 - Disclosure - Short-Term and Long-Term Borrowings - Lines of Credit (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShortTermandLongTermBorrowingsBreakdownofOutstandingLongtermDebtDetails" roleURI="http://www.otpco.com/role/ShortTermandLongTermBorrowingsBreakdownofOutstandingLongtermDebtDetails">
        <link:definition>0000049 - Disclosure - Short-Term and Long-Term Borrowings - Breakdown of Outstanding Long-term Debt (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShortTermandLongTermBorrowingsNarrativeDetails" roleURI="http://www.otpco.com/role/ShortTermandLongTermBorrowingsNarrativeDetails">
        <link:definition>0000050 - Disclosure - Short-Term and Long-Term Borrowings - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeePostretirementBenefitsComponentsofNetPeriodicBenefitCostDetails" roleURI="http://www.otpco.com/role/EmployeePostretirementBenefitsComponentsofNetPeriodicBenefitCostDetails">
        <link:definition>0000051 - Disclosure - Employee Postretirement Benefits - Components of Net Periodic Benefit Cost (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeePostretirementBenefitsCompositionofPeriodicBenefitCostDetails" roleURI="http://www.otpco.com/role/EmployeePostretirementBenefitsCompositionofPeriodicBenefitCostDetails">
        <link:definition>0000052 - Disclosure - Employee Postretirement Benefits - Composition of Periodic Benefit Cost (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EmployeePostretirementBenefitsNarrativeDetails" roleURI="http://www.otpco.com/role/EmployeePostretirementBenefitsNarrativeDetails">
        <link:definition>0000053 - Disclosure - Employee Postretirement Benefits - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesEffectiveIncomeTaxRateDetails" roleURI="http://www.otpco.com/role/IncomeTaxesEffectiveIncomeTaxRateDetails">
        <link:definition>0000054 - Disclosure - Income Taxes - Effective Income Tax Rate (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingenciesDetails" roleURI="http://www.otpco.com/role/CommitmentsandContingenciesDetails">
        <link:definition>0000055 - Disclosure - Commitments and Contingencies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockholdersEquityDetails" roleURI="http://www.otpco.com/role/StockholdersEquityDetails">
        <link:definition>0000056 - Disclosure - Stockholders' Equity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="AccumulatedOtherComprehensiveIncomeLossDetails" roleURI="http://www.otpco.com/role/AccumulatedOtherComprehensiveIncomeLossDetails">
        <link:definition>0000057 - Disclosure - Accumulated Other Comprehensive Income (Loss) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedPaymentsNarrativeDetails" roleURI="http://www.otpco.com/role/ShareBasedPaymentsNarrativeDetails">
        <link:definition>0000058 - Disclosure - Share-Based Payments - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedPaymentsSummaryofRestrictedStockAwardsandStockPerformanceAwardsDetails" roleURI="http://www.otpco.com/role/ShareBasedPaymentsSummaryofRestrictedStockAwardsandStockPerformanceAwardsDetails">
        <link:definition>0000059 - Disclosure - Share-Based Payments - Summary of Restricted Stock Awards and Stock Performance Awards (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ShareBasedPaymentsWeightedAverageAssumptionsDetails" roleURI="http://www.otpco.com/role/ShareBasedPaymentsWeightedAverageAssumptionsDetails">
        <link:definition>0000060 - Disclosure - Share-Based Payments - Weighted-Average Assumptions (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="EarningsPerShareDetails" roleURI="http://www.otpco.com/role/EarningsPerShareDetails">
        <link:definition>0000061 - Disclosure - Earnings Per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsDetails" roleURI="http://www.otpco.com/role/DerivativeInstrumentsDetails">
        <link:definition>0000062 - Disclosure - Derivative Instruments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsScheduleofFairValueMeasurementsRecurringandNonrecurringDetails" roleURI="http://www.otpco.com/role/FairValueMeasurementsScheduleofFairValueMeasurementsRecurringandNonrecurringDetails">
        <link:definition>0000063 - Disclosure - Fair Value Measurements - Schedule of Fair Value Measurements, Recurring and Nonrecurring (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsScheduleofFairValueofAssetsandLiabilitiesDetails" roleURI="http://www.otpco.com/role/FairValueMeasurementsScheduleofFairValueofAssetsandLiabilitiesDetails">
        <link:definition>0000064 - Disclosure - Fair Value Measurements - Schedule of Fair Value of Assets and Liabilities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="ottr_DerivativeNonmonetaryEnergyMeasure" abstract="false" name="DerivativeNonmonetaryEnergyMeasure" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:energyItemType"/>
  <xs:element id="ottr_DeferredIncomeTaxesMember" abstract="true" name="DeferredIncomeTaxesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_RegulatoryAssetDerivativeInstrumentsMember" abstract="true" name="RegulatoryAssetDerivativeInstrumentsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ScheduleOfRegulatoryAssetsAndLiabilitiesTable" abstract="true" name="ScheduleOfRegulatoryAssetsAndLiabilitiesTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="ottr_OtterTailPowerCompanyMember" abstract="true" name="OtterTailPowerCompanyMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_RetailCommercialAndIndustrialMember" abstract="true" name="RetailCommercialAndIndustrialMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes274SeriesADueNovember292031Member" abstract="true" name="SeniorUnsecuredNotes274SeriesADueNovember292031Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_FuelClauseAdjustmentsMember" abstract="true" name="FuelClauseAdjustmentsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ElectricProductOtherMember" abstract="true" name="ElectricProductOtherMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_AssetRetirementObligationsMember" abstract="true" name="AssetRetirementObligationsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_AccountsReceivableAllowanceForCreditLossWriteoffAfterRecovery" abstract="false" name="AccountsReceivableAllowanceForCreditLossWriteoffAfterRecovery" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_ElectronicProductRetailMember" abstract="true" name="ElectronicProductRetailMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_RetailResidentialMember" abstract="true" name="RetailResidentialMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_EstimatedLiabilityOfRefundObligation" abstract="false" name="EstimatedLiabilityOfRefundObligation" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_UtilitiesOperatingExpensePropertyTaxes" abstract="false" name="UtilitiesOperatingExpensePropertyTaxes" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_ScheduleOfRegulatoryAssetsAndLiabilitiesLineItems" abstract="true" name="ScheduleOfRegulatoryAssetsAndLiabilitiesLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="ottr_PlantRemovalObligationsMember" abstract="true" name="PlantRemovalObligationsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ElectricMember" abstract="true" name="ElectricMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_DebtToTotalCapitalizationRatio" abstract="false" name="DebtToTotalCapitalizationRatio" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ottr_EffectiveIncomeTaxRateReconciliationAllowanceForEquityFundsUsedDuringConstructionAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationAllowanceForEquityFundsUsedDuringConstructionAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_WholesaleMember" abstract="true" name="WholesaleMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_LandEasementPaymentsMember" abstract="true" name="LandEasementPaymentsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes392SeriesDDueFebruary252050Member" abstract="true" name="SeniorUnsecuredNotes392SeriesDDueFebruary252050Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_PlasticsMember" abstract="true" name="PlasticsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ElectricPlantInServiceMember" abstract="true" name="ElectricPlantInServiceMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_InterestAndDividendCoverageRatio" abstract="false" name="InterestAndDividendCoverageRatio" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="ottr_ProductSalesMember" abstract="true" name="ProductSalesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ExecutiveSurvivorAndSupplementalRetirementPlanMember" abstract="true" name="ExecutiveSurvivorAndSupplementalRetirementPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SecondShelfRegistrationMember" abstract="true" name="SecondShelfRegistrationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_RetailOtherMember" abstract="true" name="RetailOtherMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_MinnesotaPublicUtilitiesCommissionMember" abstract="true" name="MinnesotaPublicUtilitiesCommissionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_OtherRegulatoryAssetsMember" abstract="true" name="OtherRegulatoryAssetsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_UnrecoveredProjectCostsMember" abstract="true" name="UnrecoveredProjectCostsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_NorthDakotaPTCRefundsMember" abstract="true" name="NorthDakotaPTCRefundsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ScrapMetalSalesMember" abstract="true" name="ScrapMetalSalesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_AshtabulaIIIWindFarmMember" abstract="true" name="AshtabulaIIIWindFarmMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes369SeriesBDueNovember292051Member" abstract="true" name="SeniorUnsecuredNotes369SeriesBDueNovember292051Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_OTPCreditAgreementMember" abstract="true" name="OTPCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_DefinedBenefitPlanNetPeriodicBenefitCostCreditDeferred" abstract="false" name="DefinedBenefitPlanNetPeriodicBenefitCostCreditDeferred" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_ShelfRegistrationShares" abstract="false" name="ShelfRegistrationShares" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="ottr_NonelectricOperationsPlantMember" abstract="true" name="NonelectricOperationsPlantMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes647SeriesDDueAugust202037Member" abstract="true" name="SeniorUnsecuredNotes647SeriesDDueAugust202037Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_PercentageOfTargetAmountAsActualPayment" abstract="false" name="PercentageOfTargetAmountAsActualPayment" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ottr_EffectiveIncomeTaxRateReconciliationDeductionProductionTaxCreditsPercent" abstract="false" name="EffectiveIncomeTaxRateReconciliationDeductionProductionTaxCreditsPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ottr_NumberOfLandEasements" abstract="false" name="NumberOfLandEasements" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="ottr_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardCliffVestingPeriod" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardCliffVestingPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes547SeriesBDueFebruary272044Member" abstract="true" name="SeniorUnsecuredNotes547SeriesBDueFebruary272044Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_EffectiveIncomeTaxRateReconciliationTaxCreditAmortizationAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationTaxCreditAmortizationAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes362SeriesCDueFebruary252040Member" abstract="true" name="SeniorUnsecuredNotes362SeriesCDueFebruary252040Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_GovernmentBackedAndGovernmentSponsoredEnterprisesDebtSecuritiesMember" abstract="true" name="GovernmentBackedAndGovernmentSponsoredEnterprisesDebtSecuritiesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_EquityToTotalCapitalizationRatio" abstract="false" name="EquityToTotalCapitalizationRatio" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ottr_MetalPartsAndToolingMember" abstract="true" name="MetalPartsAndToolingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes322SeriesADueFebruary252030Member" abstract="true" name="SeniorUnsecuredNotes322SeriesADueFebruary252030Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_DefinedBenefitPlanNetPeriodicBenefitCostCreditNetOfDeferrals" abstract="false" name="DefinedBenefitPlanNetPeriodicBenefitCostCreditNetOfDeferrals" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_EffectiveIncomeTaxRateReconciliationDeductionProductionTaxCreditsAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationDeductionProductionTaxCreditsAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_FederalEnergyRegulatoryCommissionMember" abstract="true" name="FederalEnergyRegulatoryCommissionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes377SeriesADueMay202052Member" abstract="true" name="SeniorUnsecuredNotes377SeriesADueMay202052Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes352SeriesBDueOctober102039Member" abstract="true" name="SeniorUnsecuredNotes352SeriesBDueOctober102039Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_EffectiveIncomeTaxRateReconciliationAllowanceForEquityFundsUsedDuringConstructionPercent" abstract="false" name="EffectiveIncomeTaxRateReconciliationAllowanceForEquityFundsUsedDuringConstructionPercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes468SeriesADueFebruary272029Member" abstract="true" name="SeniorUnsecuredNotes468SeriesADueFebruary272029Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_PensionAndOtherPostretirementBenefitPlansMember" abstract="true" name="PensionAndOtherPostretirementBenefitPlansMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ManufacturingMember" abstract="true" name="ManufacturingMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes407SeriesADueFebruary72048Member" abstract="true" name="SeniorUnsecuredNotes407SeriesADueFebruary72048Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes637SeriesCDueAugust022027Member" abstract="true" name="SeniorUnsecuredNotes637SeriesCDueAugust022027Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ScheduleOfRegulatoryAssetsAndLiabilitiesTableTextBlock" abstract="false" name="ScheduleOfRegulatoryAssetsAndLiabilitiesTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="ottr_NonelectricPlantMember" abstract="true" name="NonelectricPlantMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ISOCostRecoveryTrackersMember" abstract="true" name="ISOCostRecoveryTrackersMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_AlternativeRevenueProgramRidersMember" abstract="true" name="AlternativeRevenueProgramRidersMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes322SeriesBDueAugust202030Member" abstract="true" name="SeniorUnsecuredNotes322SeriesBDueAugust202030Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_PlasticProductsMember" abstract="true" name="PlasticProductsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_OtterTailCorporationCreditAgreementMember" abstract="true" name="OtterTailCorporationCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes307SeriesADueOctober102029Member" abstract="true" name="SeniorUnsecuredNotes307SeriesADueOctober102029Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_FuelClauseAdjustmentMember" abstract="true" name="FuelClauseAdjustmentMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_NumberOfWindTurbines" abstract="false" name="NumberOfWindTurbines" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="ottr_NetAssetsRestrictedFromDistribution" abstract="false" name="NetAssetsRestrictedFromDistribution" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="ottr_DeferredRateCaseExpensesMember" abstract="true" name="DeferredRateCaseExpensesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_The355GuaranteedSeniorNotesDueDecember152026Member" abstract="true" name="The355GuaranteedSeniorNotesDueDecember152026Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_OtherRegulatoryLiabilitiesMember" abstract="true" name="OtherRegulatoryLiabilitiesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_SeniorUnsecuredNotes382SeriesCDueOctober102049Member" abstract="true" name="SeniorUnsecuredNotes382SeriesCDueOctober102049Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="ottr_ElectricPlantMember" abstract="true" name="ElectricPlantMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
</xs:schema>
