| | | | | | | | | | | | | | | | | | | | | |
<?xml version="1.0" encoding="windows-1252"?> |
<!-- RR Donnelley Xcelerate Taxonomy Schema, based on XBRL 2.1 http://www.rrdonnelley.com/ --> |
<!-- Version: 6.22.4 --> |
<!-- Round: ebaacca6-045e-4f50-ba04-ef2f0b7f0e12 --> |
<!-- Creation date: 2016-05-17T19:36:42Z --> |
<!-- Copyright (c) 2005-2013 R.R. Donnelley & Sons Company All Rights Reserved. --> |
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:us-gaap="http://fasb.org/us-gaap/2015-01-31" xmlns:us-types="http://fasb.org/us-types/2015-01-31" xmlns:spi="http://www.spisolar.com/20151231" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:country="http://xbrl.sec.gov/country/2013-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2014-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2014-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2015-01-31" xmlns:invest="http://xbrl.sec.gov/invest/2013-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2011-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2011-01-31" targetNamespace="http://www.spisolar.com/20151231" elementFormDefault="qualified" attributeFormDefault="unqualified"> |
| <annotation> |
| | <appinfo> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DocumentandEntityInformation" id="DocumentandEntityInformation"> |
| <link:definition> 1001 - Document - Document and Entity Information </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/StatementOfFinancialPositionClassified" id="Role_StatementOfFinancialPositionClassified"> |
| <link:definition> 1003 - Statement - Consolidated Balance Sheets </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/StatementOfFinancialPositionClassifiedParenthetical" id="Role_StatementOfFinancialPositionClassifiedParen"> |
| <link:definition> 1004 - Statement - Consolidated Balance Sheets (Parenthetical) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/StatementOfIncome" id="Role_StatementOfIncome"> |
| <link:definition> 1005 - Statement - Consolidated Statements of Operations </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/StatementOfOtherComprehensiveIncome" id="Role_StatementOfOtherComprehensiveIncome"> |
| <link:definition> 1006 - Statement - Consolidated Statements of Comprehensive Loss </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/StatementOfShareholdersEquityAndOtherComprehensiveIncome" id="Role_ci-StatementOfShareholdersEquityAndOtherComprehensiveIncome"> |
| <link:definition> 1007 - Statement - Consolidated Statements Of Shareholders' Equity </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/StatementOfCashFlowsIndirect" id="Role_StatementOfCashFlowsIndirect"> |
| <link:definition> 1008 - Statement - Consolidated Statements of Cash Flows </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsBusinessDescriptionAndBasisOfPresentationTextBlock" id="Role_NotesToFinancialStatementsBusinessDescriptionAndBasisOfPresentationTextBlock"> |
| <link:definition> 1009 - Disclosure - Description of Business </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsSignificantAccountingPoliciesTextBlock" id="Role_NotesToFinancialStatementsSignificantAccountingPoliciesTextBlock"> |
| <link:definition> 1010 - Disclosure - Summary of Significant Accounting Policies </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsMergersAcquisitionsAndDispositionsDisclosuresTextBlock" id="Role_NotesToFinancialStatementsMergersAcquisitionsAndDispositionsDisclosuresTextBlock"> |
| <link:definition> 1011 - Disclosure - Business Acquisitions </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsRestrictedAssetsDisclosureTextBlock" id="Role_NotesToFinancialStatementsRestrictedAssetsDisclosureTextBlock"> |
| <link:definition> 1012 - Disclosure - Restricted cash </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsCostMethodInvestmentsDescriptionTextBlock" id="Role_NotesToFinancialStatementsCostMethodInvestmentsDescriptionTextBlock"> |
| <link:definition> 1013 - Disclosure - Short-term investments </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsLoansNotesTradeAndOtherReceivablesDisclosureTextBlock" id="Role_NotesToFinancialStatementsLoansNotesTradeAndOtherReceivablesDisclosureTextBlock"> |
| <link:definition> 1014 - Disclosure - Accounts Receivable </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsInventoryDisclosureTextBlock" id="Role_NotesToFinancialStatementsInventoryDisclosureTextBlock"> |
| <link:definition> 1015 - Disclosure - Inventories </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsConstructionInProgressTextBlock" id="Role_NotesToFinancialStatementsConstructionInProgressTextBlock"> |
| <link:definition> 1016 - Disclosure - Project Assets </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsPrepaidExpensesAndOtherCurrentAssetsTextBlock" id="Role_NotesToFinancialStatementsPrepaidExpensesAndOtherCurrentAssetsTextBlock"> |
| <link:definition> 1017 - Disclosure - Prepaid expenses and other current assets </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsFinancingReceivablesTextBlock" id="Role_NotesToFinancialStatementsFinancingReceivablesTextBlock"> |
| <link:definition> 1018 - Disclosure - Finance lease receivables </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsPropertyPlantAndEquipmentDisclosureTextBlock" id="Role_NotesToFinancialStatementsPropertyPlantAndEquipmentDisclosureTextBlock"> |
| <link:definition> 1019 - Disclosure - Property, Plant and Equipment </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsInvestmentsInAndAdvancesToAffiliatesScheduleOfInvestmentsTextBlock" id="Role_NotesToFinancialStatementsInvestmentsInAndAdvancesToAffiliatesScheduleOfInvestmentsTextBlock"> |
| <link:definition> 1020 - Disclosure - Investment in an affiliate </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsFairValueDisclosuresTextBlock" id="Role_NotesToFinancialStatementsFairValueDisclosuresTextBlock"> |
| <link:definition> 1021 - Disclosure - Fair value measurement </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsLoansPayableTextBlock" id="Role_NotesToFinancialStatementsLoansPayableTextBlock"> |
| <link:definition> 1022 - Disclosure - Notes payable </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsAccountsPayableAndAccruedLiabilitiesDisclosureTextBlock" id="Role_NotesToFinancialStatementsAccountsPayableAndAccruedLiabilitiesDisclosureTextBlock"> |
| <link:definition> 1023 - Disclosure - Accrued liabilities </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsAdvancePaymentsFromCustomersTextBlock" id="Role_NotesToFinancialStatementsAdvancePaymentsFromCustomersTextBlock"> |
| <link:definition> 1024 - Disclosure - Advance from customers </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsDebtDisclosureTextBlock" id="Role_NotesToFinancialStatementsDebtDisclosureTextBlock"> |
| <link:definition> 1025 - Disclosure - Convertible Bonds </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsOtherLiabilitiesDisclosureTextBlock" id="Role_NotesToFinancialStatementsOtherLiabilitiesDisclosureTextBlock"> |
| <link:definition> 1026 - Disclosure - Other liabilities </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsGoodwillAndIntangibleAssetsDisclosureTextBlock" id="Role_NotesToFinancialStatementsGoodwillAndIntangibleAssetsDisclosureTextBlock"> |
| <link:definition> 1027 - Disclosure - Goodwill and Other Intangible Assets </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsWarrantsDisclosureTextBlock" id="Role_NotesToFinancialStatementsWarrantsDisclosureTextBlock"> |
| <link:definition> 1028 - Disclosure - Stock option </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsStockholdersEquityNoteDisclosureTextBlock" id="Role_NotesToFinancialStatementsStockholdersEquityNoteDisclosureTextBlock"> |
| <link:definition> 1029 - Disclosure - Stockholders' Equity </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsDisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="Role_NotesToFinancialStatementsDisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"> |
| <link:definition> 1030 - Disclosure - Stock-based Compensation </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsAssetImpairmentChargesTextBlock" id="Role_NotesToFinancialStatementsAssetImpairmentChargesTextBlock"> |
| <link:definition> 1031 - Disclosure - Impairment charges </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsIncomeTaxDisclosureTextBlock" id="Role_NotesToFinancialStatementsIncomeTaxDisclosureTextBlock"> |
| <link:definition> 1032 - Disclosure - Income Taxes </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsEarningsPerShareTextBlock" id="Role_NotesToFinancialStatementsEarningsPerShareTextBlock"> |
| <link:definition> 1033 - Disclosure - Net Loss Per Share of Common Stock </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsCommitmentsAndContingenciesDisclosureTextBlock" id="Role_NotesToFinancialStatementsCommitmentsAndContingenciesDisclosureTextBlock"> |
| <link:definition> 1034 - Disclosure - Commitments and Contingencies </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsConcentrationRiskDisclosureTextBlock" id="Role_NotesToFinancialStatementsConcentrationRiskDisclosureTextBlock"> |
| <link:definition> 1035 - Disclosure - Operating Risk </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsSegmentReportingDisclosureTextBlock" id="Role_NotesToFinancialStatementsSegmentReportingDisclosureTextBlock"> |
| <link:definition> 1036 - Disclosure - Segment information </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsRelatedPartyTransactionsDisclosureTextBlock" id="Role_NotesToFinancialStatementsRelatedPartyTransactionsDisclosureTextBlock"> |
| <link:definition> 1037 - Disclosure - Related Party Transactions </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsSubsequentEventsTextBlock" id="Role_NotesToFinancialStatementsSubsequentEventsTextBlock"> |
| <link:definition> 1038 - Disclosure - Subsequent Events </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsSignificantAccountingPoliciesTextBlockPolicies" id="Role_NotesToFinancialStatementsSignificantAccountingPoliciesTextBlockPolicies"> |
| <link:definition> 1039 - Disclosure - Summary of Significant Accounting Policies (Policies) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsPropertyPlantAndEquipmentDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsPropertyPlantAndEquipmentDisclosureTextBlockTables"> |
| <link:definition> 1040 - Disclosure - Property, Plant and Equipment (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsSignificantAccountingPoliciesTextBlockTables" id="Role_NotesToFinancialStatementsSignificantAccountingPoliciesTextBlockTables"> |
| <link:definition> 1041 - Disclosure - Summary of Significant Accounting Policies (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsMergersAcquisitionsAndDispositionsDisclosuresTextBlockTables" id="Role_NotesToFinancialStatementsMergersAcquisitionsAndDispositionsDisclosuresTextBlockTables"> |
| <link:definition> 1042 - Disclosure - Business Acquisitions (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsLoansNotesTradeAndOtherReceivablesDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsLoansNotesTradeAndOtherReceivablesDisclosureTextBlockTables"> |
| <link:definition> 1043 - Disclosure - Accounts Receivable (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsInventoryDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsInventoryDisclosureTextBlockTables"> |
| <link:definition> 1044 - Disclosure - Inventories (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsConstructionInProgressTextBlockTables" id="Role_NotesToFinancialStatementsConstructionInProgressTextBlockTables"> |
| <link:definition> 1045 - Disclosure - Project Assets (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsPrepaidExpensesAndOtherCurrentAssetsTextBlockTables" id="Role_NotesToFinancialStatementsPrepaidExpensesAndOtherCurrentAssetsTextBlockTables"> |
| <link:definition> 1046 - Disclosure - Prepaid expenses and other current assets (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsFinancingReceivablesTextBlockTables" id="Role_NotesToFinancialStatementsFinancingReceivablesTextBlockTables"> |
| <link:definition> 1047 - Disclosure - Finance lease receivables (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsInvestmentsInAndAdvancesToAffiliatesScheduleOfInvestmentsTextBlockTables" id="Role_NotesToFinancialStatementsInvestmentsInAndAdvancesToAffiliatesScheduleOfInvestmentsTextBlockTables"> |
| <link:definition> 1048 - Disclosure - Investment in an affiliate (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsFairValueDisclosuresTextBlockTables" id="Role_NotesToFinancialStatementsFairValueDisclosuresTextBlockTables"> |
| <link:definition> 1049 - Disclosure - Fair value measurement (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsAccountsPayableAndAccruedLiabilitiesDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsAccountsPayableAndAccruedLiabilitiesDisclosureTextBlockTables"> |
| <link:definition> 1050 - Disclosure - Accrued liabilities (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsDebtDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsDebtDisclosureTextBlockTables"> |
| <link:definition> 1051 - Disclosure - Convertible Bonds (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsOtherLiabilitiesDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsOtherLiabilitiesDisclosureTextBlockTables"> |
| <link:definition> 1052 - Disclosure - Other liabilities (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsGoodwillAndIntangibleAssetsDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsGoodwillAndIntangibleAssetsDisclosureTextBlockTables"> |
| <link:definition> 1053 - Disclosure - Goodwill and Other Intangible Assets (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsStockholdersEquityNoteDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsStockholdersEquityNoteDisclosureTextBlockTables"> |
| <link:definition> 1054 - Disclosure - Stockholders' Equity (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsDisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlockTables" id="Role_NotesToFinancialStatementsDisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlockTables"> |
| <link:definition> 1055 - Disclosure - Stock-based Compensation (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsAssetImpairmentChargesTextBlockTables" id="Role_NotesToFinancialStatementsAssetImpairmentChargesTextBlockTables"> |
| <link:definition> 1056 - Disclosure - Impairment charges (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsIncomeTaxDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsIncomeTaxDisclosureTextBlockTables"> |
| <link:definition> 1057 - Disclosure - Income Taxes (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsEarningsPerShareTextBlockTables" id="Role_NotesToFinancialStatementsEarningsPerShareTextBlockTables"> |
| <link:definition> 1058 - Disclosure - Net Loss Per Share of Common Stock (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsCommitmentsAndContingenciesDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsCommitmentsAndContingenciesDisclosureTextBlockTables"> |
| <link:definition> 1059 - Disclosure - Commitments and Contingencies (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsConcentrationRiskDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsConcentrationRiskDisclosureTextBlockTables"> |
| <link:definition> 1060 - Disclosure - Operating Risk (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/NotesToFinancialStatementsSegmentReportingDisclosureTextBlockTables" id="Role_NotesToFinancialStatementsSegmentReportingDisclosureTextBlockTables"> |
| <link:definition> 1061 - Disclosure - Segment information (Tables) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformation" id="DisclosureSummaryOfSignificantAccountingPoliciesAdditionalInformation"> |
| <link:definition> 1062 - Disclosure - Summary of Significant Accounting Policies - Additional information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipment" id="DisclosureSummaryOfSignificantAccountingPoliciesPropertyPlantAndEquipment"> |
| <link:definition> 1063 - Disclosure - Summary of Significant Accounting Policies - Property , Plant and Equipment (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfTotalInterestCost" id="DisclosureSummaryOfSignificantAccountingPoliciesReconciliationOfTotalInterestCost"> |
| <link:definition> 1064 - Disclosure - Summary of Significant Accounting Policies - Reconciliation of Total Interest Cost (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureBusinessAcquisitionsAdditionalInformation" id="DisclosureBusinessAcquisitionsAdditionalInformation"> |
| <link:definition> 1065 - Disclosure - Business Acquisitions - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureBusinessAcquisitionsAllocationOfPurchasePrice" id="DisclosureBusinessAcquisitionsAllocationOfPurchasePrice"> |
| <link:definition> 1066 - Disclosure - Business Acquisitions - Allocation of Purchase Price (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureBusinessAcquisitionsUnauditedProformaConsolidatedResultsOfAcquisitions" id="DisclosureBusinessAcquisitionsUnauditedProformaConsolidatedResultsOfAcquisitions"> |
| <link:definition> 1067 - Disclosure - Business Acquisitions - Unaudited Proforma Consolidated Results of Acquisitions (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureRestrictedCashAdditionalInformation" id="DisclosureRestrictedCashAdditionalInformation"> |
| <link:definition> 1068 - Disclosure - Restricted Cash - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureShorttermInvestmentsAdditionalInformation" id="DisclosureShorttermInvestmentsAdditionalInformation"> |
| <link:definition> 1069 - Disclosure - Short-term Investments - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureAccountsReceivableAdditionalInformation" id="DisclosureAccountsReceivableAdditionalInformation"> |
| <link:definition> 1070 - Disclosure - Accounts Receivable - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureAccountsReceivableScheduleOfMovementOfAllowanceForDoubtfulAccounts" id="DisclosureAccountsReceivableScheduleOfMovementOfAllowanceForDoubtfulAccounts"> |
| <link:definition> 1071 - Disclosure - Accounts Receivable - Schedule of Movement of Allowance for Doubtful Accounts (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureAccountsReceivableAgeingOfAccountsReceivable" id="DisclosureAccountsReceivableAgeingOfAccountsReceivable"> |
| <link:definition> 1072 - Disclosure - Accounts Receivable - Ageing of Accounts Receivable (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureInventoriesComponentsOfInventories" id="DisclosureInventoriesComponentsOfInventories"> |
| <link:definition> 1073 - Disclosure - Inventories - Components of Inventories (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureInventoriesAdditionalInformation" id="DisclosureInventoriesAdditionalInformation"> |
| <link:definition> 1074 - Disclosure - Inventories - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureProjectAssetsAdditionalInformation" id="DisclosureProjectAssetsAdditionalInformation"> |
| <link:definition> 1075 - Disclosure - Project Assets - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureProjectAssetsSummaryOfProjectAssets" id="DisclosureProjectAssetsSummaryOfProjectAssets"> |
| <link:definition> 1076 - Disclosure - Project Assets - Summary of Project Assets (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosurePrepaidExpensesAndOtherCurrentAssetsSummaryOfPrepaidExpensesAndOtherCurrentAssets" id="DisclosurePrepaidExpensesAndOtherCurrentAssetsSummaryOfPrepaidExpensesAndOtherCurrentAssets"> |
| <link:definition> 1077 - Disclosure - Prepaid Expenses and Other Current Assets - Summary of Prepaid Expenses and Other Current Assets (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosurePrepaidExpensesAndOtherCurrentAssetsSummaryOfPrepaidExpensesAndOtherCurrentAssetsParenthetical" id="DisclosurePrepaidExpensesAndOtherCurrentAssetsSummaryOfPrepaidExpensesAndOtherCurrentAssetsParenthetical"> |
| <link:definition> 1078 - Disclosure - Prepaid Expenses and Other Current Assets - Summary of Prepaid Expenses and Other Current Assets (Parenthetical) (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureFinanceLeaseReceivablesAdditionalInformation" id="DisclosureFinanceLeaseReceivablesAdditionalInformation"> |
| <link:definition> 1079 - Disclosure - Finance Lease Receivables - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureFinanceLeaseReceivablesScheduleOfFinanceLeaseReceivable" id="DisclosureFinanceLeaseReceivablesScheduleOfFinanceLeaseReceivable"> |
| <link:definition> 1080 - Disclosure - Finance Lease Receivables - Schedule of Finance Lease Receivable (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureFinanceLeaseReceivablesScheduleOfFutureMaturitiesOfMinimumLeasePaymentsReceivable" id="DisclosureFinanceLeaseReceivablesScheduleOfFutureMaturitiesOfMinimumLeasePaymentsReceivable"> |
| <link:definition> 1081 - Disclosure - Finance Lease Receivables - Schedule of Future Maturities of Minimum Lease Payments Receivable (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosurePropertyPlantAndEquipmentPropertyPlantAndEquipment" id="DisclosurePropertyPlantAndEquipmentPropertyPlantAndEquipment"> |
| <link:definition> 1082 - Disclosure - Property, Plant and Equipment - Property, Plant and Equipment (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosurePropertyPlantAndEquipmentAdditionalInformation" id="DisclosurePropertyPlantAndEquipmentAdditionalInformation"> |
| <link:definition> 1083 - Disclosure - Property, Plant and Equipment - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureInvestmentInAnAffiliateAdditionalInformation" id="DisclosureInvestmentInAnAffiliateAdditionalInformation"> |
| <link:definition> 1084 - Disclosure - Investment in an Affiliate - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureInvestmentInAnAffiliateSummaryOfUnauditedFinancialInformation" id="DisclosureInvestmentInAnAffiliateSummaryOfUnauditedFinancialInformation"> |
| <link:definition> 1085 - Disclosure - Investment in an Affiliate - Summary of Unaudited Financial Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureInvestmentInAnAffiliateScheduleOfDifferenceBetweenCarryingValueOfInvestmentInPurchasedCommonStockAndUnderlyingEquityInNetAssets" id="DisclosureInvestmentInAnAffiliateScheduleOfDifferenceBetweenCarryingValueOfInvestmentInPurchasedCommonStockAndUnderlyingEquityInNetAssets"> |
| <link:definition> 1086 - Disclosure - Investment in an Affiliate - Schedule of Difference between Carrying Value of Investment in Purchased Common Stock and Underlying Equity in Net Assets (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureInvestmentInAnAffiliateScheduleOfDifferenceBetweenCarryingValueOfInvestmentInPurchasedCommonStockAndUnderlyingEquityInNetAssetsParenthetical" id="DisclosureInvestmentInAnAffiliateScheduleOfDifferenceBetweenCarryingValueOfInvestmentInPurchasedCommonStockAndUnderlyingEquityInNetAssetsParenthetical"> |
| <link:definition> 1087 - Disclosure - Investment in an Affiliate - Schedule of Difference between Carrying Value of Investment in Purchased Common Stock and Underlying Equity in Net Assets (Parenthetical) (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureFairValueMeasurementCarryingAmountsAndEstimatedFairValuesOfFinancialInstruments" id="DisclosureFairValueMeasurementCarryingAmountsAndEstimatedFairValuesOfFinancialInstruments"> |
| <link:definition> 1088 - Disclosure - Fair Value Measurement - Carrying Amounts and Estimated Fair Values of Financial Instruments (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureFairValueMeasurementAdditionalInformation" id="DisclosureFairValueMeasurementAdditionalInformation"> |
| <link:definition> 1089 - Disclosure - Fair Value Measurement - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureAccruedLiabilities" id="DisclosureAccruedLiabilities"> |
| <link:definition> 1090 - Disclosure - Accrued Liabilities (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureAccruedLiabilitiesAdditionalInformation" id="DisclosureAccruedLiabilitiesAdditionalInformation"> |
| <link:definition> 1091 - Disclosure - Accrued Liabilities - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureAdvanceFromCustomersAdditionalInformation" id="DisclosureAdvanceFromCustomersAdditionalInformation"> |
| <link:definition> 1092 - Disclosure - Advance from Customers - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureShortTermBorrowingsAndLongTermBorrowings" id="DisclosureShortTermBorrowingsAndLongTermBorrowings"> |
| <link:definition> 1093 - Disclosure - Short Term Borrowings and Long Term Borrowings (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureShortTermBorrowingsAndLongTermBorrowingsAdditionalInformation" id="DisclosureShortTermBorrowingsAndLongTermBorrowingsAdditionalInformation"> |
| <link:definition> 1094 - Disclosure - Short Term Borrowings and Long Term Borrowings - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureOtherLiabilitiesSummaryOfOtherLiabilities" id="DisclosureOtherLiabilitiesSummaryOfOtherLiabilities"> |
| <link:definition> 1095 - Disclosure - Other Liabilities - Summary of Other Liabilities (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureOtherLiabilitiesAdditionalInformation" id="DisclosureOtherLiabilitiesAdditionalInformation"> |
| <link:definition> 1096 - Disclosure - Other Liabilities - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureGoodwillAndOtherIntangibleAssetsCarryingAmountOfGoodwill" id="DisclosureGoodwillAndOtherIntangibleAssetsCarryingAmountOfGoodwill"> |
| <link:definition> 1097 - Disclosure - Goodwill and Other Intangible Assets - Carrying Amount of Goodwill (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformation" id="DisclosureGoodwillAndOtherIntangibleAssetsAdditionalInformation"> |
| <link:definition> 1098 - Disclosure - Goodwill and Other Intangible Assets - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureGoodwillAndOtherIntangibleAssetsOtherIntangibleAssets" id="DisclosureGoodwillAndOtherIntangibleAssetsOtherIntangibleAssets"> |
| <link:definition> 1099 - Disclosure - Goodwill and Other Intangible Assets - Other Intangible Assets (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureGoodwillAndOtherIntangibleAssetsEstimatedFutureAmortizationExpenseRelatedToOtherIntangibleAssets" id="DisclosureGoodwillAndOtherIntangibleAssetsEstimatedFutureAmortizationExpenseRelatedToOtherIntangibleAssets"> |
| <link:definition> 1100 - Disclosure - Goodwill and Other Intangible Assets - Estimated Future Amortization Expense Related to Other Intangible Assets (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureConvertibleBondsAdditionalInformation" id="DisclosureConvertibleBondsAdditionalInformation"> |
| <link:definition> 1101 - Disclosure - Convertible Bonds - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockOptionAdditionalInformation" id="DisclosureStockOptionAdditionalInformation"> |
| <link:definition> 1102 - Disclosure - Stock Option - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockholdersEquityAdditionalInformation" id="DisclosureStockholdersEquityAdditionalInformation"> |
| <link:definition> 1103 - Disclosure - Stockholders' Equity - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockholdersEquitySummaryOfCommonStockIssuances" id="DisclosureStockholdersEquitySummaryOfCommonStockIssuances"> |
| <link:definition> 1104 - Disclosure - Stockholders' Equity - Summary of Common Stock Issuances (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockholdersEquitySummaryOfCommonStockIssuancesParenthetical" id="DisclosureStockholdersEquitySummaryOfCommonStockIssuancesParenthetical"> |
| <link:definition> 1105 - Disclosure - Stockholders' Equity - Summary of Common Stock Issuances (Parenthetical) (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationSummaryOfConsolidatedStockbasedCompensationExpenseByTypeOfAwards" id="DisclosureStockbasedCompensationSummaryOfConsolidatedStockbasedCompensationExpenseByTypeOfAwards"> |
| <link:definition> 1106 - Disclosure - Stock-based Compensation - Summary of Consolidated Stock-based Compensation Expense, by Type of Awards (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationSummaryOfConsolidatedStockbasedCompensationByLineItem" id="DisclosureStockbasedCompensationSummaryOfConsolidatedStockbasedCompensationByLineItem"> |
| <link:definition> 1107 - Disclosure - Stock-based Compensation - Summary of Consolidated Stock-based Compensation by Line Item (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationAdditionalInformation" id="DisclosureStockbasedCompensationAdditionalInformation"> |
| <link:definition> 1108 - Disclosure - Stock-based Compensation - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationAssumptionsUsedToEstimateFairValueOfSharebasedPaymentAwards" id="DisclosureStockbasedCompensationAssumptionsUsedToEstimateFairValueOfSharebasedPaymentAwards"> |
| <link:definition> 1109 - Disclosure - Stock-based Compensation - Assumptions used to Estimate Fair Value of Share-based Payment Awards (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockOptionActivity" id="DisclosureStockbasedCompensationSummaryOfStockOptionActivity"> |
| <link:definition> 1110 - Disclosure - Stock-based Compensation - Summary of Stock Option Activity (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationSummaryOfExercisePriceAndRemainingLifeInformationAboutOptionsExercisable" id="DisclosureStockbasedCompensationSummaryOfExercisePriceAndRemainingLifeInformationAboutOptionsExercisable"> |
| <link:definition> 1111 - Disclosure - Stock-based Compensation - Summary of Exercise Price and Remaining Life Information about Options Exercisable (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationScheduleOfChangesInNonvestedStockAwards" id="DisclosureStockbasedCompensationScheduleOfChangesInNonvestedStockAwards"> |
| <link:definition> 1112 - Disclosure - Stock-based Compensation - Schedule of Changes in Nonvested Stock Awards (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureStockbasedCompensationScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivity" id="DisclosureStockbasedCompensationScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivity"> |
| <link:definition> 1113 - Disclosure - Stock-based Compensation - Schedule of Share-based Compensation, Restricted Stock and Restricted Stock Units Activity (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureImpairmentChargesSummaryOfAssetImpairmentCharges" id="DisclosureImpairmentChargesSummaryOfAssetImpairmentCharges"> |
| <link:definition> 1114 - Disclosure - Impairment Charges - Summary of Asset Impairment Charges (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureIncomeTaxesLossBeforeProvisionForIncomeTaxesByGeographicLocations" id="DisclosureIncomeTaxesLossBeforeProvisionForIncomeTaxesByGeographicLocations"> |
| <link:definition> 1115 - Disclosure - Income Taxes - Loss Before Provision for Income Taxes by Geographic Locations (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureIncomeTaxesScheduleOfProvisionForIncomeTaxes" id="DisclosureIncomeTaxesScheduleOfProvisionForIncomeTaxes"> |
| <link:definition> 1116 - Disclosure - Income Taxes - Schedule of Provision for Income Taxes (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureIncomeTaxesAdditionalInformation" id="DisclosureIncomeTaxesAdditionalInformation"> |
| <link:definition> 1117 - Disclosure - Income Taxes - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureIncomeTaxesReconciliationBetweenActualIncomeTaxExpenseAndIncomeTax" id="DisclosureIncomeTaxesReconciliationBetweenActualIncomeTaxExpenseAndIncomeTax"> |
| <link:definition> 1118 - Disclosure - Income Taxes - Reconciliation Between Actual Income Tax Expense and Income Tax (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureIncomeTaxesScheduleOfDeferredIncomeTaxes" id="DisclosureIncomeTaxesScheduleOfDeferredIncomeTaxes"> |
| <link:definition> 1119 - Disclosure - Income Taxes - Schedule of Deferred Income Taxes (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureNetLossPerShareOfCommonStockAdditionalInformation" id="DisclosureNetLossPerShareOfCommonStockAdditionalInformation"> |
| <link:definition> 1120 - Disclosure - Net Loss Per Share of Common Stock - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureNetLossPerShareOfCommonStockScheduleOfEarningsPerShareBasicAndDiluted" id="DisclosureNetLossPerShareOfCommonStockScheduleOfEarningsPerShareBasicAndDiluted"> |
| <link:definition> 1121 - Disclosure - Net Loss Per Share of Common Stock - Schedule of Earnings Per Share Basic and Diluted (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureCommitmentsAndContingenciesAdditionalInformation" id="DisclosureCommitmentsAndContingenciesAdditionalInformation"> |
| <link:definition> 1122 - Disclosure - Commitments and Contingencies - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeases" id="DisclosureCommitmentsAndContingenciesScheduleOfFutureMinimumRentalPaymentsForOperatingLeases"> |
| <link:definition> 1123 - Disclosure - Commitments and Contingencies - Schedule of Future Minimum Rental Payments for Operating Leases (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureOperatingRiskConcentrationsOfCreditRiskAndMajorCustomersRevenue" id="DisclosureOperatingRiskConcentrationsOfCreditRiskAndMajorCustomersRevenue"> |
| <link:definition> 1124 - Disclosure - Operating Risk - Concentrations of Credit Risk and Major Customers - Revenue (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureOperatingRiskConcentrationsOfCreditRiskAndMajorCustomersReceivables" id="DisclosureOperatingRiskConcentrationsOfCreditRiskAndMajorCustomersReceivables"> |
| <link:definition> 1125 - Disclosure - Operating Risk - Concentrations of Credit Risk and Major Customers - Receivables (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSegmentInformationNetSalesByMajorProductAndServices" id="DisclosureSegmentInformationNetSalesByMajorProductAndServices"> |
| <link:definition> 1126 - Disclosure - Segment Information - Net Sales by Major Product and Services (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSegmentInformationNetSalesByGeographicLocation" id="DisclosureSegmentInformationNetSalesByGeographicLocation"> |
| <link:definition> 1127 - Disclosure - Segment Information - Net Sales by Geographic Location (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSegmentInformationGeographicInformationBasedUponPhysicalLocationForLongLivedAssets" id="DisclosureSegmentInformationGeographicInformationBasedUponPhysicalLocationForLongLivedAssets"> |
| <link:definition> 1128 - Disclosure - Segment Information - Geographic Information Based Upon Physical Location for Long-Lived Assets (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureRelatedPartyTransactionsAdditionalInformation" id="DisclosureRelatedPartyTransactionsAdditionalInformation"> |
| <link:definition> 1129 - Disclosure - Related Party Transactions - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureSubsequentEventsAdditionalInformation" id="DisclosureSubsequentEventsAdditionalInformation"> |
| <link:definition> 1130 - Disclosure - Subsequent Events - Additional Information (Detail) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:roleType roleURI="http://www.spisolar.com/taxonomy/role/DisclosureProjectAssetsSummaryOfProjectAssetsAlternate1" id="DisclosureProjectAssetsSummaryOfProjectAssetsAlt1"> |
| <link:definition> 1131 - Disclosure - Project Assets - Summary of Project Assets (Detail) (Alternate 1) </link:definition> |
| <link:usedOn> link:calculationLink </link:usedOn> |
| <link:usedOn> link:presentationLink </link:usedOn> |
| <link:usedOn> link:definitionLink </link:usedOn> |
| </link:roleType> |
| | | <link:linkbaseRef xlink:type="simple" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:href="spi-20151231_cal.xml" xlink:title="Calculation Links, all"/> |
| | | <link:linkbaseRef xlink:type="simple" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:href="spi-20151231_def.xml" xlink:title="Definition Links, all"/> |
| | | <link:linkbaseRef xlink:type="simple" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:href="spi-20151231_lab.xml" xlink:title="Label Links, all"/> |
| | | <link:linkbaseRef xlink:type="simple" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:href="spi-20151231_pre.xml" xlink:title="Presentation Links, all"/> |
| | | </appinfo> |
| | </annotation> |
| <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/> |
| <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/> |
| <import namespace="http://fasb.org/us-types/2015-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2015/elts/us-types-2015-01-31.xsd"/> |
| <import namespace="http://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd"/> |
| <import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd"/> |
| <import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/> |
| <import namespace="http://fasb.org/us-gaap/2015-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2015/elts/us-gaap-2015-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/country/2013-01-31" schemaLocation="http://xbrl.sec.gov/country/2013/country-2013-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/currency/2014-01-31" schemaLocation="http://xbrl.sec.gov/currency/2014/currency-2014-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/dei/2014-01-31" schemaLocation="http://xbrl.sec.gov/dei/2014/dei-2014-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/exch/2015-01-31" schemaLocation="http://xbrl.sec.gov/exch/2015/exch-2015-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/invest/2013-01-31" schemaLocation="http://xbrl.sec.gov/invest/2013/invest-2013-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/naics/2011-01-31" schemaLocation="http://xbrl.sec.gov/naics/2011/naics-2011-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd"/> |
| <import namespace="http://xbrl.sec.gov/stpr/2011-01-31" schemaLocation="http://xbrl.sec.gov/stpr/2011/stpr-2011-01-31.xsd"/> |
| <element name="AccountReceivablesCurrentMember" id="spi_AccountReceivablesCurrentMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountReceivablesNinetyOneToOneHundredAndEightyDaysPastDueMember" id="spi_AccountReceivablesNinetyOneToOneHundredAndEightyDaysPastDueMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountReceivablesOneHundredAndEightyOneToThreeHundredAndSixtyFiveDaysPastDueMember" id="spi_AccountReceivablesOneHundredAndEightyOneToThreeHundredAndSixtyFiveDaysPastDueMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountReceivablesOverOneYearPastDueMember" id="spi_AccountReceivablesOverOneYearPastDueMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountReceivablesZeroToNinetyDaysPastDueMember" id="spi_AccountReceivablesZeroToNinetyDaysPastDueMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountsPayableRelatedPartiesNet" id="spi_AccountsPayableRelatedPartiesNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountsReceivableInstallmentOneMember" id="spi_AccountsReceivableInstallmentOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountsReceivableInstallmentThreeMember" id="spi_AccountsReceivableInstallmentThreeMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountsReceivableInstallmentTwoMember" id="spi_AccountsReceivableInstallmentTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccountsReceivableUnderContractualMilestonesPaymentPeriod" id="spi_AccountsReceivableUnderContractualMilestonesPaymentPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccruedExpenseCurrent" id="spi_AccruedExpenseCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccruedLiabilitiesLineItems" id="spi_AccruedLiabilitiesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AccruedLiabilitiesTable" id="spi_AccruedLiabilitiesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="AdjustmentsToAdditionalPaidInCapitalDebtForgivenessAffiliate" id="spi_AdjustmentsToAdditionalPaidInCapitalDebtForgivenessAffiliate" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AdvancePaymentsFromCustomersTextBlock" id="spi_AdvancePaymentsFromCustomersTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="Aerojet1ProjectMember" id="spi_Aerojet1ProjectMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AllZipRoofingSystemGroupCoLtdMember" id="spi_AllZipRoofingSystemGroupCoLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AlxaLeagueZhiweiPhotovoltaicPowerGenerationCoLtdMember" id="spi_AlxaLeagueZhiweiPhotovoltaicPowerGenerationCoLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AssetImpairmentChargeMember" id="spi_AssetImpairmentChargeMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="AssetImpairmentChargesNet" id="spi_AssetImpairmentChargesNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BankOfSuzhouMember" id="spi_BankOfSuzhouMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BeaverRunProjectMember" id="spi_BeaverRunProjectMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BlackrockIncomeUkHoldingLimitedMember" id="spi_BlackrockIncomeUkHoldingLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BrandAmbassadorMember" id="spi_BrandAmbassadorMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BrandNameSponsorshipPeriod" id="spi_BrandNameSponsorshipPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BrilliantKingMember" id="spi_BrilliantKingMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BrilliantKingPoseidonAndUnionSkyMember" id="spi_BrilliantKingPoseidonAndUnionSkyMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessAcquisitionLockupPeriodForSharesIssued" id="spi_BusinessAcquisitionLockupPeriodForSharesIssued" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessAcquisitionLockupPeriodForSharesIssuedClosingDate" id="spi_BusinessAcquisitionLockupPeriodForSharesIssuedClosingDate" type="xbrli:dateItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessAcquisitionsProFormaEarningsPerShareBasicAndDiluted" id="spi_BusinessAcquisitionsProFormaEarningsPerShareBasicAndDiluted" type="num:perShareItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationPercentageOfEquityInterestPledgedToSeller" id="spi_BusinessCombinationPercentageOfEquityInterestPledgedToSeller" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" id="spi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesCustomerAdvances" id="spi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesCustomerAdvances" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesShortTermDebt" id="spi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesShortTermDebt" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" id="spi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIncomeTaxPayable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherReceivable" id="spi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherReceivable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPrepaidIncomeTax" id="spi_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPrepaidIncomeTax" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CalwaiiMember" id="spi_CalwaiiMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CalwaiiProjectMember" id="spi_CalwaiiProjectMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CapitalLeaseObligationsFairValue" id="spi_CapitalLeaseObligationsFairValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CECEPMember" id="spi_CECEPMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CecepSolarEnergyHongKongCompanyLimitedMember" id="spi_CecepSolarEnergyHongKongCompanyLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CecepSolarEnergyLuxembourgPrivateLimitedCompanyMember" id="spi_CecepSolarEnergyLuxembourgPrivateLimitedCompanyMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CentralAbleInvestmentsLimitedMember" id="spi_CentralAbleInvestmentsLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CertainExecutivesAndEmployeesMember" id="spi_CertainExecutivesAndEmployeesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CevFourZeroOneHoldingsLimitedMember" id="spi_CevFourZeroOneHoldingsLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ChangesInOperatingAssetsAndLiabilitiesAbstract" id="spi_ChangesInOperatingAssetsAndLiabilitiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ChinaKangfuInternationalLeasingCompanyLimitedMember" id="spi_ChinaKangfuInternationalLeasingCompanyLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ChinaMinshengBankMember" id="spi_ChinaMinshengBankMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ClassOfWarrantOrRightExpired" id="spi_ClassOfWarrantOrRightExpired" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CommitmentsFromShareholdersToAcquireCommonStockShares" id="spi_CommitmentsFromShareholdersToAcquireCommonStockShares" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CommitmentsFromShareholdersToAcquireCommonStockValue" id="spi_CommitmentsFromShareholdersToAcquireCommonStockValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CommonStockIssuedToAcquireProjectAssetsInConstructionMember" id="spi_CommonStockIssuedToAcquireProjectAssetsInConstructionMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CommonStockIssuedToAcquireSubsidiariesMember" id="spi_CommonStockIssuedToAcquireSubsidiariesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CommonStockIssuedToSettlePayableMember" id="spi_CommonStockIssuedToSettlePayableMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConsiderationForSaleOfRealEstate" id="spi_ConsiderationForSaleOfRealEstate" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConstructionInProgressCurrent" id="spi_ConstructionInProgressCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConstructionInProgressCurrentAndNoncurrent" id="spi_ConstructionInProgressCurrentAndNoncurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConstructionInProgressTextBlock" id="spi_ConstructionInProgressTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConstructionMember" id="spi_ConstructionMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ContractPaymentPercentage" id="spi_ContractPaymentPercentage" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ContractPaymentPeriod" id="spi_ContractPaymentPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConversionOfConvertiblePreferredStockIntoCommonStockShares" id="spi_ConversionOfConvertiblePreferredStockIntoCommonStockShares" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConvertergyOneHoldingsLimitedMember" id="spi_ConvertergyOneHoldingsLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConvertibleBondMember" id="spi_ConvertibleBondMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ConvertiblePreferredStockConversionPeriod" id="spi_ConvertiblePreferredStockConversionPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CoreManagementMember" id="spi_CoreManagementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CouponsFaceValue" id="spi_CouponsFaceValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CouponsIssuedToSettleAccountsPayable" id="spi_CouponsIssuedToSettleAccountsPayable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="CustomerCreditTerm" id="spi_CustomerCreditTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DebtInstrumentMaturityYear" id="spi_DebtInstrumentMaturityYear" type="xbrli:gYearItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DebtInstrumentWithdrawalAndRepaymentPeriod" id="spi_DebtInstrumentWithdrawalAndRepaymentPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DebtSettlementWaiverOfferedAmount" id="spi_DebtSettlementWaiverOfferedAmount" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DebtSettlementWaiverPaidAmount" id="spi_DebtSettlementWaiverPaidAmount" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DeferredTaxAssetsFairValueAdjustmentOfSubsidiaries" id="spi_DeferredTaxAssetsFairValueAdjustmentOfSubsidiaries" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DeferredTaxLiabilitiesFairValueAdjustmentOfSubsidiaries" id="spi_DeferredTaxLiabilitiesFairValueAdjustmentOfSubsidiaries" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DepositAndPrepaymentForAcquisitions" id="spi_DepositAndPrepaymentForAcquisitions" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DerivativeLiabilityIssuedToAcquireProjectAssets" id="spi_DerivativeLiabilityIssuedToAcquireProjectAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DingdingYiweiMember" id="spi_DingdingYiweiMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DisposalGroupIncludingDiscontinuedOperationCompensationPaidToBuyer" id="spi_DisposalGroupIncludingDiscontinuedOperationCompensationPaidToBuyer" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DocumentAndEntityInformationAbstract" id="spi_DocumentAndEntityInformationAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="DueToIndividualInvestorsCurrent" id="spi_DueToIndividualInvestorsCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EngineeringDocumentsMember" id="spi_EngineeringDocumentsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EngineeringProcurementAndConstructionContractMember" id="spi_EngineeringProcurementAndConstructionContractMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EngineeringProcurementAndConstructionEPCMember" id="spi_EngineeringProcurementAndConstructionEPCMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EnsyncIncMember" id="spi_EnsyncIncMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityIncentivePlan2006Member" id="spi_EquityIncentivePlan2006Member" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityIncentivePlanTwentyFifteenMember" id="spi_EquityIncentivePlanTwentyFifteenMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityInterestPercentage" id="spi_EquityInterestPercentage" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentCommonStockConsiderationValuePerShare" id="spi_EquityMethodInvestmentCommonStockConsiderationValuePerShare" type="num:perShareItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentNumberOfCommonSharesAcquired" id="spi_EquityMethodInvestmentNumberOfCommonSharesAcquired" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentSummarizedFinancialInformationAssetsOtherAssets" id="spi_EquityMethodInvestmentSummarizedFinancialInformationAssetsOtherAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLossAttributableToNoncontrollingInterest" id="spi_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLossAttributableToNoncontrollingInterest" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLossAvailableToCommonStockholders" id="spi_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLossAvailableToCommonStockholders" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLossIncludingPortionAttributableToNoncontrollingInterest" id="spi_EquityMethodInvestmentSummarizedFinancialInformationNetIncomeLossIncludingPortionAttributableToNoncontrollingInterest" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EquityMethodInvestmentSummarizedFinancialInformationPreferredStockDividendDistributions" id="spi_EquityMethodInvestmentSummarizedFinancialInformationPreferredStockDividendDistributions" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EstimatedLossesOnUncompletedContracts" id="spi_EstimatedLossesOnUncompletedContracts" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="EstimatedUsefulLivesMember" id="spi_EstimatedUsefulLivesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ExchangeOfAccountsReceivableToAcquireProjectAssetsInConstruction" id="spi_ExchangeOfAccountsReceivableToAcquireProjectAssetsInConstruction" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ExchangeOfAppleOrchardAccountsReceivableToAcquireInventoryMember" id="spi_ExchangeOfAppleOrchardAccountsReceivableToAcquireInventoryMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ExchangeOfBeaverRunAccountsReceivableToAcquireInventoryAndOtherAssetsMember" id="spi_ExchangeOfBeaverRunAccountsReceivableToAcquireInventoryAndOtherAssetsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ExchangeOfInvestmentsInAffiliatesToAcquireProjectAssets" id="spi_ExchangeOfInvestmentsInAffiliatesToAcquireProjectAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ExchangeOfNotesReceivableRelatedPartyAndOtherAssetsToAcquireConstructionInProgress" id="spi_ExchangeOfNotesReceivableRelatedPartyAndOtherAssetsToAcquireConstructionInProgress" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ExchangeOfSeashoreAccountsReceivableToAcquireInventoryMember" id="spi_ExchangeOfSeashoreAccountsReceivableToAcquireInventoryMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FinanceLeaseContractsMember" id="spi_FinanceLeaseContractsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FinanceReceivablesFairValueDisclosure" id="spi_FinanceReceivablesFairValueDisclosure" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FinancialServicesRevenueMember" id="spi_FinancialServicesRevenueMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FinancingLeaseObligationCurrent" id="spi_FinancingLeaseObligationCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FinancingLeaseObligationNoncurrent" id="spi_FinancingLeaseObligationNoncurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FormerExecutiveMember" id="spi_FormerExecutiveMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ForwinInternationalFinancialHoldingLimitedMember" id="spi_ForwinInternationalFinancialHoldingLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FundsFromSolarEnergyOnlinePlatformMember" id="spi_FundsFromSolarEnergyOnlinePlatformMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="FundsRaisedFromOnLineProductsPerUnit" id="spi_FundsRaisedFromOnLineProductsPerUnit" type="num:perShareItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="GoodwillAndOtherIntangibleAssetsLineItems" id="spi_GoodwillAndOtherIntangibleAssetsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="GoodwillAndOtherIntangibleAssetsTable" id="spi_GoodwillAndOtherIntangibleAssetsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="GovernanceAgreementMember" id="spi_GovernanceAgreementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="GreystoneMember" id="spi_GreystoneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="GuaranteeDepositMaturityPeriod" id="spi_GuaranteeDepositMaturityPeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="GuaranteeDepositMember" id="spi_GuaranteeDepositMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="GuoDianNaiLunTeZuoQiPhotovoltaicPowerGenerationLlcMember" id="spi_GuoDianNaiLunTeZuoQiPhotovoltaicPowerGenerationLlcMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="HuangZhengMember" id="spi_HuangZhengMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IdentifiableAssetsAcquiredAndLiabilitiesAssumedAbstract" id="spi_IdentifiableAssetsAcquiredAndLiabilitiesAssumedAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ImpairmentOfAccountsReceivable" id="spi_ImpairmentOfAccountsReceivable" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ImpairmentOfNoteReceivables" id="spi_ImpairmentOfNoteReceivables" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ImpairmentOfPrepaidExpensesAndOtherCurrentAssets" id="spi_ImpairmentOfPrepaidExpensesAndOtherCurrentAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IncomeTaxReconciliationNonDeductibleExpensesAndNonTaxableIncome" id="spi_IncomeTaxReconciliationNonDeductibleExpensesAndNonTaxableIncome" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IncreaseDecreaseInAdditionalPaidInCapital" id="spi_IncreaseDecreaseInAdditionalPaidInCapital" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IncreaseDecreaseInConstructionInProgressCurrent" id="spi_IncreaseDecreaseInConstructionInProgressCurrent" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IncreaseDecreaseInCostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" id="spi_IncreaseDecreaseInCostsAndEstimatedEarningsInExcessOfBillingOnUncompletedContracts" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IncreaseDecreaseInRelatedPartyNet" id="spi_IncreaseDecreaseInRelatedPartyNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="IncreaseDecreaseInThirdPartyNet" id="spi_IncreaseDecreaseInThirdPartyNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="InnerMongoliaZhaojingPhotovoltaicPowerGenerationCompanyLimitedMember" id="spi_InnerMongoliaZhaojingPhotovoltaicPowerGenerationCompanyLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="InverterAndBalanceOfSystemComponentsMember" id="spi_InverterAndBalanceOfSystemComponentsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="KDCSolarCreditLSLLCMember" id="spi_KDCSolarCreditLSLLCMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LDKSolarCoLtdMember" id="spi_LDKSolarCoLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LeaseContractValue" id="spi_LeaseContractValue" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LegalClaimOneMember" id="spi_LegalClaimOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LegalClaimTwoMember" id="spi_LegalClaimTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LoansPayableTextBlock" id="spi_LoansPayableTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LongTermBorrowingMaturedInTwentyEighteenMember" id="spi_LongTermBorrowingMaturedInTwentyEighteenMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="LongTermBorrowingMaturedInTwentySeventeenMember" id="spi_LongTermBorrowingMaturedInTwentySeventeenMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="MountainCreekProjectMember" id="spi_MountainCreekProjectMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NoncashActivityRelatedToSolarSystemSubjectToFinancingObligation" id="spi_NoncashActivityRelatedToSolarSystemSubjectToFinancingObligation" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfCommonStockInvestmentRequiredToBeHeldToMaintainGovernanceInEquityMethodInvestment" id="spi_NumberOfCommonStockInvestmentRequiredToBeHeldToMaintainGovernanceInEquityMethodInvestment" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfContracts" id="spi_NumberOfContracts" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfConvertibleNotes" id="spi_NumberOfConvertibleNotes" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfConvertiblePreferredSharesInvestmentRequiredToBeHeldToMaintainGovernanceInEquityMethodInvestment" id="spi_NumberOfConvertiblePreferredSharesInvestmentRequiredToBeHeldToMaintainGovernanceInEquityMethodInvestment" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfConvertibleRedeemablePreferredSharesAcquired" id="spi_NumberOfConvertibleRedeemablePreferredSharesAcquired" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfDaysToCancelDiscount" id="spi_NumberOfDaysToCancelDiscount" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfProjectCompaniesWhereMembershipInterestWasAcquired" id="spi_NumberOfProjectCompaniesWhereMembershipInterestWasAcquired" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfSolarPhotovoltaicSystems" id="spi_NumberOfSolarPhotovoltaicSystems" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfSolarPhotovoltaicSystemsAcquired" id="spi_NumberOfSolarPhotovoltaicSystemsAcquired" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfSolarPhotovoltaicSystemsSold" id="spi_NumberOfSolarPhotovoltaicSystemsSold" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="NumberOfSolarPowerPlants" id="spi_NumberOfSolarPowerPlants" type="xbrli:integerItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OptionsToAcquireAdditionalInterestPercent" id="spi_OptionsToAcquireAdditionalInterestPercent" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherDepositAndPrepayments" id="spi_OtherDepositAndPrepayments" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherDepositAndPrepaymentsMember" id="spi_OtherDepositAndPrepaymentsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherManagementAndStaffMember" id="spi_OtherManagementAndStaffMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherProjectsMember" id="spi_OtherProjectsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherReceivableMember" id="spi_OtherReceivableMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherReceivablesFairValueDisclosure" id="spi_OtherReceivablesFairValueDisclosure" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherRevenuesMember" id="spi_OtherRevenuesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="OtherServicesMember" id="spi_OtherServicesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PaymentSchedulePeriodOneMember" id="spi_PaymentSchedulePeriodOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PaymentSchedulePeriodTwoMember" id="spi_PaymentSchedulePeriodTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PaymentsForProceedsFromSaleAndLeaseBackTransactions" id="spi_PaymentsForProceedsFromSaleAndLeaseBackTransactions" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PaymentsOnRedemptions" id="spi_PaymentsOnRedemptions" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PaymentsToAcquireProjectAssets" id="spi_PaymentsToAcquireProjectAssets" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PaymentUnderContractualMilestonesRemainingPaymentPercentage" id="spi_PaymentUnderContractualMilestonesRemainingPaymentPercentage" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfCommissionsClaimedFromGrossRevenue" id="spi_PercentageOfCommissionsClaimedFromGrossRevenue" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfDiscountOfferedOnInvestmentUnits" id="spi_PercentageOfDiscountOfferedOnInvestmentUnits" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfFundPrincipalForCommissionFee" id="spi_PercentageOfFundPrincipalForCommissionFee" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfMembershipInterestAcquired" id="spi_PercentageOfMembershipInterestAcquired" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfPaymentUnderContractualMilestones" id="spi_PercentageOfPaymentUnderContractualMilestones" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfPreferredStockConvertibleToCommonStock" id="spi_PercentageOfPreferredStockConvertibleToCommonStock" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfProfitAfterTaxForAppropriationToGeneralReserve" id="spi_PercentageOfProfitAfterTaxForAppropriationToGeneralReserve" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfSharesPledgedToSecureObligations" id="spi_PercentageOfSharesPledgedToSecureObligations" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageOfTaxPositionBenefitMaximumThanBeingRealizedUponUltimateSettlement" id="spi_PercentageOfTaxPositionBenefitMaximumThanBeingRealizedUponUltimateSettlement" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PercentageSaleOfShares" id="spi_PercentageSaleOfShares" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PhotoVoltaicSolarComponentsMember" id="spi_PhotoVoltaicSolarComponentsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PhotoVoltaicSolarSystemMember" id="spi_PhotoVoltaicSolarSystemMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PlantAndMachineryMember" id="spi_PlantAndMachineryMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PoseidonMember" id="spi_PoseidonMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PossibilityFourMember" id="spi_PossibilityFourMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PossibilityOneMember" id="spi_PossibilityOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PossibilityThreeMember" id="spi_PossibilityThreeMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PossibilityTwoMember" id="spi_PossibilityTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PowerGeneratingCapacity" id="spi_PowerGeneratingCapacity" type="num:energyItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PowerGenerationCapacity" id="spi_PowerGenerationCapacity" type="num:powerItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PowerPurchaseAgreementsPPAMember" id="spi_PowerPurchaseAgreementsPPAMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PredevelopmentProjectSalesMember" id="spi_PredevelopmentProjectSalesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PrepaidExpensesAndOtherCurrentAssetsLineItems" id="spi_PrepaidExpensesAndOtherCurrentAssetsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PrepaidExpensesAndOtherCurrentAssetsTable" id="spi_PrepaidExpensesAndOtherCurrentAssetsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="PrepaidExpensesAndOtherCurrentAssetsTextBlock" id="spi_PrepaidExpensesAndOtherCurrentAssetsTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PriceRange1Member" id="spi_PriceRange1Member" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PriceRange2Member" id="spi_PriceRange2Member" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PriceRange3Member" id="spi_PriceRange3Member" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProceedsFromInvestors" id="spi_ProceedsFromInvestors" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProcurementsMember" id="spi_ProcurementsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProductOneMember" id="spi_ProductOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProductTwoMember" id="spi_ProductTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProjectAssetsConstructionCompleted" id="spi_ProjectAssetsConstructionCompleted" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProjectAssetsHeldForDevelopmentAndSale" id="spi_ProjectAssetsHeldForDevelopmentAndSale" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProjectAssetsMember" id="spi_ProjectAssetsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProjectAssetsPermitsAndPreDevelopmentCost" id="spi_ProjectAssetsPermitsAndPreDevelopmentCost" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProjectAssetsUnderDevelopment" id="spi_ProjectAssetsUnderDevelopment" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProjectCostsPolicyPolicyTextBlock" id="spi_ProjectCostsPolicyPolicyTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PropertyPlantAndEquipmentUsefulLifeAxis" id="spi_PropertyPlantAndEquipmentUsefulLifeAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:dimensionItem"/> |
| <element name="PropertyPlantAndEquipmentUsefulLifeDomain" id="spi_PropertyPlantAndEquipmentUsefulLifeDomain" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProvisionForInventories" id="spi_ProvisionForInventories" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ProvisionForLossesOnContracts" id="spi_ProvisionForLossesOnContracts" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PurchaseAgreementMember" id="spi_PurchaseAgreementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PVModulesMember" id="spi_PVModulesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="PVSolarSystemsMember" id="spi_PVSolarSystemsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="RealEstatePropertiesBasePurchasePriceAbstract" id="spi_RealEstatePropertiesBasePurchasePriceAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ReCapitalPteLtdMember" id="spi_ReCapitalPteLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="RedemptionOfCommonStock" id="spi_RedemptionOfCommonStock" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="RepaymentToInvestors" id="spi_RepaymentToInvestors" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ReservedSharePercentageOfOutstandingShares" id="spi_ReservedSharePercentageOfOutstandingShares" type="num:percentItemType" abstract="false" xbrli:periodType="instant" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="RestrictedCashForAcquisitionReleaseDate" id="spi_RestrictedCashForAcquisitionReleaseDate" type="xbrli:dateItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="RIIncomeUKHoldingLimitedMember" id="spi_RIIncomeUKHoldingLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SaleLeasebackTransactionLeasePeriod" id="spi_SaleLeasebackTransactionLeasePeriod" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SalesAgreementMember" id="spi_SalesAgreementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfCommitmentsAndContingenciesDetailsLineItems" id="spi_ScheduleOfCommitmentsAndContingenciesDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfCommitmentsAndContingenciesDetailsTable" id="spi_ScheduleOfCommitmentsAndContingenciesDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="ScheduleOfCommonStockIssuanceTableTextBlock" id="spi_ScheduleOfCommonStockIssuanceTableTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfComponentsOfLeaseReceivableTableTextBlock" id="spi_ScheduleOfComponentsOfLeaseReceivableTableTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfEquityMethodInvestmentDifferenceBetweenCarryingAmountAndUnderlyingEquityTableTextBlock" id="spi_ScheduleOfEquityMethodInvestmentDifferenceBetweenCarryingAmountAndUnderlyingEquityTableTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfFairValueMeasurementDetailsLineItems" id="spi_ScheduleOfFairValueMeasurementDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfFairValueMeasurementDetailsTable" id="spi_ScheduleOfFairValueMeasurementDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="ScheduleOfLoansPayableDetailsLineItems" id="spi_ScheduleOfLoansPayableDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfLoansPayableDetailsTable" id="spi_ScheduleOfLoansPayableDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="ScheduleOfProjectAssetsDetailsLineItems" id="spi_ScheduleOfProjectAssetsDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfProjectAssetsDetailsTable" id="spi_ScheduleOfProjectAssetsDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="ScheduleOfStockholdersEquityDetailsLineItems" id="spi_ScheduleOfStockholdersEquityDetailsLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfStockholdersEquityDetailsSummaryOfCommonStockIssuancesLineItems" id="spi_ScheduleOfStockholdersEquityDetailsSummaryOfCommonStockIssuancesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ScheduleOfStockholdersEquityDetailsSummaryOfCommonStockIssuancesTable" id="spi_ScheduleOfStockholdersEquityDetailsSummaryOfCommonStockIssuancesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="ScheduleOfStockholdersEquityDetailsTable" id="spi_ScheduleOfStockholdersEquityDetailsTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="SecuritiesPurchaseAgreementMember" id="spi_SecuritiesPurchaseAgreementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ServiceRevenueMember" id="spi_ServiceRevenueMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SettlementAndMutualReleaseAccountsPayableWaivableMember" id="spi_SettlementAndMutualReleaseAccountsPayableWaivableMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SettlementAndMutualReleaseMember" id="spi_SettlementAndMutualReleaseMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SharesIssuedSubjectToLockupPeriodFourMember" id="spi_SharesIssuedSubjectToLockupPeriodFourMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SharesIssuedSubjectToLockupPeriodOneMember" id="spi_SharesIssuedSubjectToLockupPeriodOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SharesIssuedSubjectToLockupPeriodThreeMember" id="spi_SharesIssuedSubjectToLockupPeriodThreeMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SharesIssuedSubjectToLockupPeriodTwoMember" id="spi_SharesIssuedSubjectToLockupPeriodTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ShortTermInvestmentEstimatedRateOfReturn" id="spi_ShortTermInvestmentEstimatedRateOfReturn" type="num:percentItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ShortTermInvestmentMaturityDate" id="spi_ShortTermInvestmentMaturityDate" type="xbrli:dateItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ShotocoEnergyLimitedLiabilityCompanyMember" id="spi_ShotocoEnergyLimitedLiabilityCompanyMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SinsinGroupSettlementAgreementMember" id="spi_SinsinGroupSettlementAgreementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarEnergyEcommerceShangaiLimitedMember" id="spi_SolarEnergyEcommerceShangaiLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarEnergySystemsMember" id="spi_SolarEnergySystemsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarJuicePtyLtdMajorityShareholdersMember" id="spi_SolarJuicePtyLtdMajorityShareholdersMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarJuicePtyLtdMember" id="spi_SolarJuicePtyLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarModulesMember" id="spi_SolarModulesMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarPanelsMember" id="spi_SolarPanelsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarParkDevelopmentFourLimitedMember" id="spi_SolarParkDevelopmentFourLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarParkDevelopmentThreeLimitedMember" id="spi_SolarParkDevelopmentThreeLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarParkDevelopmentTwoLimitedMember" id="spi_SolarParkDevelopmentTwoLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarPowerIncorporationEnergiebauRenewableGmbhMember" id="spi_SolarPowerIncorporationEnergiebauRenewableGmbhMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SolarTaxPartners1LLCMember" id="spi_SolarTaxPartners1LLCMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="StateGridCorporationOfChinaMember" id="spi_StateGridCorporationOfChinaMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="StockIssuedDuringPeriodSharesOptionAgreement" id="spi_StockIssuedDuringPeriodSharesOptionAgreement" type="xbrli:sharesItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SukagawaProjectMember" id="spi_SukagawaProjectMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SummaryOfOtherLiabilitiesAbstract" id="spi_SummaryOfOtherLiabilitiesAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SummaryOfProjectAssetsAbstract" id="spi_SummaryOfProjectAssetsAbstract" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SummaryOfSignificantAccountingPoliciesLineItems" id="spi_SummaryOfSignificantAccountingPoliciesLineItems" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SummaryOfSignificantAccountingPoliciesTable" id="spi_SummaryOfSignificantAccountingPoliciesTable" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:hypercubeItem"/> |
| <element name="SupermercyLimitedMember" id="spi_SupermercyLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SupplyAgreementMember" id="spi_SupplyAgreementMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="SuzhouLiuxinIndustryLtdMember" id="spi_SuzhouLiuxinIndustryLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="TaxesByNatureAxis" id="spi_TaxesByNatureAxis" type="xbrli:stringItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrldt:dimensionItem"/> |
| <element name="TaxesByNatureDomain" id="spi_TaxesByNatureDomain" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="TimeBasedOptionsMember" id="spi_TimeBasedOptionsMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="TrancheOneMember" id="spi_TrancheOneMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="TrancheTwoMember" id="spi_TrancheTwoMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="UnderDevelopmentCompanyAsProjectOwner" id="spi_UnderDevelopmentCompanyAsProjectOwner" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="UnionSkyMember" id="spi_UnionSkyMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ValueAddedTaxMember" id="spi_ValueAddedTaxMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="VisionEdgeLimitedMember" id="spi_VisionEdgeLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WarrantsDisclosureTextBlock" id="spi_WarrantsDisclosureTextBlock" type="nonnum:textBlockItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WarrantsToPurchaseCommonSharesAggregatePurchasePrice" id="spi_WarrantsToPurchaseCommonSharesAggregatePurchasePrice" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="duration" xbrli:balance="credit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WarrantVestingDescription" id="spi_WarrantVestingDescription" type="xbrli:stringItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WarrantyTerm" id="spi_WarrantyTerm" type="xbrli:durationItemType" abstract="false" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WebsiteMember" id="spi_WebsiteMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WestpacBankMember" id="spi_WestpacBankMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="WorkingCapitalNet" id="spi_WorkingCapitalNet" type="xbrli:monetaryItemType" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="XinyuRealforceEnergyCoLtdMember" id="spi_XinyuRealforceEnergyCoLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="YesYieldInvestmentsLimitedMember" id="spi_YesYieldInvestmentsLimitedMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| <element name="ZhongweiHankyWiyeSolarCoLtdMember" id="spi_ZhongweiHankyWiyeSolarCoLtdMember" type="nonnum:domainItemType" abstract="true" xbrli:periodType="duration" nillable="true" substitutionGroup="xbrli:item"/> |
| </schema> |