<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 12:59AM UTC 2020-04-21--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:country="http://xbrl.sec.gov/country/2020-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2020-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2020-01-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2011-01-31" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:ppih="http://investors.permapipe.com/20200131" xmlns:sic="http://xbrl.sec.gov/sic/2020-01-31" xmlns:srt="http://fasb.org/srt/2020-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:us-gaap="http://fasb.org/us-gaap/2020-01-31" xmlns:us-types="http://fasb.org/us-types/2020-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://investors.permapipe.com/20200131">
  <xsd:import namespace="http://xbrl.sec.gov/sic/2020-01-31" schemaLocation="https://xbrl.sec.gov/sic/2020/sic-2020-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/exch/2020-01-31" schemaLocation="https://xbrl.sec.gov/exch/2020/exch-2020-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/naics/2011-01-31" schemaLocation="http://xbrl.sec.gov/naics/2011/naics-2011-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xsd:import namespace="http://fasb.org/us-gaap/2020-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/country/2020-01-31" schemaLocation="https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd"/>
  <xsd:import namespace="http://fasb.org/us-types/2020-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2020/elts/us-types-2020-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2018-01-31" schemaLocation="https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd"/>
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/currency/2020-01-31" schemaLocation="https://xbrl.sec.gov/currency/2020/currency-2020-01-31.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd"/>
  <xsd:import namespace="http://fasb.org/srt/2020-01-31" schemaLocation="http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ppih-20200131_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ppih-20200131_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ppih-20200131_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="ppih-20200131_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="statement-document-and-entity-information" roleURI="http://investors.permapipe.com/20200131/role/statement-document-and-entity-information">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-operations" roleURI="http://investors.permapipe.com/20200131/role/statement-consolidated-statements-of-operations">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">001 - Statement - Consolidated Statements of Operations</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-comprehensive-incomeloss" roleURI="http://investors.permapipe.com/20200131/role/statement-consolidated-statements-of-comprehensive-incomeloss">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">002 - Statement - Consolidated Statements of Comprehensive Income/(Loss)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-balance-sheet" roleURI="http://investors.permapipe.com/20200131/role/statement-consolidated-balance-sheet">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">003 - Statement - Consolidated Balance Sheet</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-balance-sheet-parentheticals" roleURI="http://investors.permapipe.com/20200131/role/statement-consolidated-balance-sheet-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">004 - Statement - Consolidated Balance Sheet (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-stockholders-equity" roleURI="http://investors.permapipe.com/20200131/role/statement-consolidated-statements-of-stockholders-equity">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">005 - Statement - Consolidated Statements of Stockholders' Equity</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-consolidated-statements-of-cash-flows" roleURI="http://investors.permapipe.com/20200131/role/statement-consolidated-statements-of-cash-flows">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">006 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-business-information" roleURI="http://investors.permapipe.com/20200131/role/statement-note-1-business-information">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">007 - Disclosure - Note 1 - Business Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">008 - Disclosure - Note 2 - Significant Accounting Policies</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-correction-of-immaterial-errors" roleURI="http://investors.permapipe.com/20200131/role/statement-note-3-correction-of-immaterial-errors">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">009 - Disclosure - Note 3 - Correction of Immaterial Errors</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-retention" roleURI="http://investors.permapipe.com/20200131/role/statement-note-4-retention">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">010 - Disclosure - Note 4 - Retention</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-revenue-recognition" roleURI="http://investors.permapipe.com/20200131/role/statement-note-5-revenue-recognition">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">011 - Disclosure - Note 5 - Revenue Recognition</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-debt" roleURI="http://investors.permapipe.com/20200131/role/statement-note-6-debt">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">012 - Disclosure - Note 6 - Debt</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">013 - Disclosure - Note 7 - Leases</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">014 - Disclosure - Note 8 - Income Taxes</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">015 - Disclosure - Note 9 - Retirement Plans</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">016 - Disclosure - Note 10 - Stock-based Compensation</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-stock-rights" roleURI="http://investors.permapipe.com/20200131/role/statement-note-11-stock-rights">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">017 - Disclosure - Note 11 - Stock Rights</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-interest-expense-net" roleURI="http://investors.permapipe.com/20200131/role/statement-note-12-interest-expense-net">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">018 - Disclosure - Note 12 - Interest Expense, Net</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-subsequent-events-" roleURI="http://investors.permapipe.com/20200131/role/statement-note-13-subsequent-events-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">019 - Disclosure - Note 13 -Subsequent Events</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-schedule-ii" roleURI="http://investors.permapipe.com/20200131/role/statement-schedule-ii">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">020 - Disclosure - Schedule II</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-significant-accounting-policies-policies" roleURI="http://investors.permapipe.com/20200131/role/statement-significant-accounting-policies-policies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">021 - Disclosure - Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-business-information-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-1-business-information-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">022 - Disclosure - Note 1 - Business Information (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">023 - Disclosure - Note 2 - Significant Accounting Policies (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-correction-of-immaterial-errors-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-3-correction-of-immaterial-errors-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">024 - Disclosure - Note 3 - Correction of Immaterial Errors (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-revenue-recognition-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-5-revenue-recognition-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">025 - Disclosure - Note 5 - Revenue Recognition (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-debt-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-6-debt-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">026 - Disclosure - Note 6 - Debt (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">027 - Disclosure - Note 7 - Leases (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">028 - Disclosure - Note 8 - Income Taxes (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">029 - Disclosure - Note 9 - Retirement Plans (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">030 - Disclosure - Note 10 - Stock-based Compensation (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-interest-expense-net-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-note-12-interest-expense-net-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">031 - Disclosure - Note 12 - Interest Expense, Net (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-schedule-ii-tables" roleURI="http://investors.permapipe.com/20200131/role/statement-schedule-ii-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">032 - Disclosure - Schedule II (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-business-information-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-1-business-information-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">033 - Disclosure - Note 1 - Business Information (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-business-information-geographic-information-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-1-business-information-geographic-information-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">034 - Disclosure - Note 1 - Business Information - Geographic Information (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">035 - Disclosure - Note 2 - Significant Accounting Policies (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-cash-cash-equivalents-and-restricted-cash-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-cash-cash-equivalents-and-restricted-cash-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">036 - Disclosure - Note 2 - Significant Accounting Policies - Cash, Cash Equivalents and Restricted Cash (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-accumulated-other-comprehensive-loss-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-accumulated-other-comprehensive-loss-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">037 - Disclosure - Note 2 - Significant Accounting Policies - Accumulated Other Comprehensive Loss (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-inventories-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-inventories-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">038 - Disclosure - Note 2 - Significant Accounting Policies - Inventories (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-longlived-assets-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-longlived-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">039 - Disclosure - Note 2 - Significant Accounting Policies - Long-Lived Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-goodwill-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-goodwill-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">040 - Disclosure - Note 2 - Significant Accounting Policies - Goodwill (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-significant-accounting-policies-net-loss-per-common-share-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-2-significant-accounting-policies-net-loss-per-common-share-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">041 - Disclosure - Note 2 - Significant Accounting Policies - Net Loss Per Common Share (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-correction-of-immaterial-errors-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-3-correction-of-immaterial-errors-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">042 - Disclosure - Note 3 - Correction of Immaterial Errors (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-correction-of-immaterial-errors-reconciliation-of-the-effects-of-the-adjustments-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-3-correction-of-immaterial-errors-reconciliation-of-the-effects-of-the-adjustments-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">043 - Disclosure - Note 3 - Correction of Immaterial Errors - Reconciliation of the Effects of the Adjustments (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-retention-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-4-retention-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">044 - Disclosure - Note 4 - Retention (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-revenue-recognition-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-5-revenue-recognition-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">045 - Disclosure - Note 5 - Revenue Recognition (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-revenue-recognition-revenues-by-revenue-class-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-5-revenue-recognition-revenues-by-revenue-class-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">046 - Disclosure - Note 5 - Revenue Recognition - Revenues by Revenue Class (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-revenue-recognition-contract-with-customer-asset-and-liability-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-5-revenue-recognition-contract-with-customer-asset-and-liability-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">047 - Disclosure - Note 5 - Revenue Recognition - Contract With Customer, Asset and Liability (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-revenue-recognition-reconciliation-of-the-cost-in-excess-of-billings-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-5-revenue-recognition-reconciliation-of-the-cost-in-excess-of-billings-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">048 - Disclosure - Note 5 - Revenue Recognition - Reconciliation of the Cost in Excess of Billings (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-debt-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-6-debt-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">049 - Disclosure - Note 6 - Debt (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-debt-debt-by-type-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-6-debt-debt-by-type-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">050 - Disclosure - Note 6 - Debt - Debt by Type (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-debt-maturities-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-6-debt-maturities-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">051 - Disclosure - Note 6 - Debt - Maturities (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">052 - Disclosure - Note 7 - Leases (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-supplemental-balance-sheet-information-related-to-leases-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-supplemental-balance-sheet-information-related-to-leases-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">053 - Disclosure - Note 7 - Leases - Supplemental Balance Sheet Information Related to Leases (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-lease-costs-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-lease-costs-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">054 - Disclosure - Note 7 - Leases - Lease Costs (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-supplemental-cash-flow-information-related-to-leases-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-supplemental-cash-flow-information-related-to-leases-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">055 - Disclosure - Note 7 - Leases - Supplemental Cash Flow Information Related to Leases (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-weightedaverage-lease-terms-and-discount-rates-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-weightedaverage-lease-terms-and-discount-rates-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">056 - Disclosure - Note 7 - Leases - Weighted-average Lease Terms and Discount Rates (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-maturities-of-lease-liabilities-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-maturities-of-lease-liabilities-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">057 - Disclosure - Note 7 - Leases - Maturities of Lease Liabilities (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-future-minimum-payments-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-7-leases-future-minimum-payments-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">058 - Disclosure - Note 7 - Leases - Future Minimum Payments (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">059 - Disclosure - Note 8 - Income Taxes (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-income-taxes-loss-income-before-income-taxes-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-income-taxes-loss-income-before-income-taxes-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">060 - Disclosure - Note 8 - Income Taxes - Income Taxes (Loss) Income Before Income Taxes (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-components-of-income-tax-expensebenefit-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-components-of-income-tax-expensebenefit-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">061 - Disclosure - Note 8 - Income Taxes - Components of Income Tax Expense/(Benefit) (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-income-tax-reconciliation-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-income-tax-reconciliation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">062 - Disclosure - Note 8 - Income Taxes - Income Tax Reconciliation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-deferred-tax-assets-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-deferred-tax-assets-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">063 - Disclosure - Note 8 - Income Taxes - Deferred Tax Assets (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-income-taxes-uncertain-tax-positions-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-8-income-taxes-uncertain-tax-positions-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">064 - Disclosure - Note 8 - Income Taxes - Uncertain Tax Positions (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">065 - Disclosure - Note 9 - Retirement Plans (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-asset-allocation-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-asset-allocation-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">066 - Disclosure - Note 9 - Retirement Plans - Asset Allocation (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-benefit-obligations-plan-assets-and-funded-status-of-plan-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-benefit-obligations-plan-assets-and-funded-status-of-plan-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">067 - Disclosure - Note 9 - Retirement Plans - Benefit Obligations, Plan Assets and Funded Status of Plan (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-assumptions-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-assumptions-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">068 - Disclosure - Note 9 - Retirement Plans - Assumptions (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-components-of-net-periodic-benefit-cost-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-components-of-net-periodic-benefit-cost-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">069 - Disclosure - Note 9 - Retirement Plans - Components of Net Periodic Benefit Cost (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-cash-flows-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-cash-flows-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">070 - Disclosure - Note 9 - Retirement Plans - Cash Flows (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-retirement-plans-multiemployer-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-9-retirement-plans-multiemployer-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">071 - Disclosure - Note 9 - Retirement Plans - Multi-Employer (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">072 - Disclosure - Note 10 - Stock-based Compensation (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation-stockbased-compensation-expense-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation-stockbased-compensation-expense-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">073 - Disclosure - Note 10 - Stock-based Compensation - Stock-based Compensation Expense (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation-stock-option-activity-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation-stock-option-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">074 - Disclosure - Note 10 - Stock-based Compensation - Stock Option Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation-unvested-option-activity-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation-unvested-option-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">075 - Disclosure - Note 10 - Stock-based Compensation - Unvested Option Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-stockbased-compensation-restricted-stock-activity-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-10-stockbased-compensation-restricted-stock-activity-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">076 - Disclosure - Note 10 - Stock-based Compensation - Restricted Stock Activity (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-stock-rights-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-11-stock-rights-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">077 - Disclosure - Note 11 - Stock Rights (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-interest-expense-net-interest-expense-net-details" roleURI="http://investors.permapipe.com/20200131/role/statement-note-12-interest-expense-net-interest-expense-net-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">078 - Disclosure - Note 12 - Interest Expense, Net - Interest Expense, Net (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-subsequent-events-details-textual" roleURI="http://investors.permapipe.com/20200131/role/statement-note-13-subsequent-events-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">079 - Disclosure - Note 13 -Subsequent Events (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-schedule-ii-valuation-and-qualifying-accounts-details" roleURI="http://investors.permapipe.com/20200131/role/statement-schedule-ii-valuation-and-qualifying-accounts-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">080 - Disclosure - Schedule II - Valuation and Qualifying Accounts (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element id="ppih_AccountsReceivableCertifiedInvoicesInProcessOfCollection" name="AccountsReceivableCertifiedInvoicesInProcessOfCollection" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_AlternativeInvestmentsMember" name="AlternativeInvestmentsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_AppliedFundingUnderSmallBusinessAdministrationEconomicDisasterLoan" name="AppliedFundingUnderSmallBusinessAdministrationEconomicDisasterLoan" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_AppliedFundingUnderSmallBusinessAdministrationPrograms" name="AppliedFundingUnderSmallBusinessAdministrationPrograms" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_AssetsForPlanBenefitsDefinedBenefitPlanOther" name="AssetsForPlanBenefitsDefinedBenefitPlanOther" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_AssetsNoncurrentExcludingPropertyPlantAndEquipment" name="AssetsNoncurrentExcludingPropertyPlantAndEquipment" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_BillingsToDate" name="BillingsToDate" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="ppih_CanadianMortgageNoteMember" name="CanadianMortgageNoteMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_CbeCorridorRateMember" name="CbeCorridorRateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_CommonStockIssuedUnderStockPlansNetOfSharesUsedForTaxWithholding" name="CommonStockIssuedUnderStockPlansNetOfSharesUsedForTaxWithholding" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_ContractAssetsCostsAndEstimatedEarningsInExcessOfBillingsOnUncompletedContracts" name="ContractAssetsCostsAndEstimatedEarningsInExcessOfBillingsOnUncompletedContracts" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_ContractLiabilitiesBillingsInExcessOfCostsAndEstimatedEarningsOnUncompletedContracts" name="ContractLiabilitiesBillingsInExcessOfCostsAndEstimatedEarningsOnUncompletedContracts" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_ContractWithCustomerAssetRevenueAndCostsIncurred" name="ContractWithCustomerAssetRevenueAndCostsIncurred" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_ContractWithCustomerLiabilityLiabilityIncurredDuringPeriod" name="ContractWithCustomerLiabilityLiabilityIncurredDuringPeriod" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_CostsInExcessOfBillingsNet" name="CostsInExcessOfBillingsNet" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_CostsIncurredForUncompletedContractsAnticipatedCollectionPeriod" name="CostsIncurredForUncompletedContractsAnticipatedCollectionPeriod" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_CostsIncurredOnUncompletedContracts" name="CostsIncurredOnUncompletedContracts" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_CumulativeAdjustmentForErrorCorrections" name="CumulativeAdjustmentForErrorCorrections" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_CustomerDepositsCurrent1" name="CustomerDepositsCurrent1" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_DebtInstrumentAdjustableInterestRateCeiling" name="DebtInstrumentAdjustableInterestRateCeiling" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant"/>
  <xsd:element id="ppih_DebtInstrumentAdjustableInterestRateFloor" name="DebtInstrumentAdjustableInterestRateFloor" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant"/>
  <xsd:element id="ppih_DebtInstrumentAdjustableInterestRatePeriodCommencementDate" name="DebtInstrumentAdjustableInterestRatePeriodCommencementDate" nillable="true" substitutionGroup="xbrli:item" type="xbrli:dateItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_DebtInstrumentInterestRateMaximumAnnualIncrease" name="DebtInstrumentInterestRateMaximumAnnualIncrease" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="instant"/>
  <xsd:element id="ppih_DeferredStockCompensationArrangementsClassifiedFromALiabilityToAdditionalPaidInCapital" name="DeferredStockCompensationArrangementsClassifiedFromALiabilityToAdditionalPaidInCapital" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_DeferredStockMember" name="DeferredStockMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_DefinedContributionPlanEmployerMatchingContributionPercentOfEmployeesGrossPayPayrollDeferralContributions" name="DefinedContributionPlanEmployerMatchingContributionPercentOfEmployeesGrossPayPayrollDeferralContributions" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_DefinedContributionPlanEmployerMatchingContributionPercentOfMatchPayrollDeferralContributions" name="DefinedContributionPlanEmployerMatchingContributionPercentOfMatchPayrollDeferralContributions" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_DocumentAndEntityInformation" name="DocumentAndEntityInformation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_EIBORMember" name="EIBORMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_EarnedRevenue" name="EarnedRevenue" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_EffectiveIncomeTaxRateReconciliationDeferredBalanceAdjustmentAmount" name="EffectiveIncomeTaxRateReconciliationDeferredBalanceAdjustmentAmount" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxIncomeInclusion" name="EffectiveIncomeTaxRateReconciliationGlobalIntangibleLowTaxIncomeInclusion" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_ErrorsRelatingToAccountingForLeasesWithEscalationClausesMember" name="ErrorsRelatingToAccountingForLeasesWithEscalationClausesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_EstimatedEarnings" name="EstimatedEarnings" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_FinanceAndOperatingLeaseLiabilityMaturityTableTextBlock" name="FinanceAndOperatingLeaseLiabilityMaturityTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_FinanceLeaseLiabilityPaymentsDueAfterYearSix" name="FinanceLeaseLiabilityPaymentsDueAfterYearSix" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_FinanceLeaseLiabilityPaymentsDueYearSix" name="FinanceLeaseLiabilityPaymentsDueYearSix" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_FinanceLeasePrincipalPaymentsAndInterestPaymentOnLiability" name="FinanceLeasePrincipalPaymentsAndInterestPaymentOnLiability" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_FinanceLeasesAssetsMember" name="FinanceLeasesAssetsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_FinanceVehicleEquipmentOneMember" name="FinanceVehicleEquipmentOneMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_FinanceVehicleEquipmentTwoMember" name="FinanceVehicleEquipmentTwoMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_ForeignRevolvingLinesMember" name="ForeignRevolvingLinesMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_ForeignSales" name="ForeignSales" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_IncreaseDecreaseInContractWithCustomerAssetAndLiability" name="IncreaseDecreaseInContractWithCustomerAssetAndLiability" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_IncreaseDecreaseInCustomerDeposits1" name="IncreaseDecreaseInCustomerDeposits1" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element id="ppih_InterestRateForFinanceLease" name="InterestRateForFinanceLease" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_LesseeOperatingAndFinanceLeasesTextBlock" name="LesseeOperatingAndFinanceLeasesTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearSix" name="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearSix" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_LesseeOperatingLeaseLiabilityPaymentsDueYearSix" name="LesseeOperatingLeaseLiabilityPaymentsDueYearSix" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_LineOfCreditFacilityCapitalExpendituresRestrictions" name="LineOfCreditFacilityCapitalExpendituresRestrictions" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_LineOfCreditFacilityCovenantTermsEbitdaRatioTermOne" name="LineOfCreditFacilityCovenantTermsEbitdaRatioTermOne" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="instant"/>
  <xsd:element id="ppih_LineOfCreditFacilityCovenantTermsEbitdaRatioTermTwo" name="LineOfCreditFacilityCovenantTermsEbitdaRatioTermTwo" nillable="true" substitutionGroup="xbrli:item" type="xbrli:pureItemType" xbrli:periodType="instant"/>
  <xsd:element id="ppih_LineOfCreditFacilityCovenantTermsEbitdaTermTwo" name="LineOfCreditFacilityCovenantTermsEbitdaTermTwo" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_LongtermDebtCurrentMaturitiesExcludingNorthAmericanRevolvingLine" name="LongtermDebtCurrentMaturitiesExcludingNorthAmericanRevolvingLine" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="ppih_MortgageNoteSecuredByTennesseeManufacturingFacilityMember" name="MortgageNoteSecuredByTennesseeManufacturingFacilityMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_NoteToFinancialStatementDetailsTextual" name="NoteToFinancialStatementDetailsTextual" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_NotesToFinancialStatements" name="NotesToFinancialStatements" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_NotesToFinancialStatementsAbstract" name="NotesToFinancialStatementsAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_NumberOfIncentiveStockPlansUnderWhichNewAwardsMayBeGranted" name="NumberOfIncentiveStockPlansUnderWhichNewAwardsMayBeGranted" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="ppih_OtherGeographicalAreaMember" name="OtherGeographicalAreaMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_OutsideCommissionsPayableCurrent" name="OutsideCommissionsPayableCurrent" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_PercentOfRevenueFromContractWithCustomerIncludingAssessedTax" name="PercentOfRevenueFromContractWithCustomerIncludingAssessedTax" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_PercentageOfOptionsExpectedToVest" name="PercentageOfOptionsExpectedToVest" nillable="true" substitutionGroup="xbrli:item" type="num:percentItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_PlumbersPipefittersLocal572PensionFundMember" name="PlumbersPipefittersLocal572PensionFundMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_PriceOfPpihCommonStockWithRight" name="PriceOfPpihCommonStockWithRight" nillable="true" substitutionGroup="xbrli:item" type="num:perShareItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_ProceedsFromPaymentsForStockOptionsExercisedAndTaxesRelatedToRestrictedSharesVested" name="ProceedsFromPaymentsForStockOptionsExercisedAndTaxesRelatedToRestrictedSharesVested" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="debit" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_RestrictedStockAndStockOptionsMember" name="RestrictedStockAndStockOptionsMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_RevolvingCreditLineWith163InterestRateMember" name="RevolvingCreditLineWith163InterestRateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_RevolvingCreditLineWith615InterestRateMember" name="RevolvingCreditLineWith615InterestRateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_RevolvingCreditLineWith651InterestRateMember" name="RevolvingCreditLineWith651InterestRateMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_RevolvingLinesNorthAmericaMember" name="RevolvingLinesNorthAmericaMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_SpecialtyPipingSystemsAndCoatingMember" name="SpecialtyPipingSystemsAndCoatingMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_StockholdersEquityAdjustedBalance" name="StockholdersEquityAdjustedBalance" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="ppih_SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock" name="SupplementalBalanceSheetInformationRelatedToLeasesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_SupplementalCashFlowInformationRelatedLeasesTableTextBlock" name="SupplementalCashFlowInformationRelatedLeasesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_TransferredAtPointInTimeUsingInputMethodMember" name="TransferredAtPointInTimeUsingInputMethodMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_TransferredAtPointInTimeUsingOutputMethodMember" name="TransferredAtPointInTimeUsingOutputMethodMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_UndistributedEarningsOfForeignSubsidiariesSubjectToTransitionTax" name="UndistributedEarningsOfForeignSubsidiariesSubjectToTransitionTax" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="ppih_UnvestedOptionMember" name="UnvestedOptionMember" nillable="true" substitutionGroup="xbrli:item" type="nonnum:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="ppih_WeightedaverageLeaseTermsAndDiscountRatesTableTextBlock" name="WeightedaverageLeaseTermsAndDiscountRatesTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="nonnum:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-1-business-information-geographic-information-details" name="statement-statement-note-1-business-information-geographic-information-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-1-business-information-tables" name="statement-statement-note-1-business-information-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-10-stockbased-compensation-restricted-stock-activity-details" name="statement-statement-note-10-stockbased-compensation-restricted-stock-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-10-stockbased-compensation-stock-option-activity-details" name="statement-statement-note-10-stockbased-compensation-stock-option-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-10-stockbased-compensation-stockbased-compensation-expense-details" name="statement-statement-note-10-stockbased-compensation-stockbased-compensation-expense-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-10-stockbased-compensation-tables" name="statement-statement-note-10-stockbased-compensation-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-10-stockbased-compensation-unvested-option-activity-details" name="statement-statement-note-10-stockbased-compensation-unvested-option-activity-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-12-interest-expense-net-interest-expense-net-details" name="statement-statement-note-12-interest-expense-net-interest-expense-net-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-12-interest-expense-net-tables" name="statement-statement-note-12-interest-expense-net-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-accumulated-other-comprehensive-loss-details" name="statement-statement-note-2-significant-accounting-policies-accumulated-other-comprehensive-loss-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-cash-cash-equivalents-and-restricted-cash-details" name="statement-statement-note-2-significant-accounting-policies-cash-cash-equivalents-and-restricted-cash-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-goodwill-details" name="statement-statement-note-2-significant-accounting-policies-goodwill-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-inventories-details" name="statement-statement-note-2-significant-accounting-policies-inventories-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-longlived-assets-details" name="statement-statement-note-2-significant-accounting-policies-longlived-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-net-loss-per-common-share-details" name="statement-statement-note-2-significant-accounting-policies-net-loss-per-common-share-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-2-significant-accounting-policies-tables" name="statement-statement-note-2-significant-accounting-policies-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-3-correction-of-immaterial-errors-reconciliation-of-the-effects-of-the-adjustments-details" name="statement-statement-note-3-correction-of-immaterial-errors-reconciliation-of-the-effects-of-the-adjustments-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-3-correction-of-immaterial-errors-tables" name="statement-statement-note-3-correction-of-immaterial-errors-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-5-revenue-recognition-contract-with-customer-asset-and-liability-details" name="statement-statement-note-5-revenue-recognition-contract-with-customer-asset-and-liability-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-5-revenue-recognition-reconciliation-of-the-cost-in-excess-of-billings-details" name="statement-statement-note-5-revenue-recognition-reconciliation-of-the-cost-in-excess-of-billings-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-5-revenue-recognition-revenues-by-revenue-class-details" name="statement-statement-note-5-revenue-recognition-revenues-by-revenue-class-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-5-revenue-recognition-tables" name="statement-statement-note-5-revenue-recognition-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-6-debt-debt-by-type-details" name="statement-statement-note-6-debt-debt-by-type-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-6-debt-maturities-details" name="statement-statement-note-6-debt-maturities-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-6-debt-tables" name="statement-statement-note-6-debt-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-future-minimum-payments-details" name="statement-statement-note-7-leases-future-minimum-payments-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-lease-costs-details" name="statement-statement-note-7-leases-lease-costs-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-maturities-of-lease-liabilities-details" name="statement-statement-note-7-leases-maturities-of-lease-liabilities-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-supplemental-balance-sheet-information-related-to-leases-details" name="statement-statement-note-7-leases-supplemental-balance-sheet-information-related-to-leases-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-supplemental-cash-flow-information-related-to-leases-details" name="statement-statement-note-7-leases-supplemental-cash-flow-information-related-to-leases-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-tables" name="statement-statement-note-7-leases-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-7-leases-weightedaverage-lease-terms-and-discount-rates-details" name="statement-statement-note-7-leases-weightedaverage-lease-terms-and-discount-rates-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-8-income-taxes-components-of-income-tax-expensebenefit-details" name="statement-statement-note-8-income-taxes-components-of-income-tax-expensebenefit-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-8-income-taxes-deferred-tax-assets-details" name="statement-statement-note-8-income-taxes-deferred-tax-assets-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-8-income-taxes-income-tax-reconciliation-details" name="statement-statement-note-8-income-taxes-income-tax-reconciliation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-8-income-taxes-income-taxes-loss-income-before-income-taxes-details" name="statement-statement-note-8-income-taxes-income-taxes-loss-income-before-income-taxes-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-8-income-taxes-tables" name="statement-statement-note-8-income-taxes-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-8-income-taxes-uncertain-tax-positions-details" name="statement-statement-note-8-income-taxes-uncertain-tax-positions-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-asset-allocation-details" name="statement-statement-note-9-retirement-plans-asset-allocation-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-assumptions-details" name="statement-statement-note-9-retirement-plans-assumptions-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-benefit-obligations-plan-assets-and-funded-status-of-plan-details" name="statement-statement-note-9-retirement-plans-benefit-obligations-plan-assets-and-funded-status-of-plan-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-cash-flows-details" name="statement-statement-note-9-retirement-plans-cash-flows-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-components-of-net-periodic-benefit-cost-details" name="statement-statement-note-9-retirement-plans-components-of-net-periodic-benefit-cost-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-multiemployer-details" name="statement-statement-note-9-retirement-plans-multiemployer-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-note-9-retirement-plans-tables" name="statement-statement-note-9-retirement-plans-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-schedule-ii-tables" name="statement-statement-schedule-ii-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-schedule-ii-valuation-and-qualifying-accounts-details" name="statement-statement-schedule-ii-valuation-and-qualifying-accounts-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="ppih_statement-statement-significant-accounting-policies-policies" name="statement-statement-significant-accounting-policies-policies" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
