Skip to content

Commit

Permalink
Merge pull request Arelle#1074 from allenbross-wf/hmrc_charity_valida…
Browse files Browse the repository at this point in the history
…tions

Added validations for HMRC charity filings
  • Loading branch information
derekgengenbacher-wf authored Feb 12, 2024
2 parents 499a63e + efaf54d commit 11f51d3
Show file tree
Hide file tree
Showing 27 changed files with 2,942 additions and 33 deletions.
247 changes: 216 additions & 31 deletions arelle/plugin/validate/HMRC/ValidateHmrc.py

Large diffs are not rendered by default.

5 changes: 3 additions & 2 deletions arelle/plugin/validate/HMRC/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -455,10 +455,11 @@ def checkFacts(facts):
modelXbrl.error("HMRC.SG.3.8",
_("Element %(elt)s style attribute has disallowed image reference: %(styleImage)s."),
modelObject=elt, elt=elt.tag.rpartition("}")[2], styleImage=match)

hmrc = ValidateHmrc(modelXbrl)
if val.txmyType != "charities":
hmrc = ValidateHmrc(modelXbrl)
hmrc.validate()
elif val.txmyType == "charities":
hmrc.validateCharities()

modelXbrl.profileActivity(_statusMsg, minTimeToShow=0.0)
modelXbrl.modelManager.showStatus(None)
Expand Down
Empty file modified tests/integration_tests/validation/run_conformance_suites.py
100644 → 100755
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<xbrl
xmlns="http://www.xbrl.org/2003/instance"
xmlns:aurep="http://xbrl.frc.org.uk/reports/2023-01-01/aurep"
xmlns:bus="http://xbrl.frc.org.uk/cd/2023-01-01/business"
xmlns:char="http://xbrl.frc.org.uk/char/2023-01-01"
xmlns:core="http://xbrl.frc.org.uk/fr/2023-01-01/core"
xmlns:direp="http://xbrl.frc.org.uk/reports/2023-01-01/direp"
xmlns:lang="http://xbrl.frc.org.uk/cd/2023-01-01/languages"
xmlns:link="http://www.xbrl.org/2003/linkbase"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xbrli="http://www.xbrl.org/2003/instance"
xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
xmlns:iso4217="http://www.xbrl.org/2003/iso4217">
<link:schemaRef
xlink:href="https://xbrl.frc.org.uk/char/2023-01-01/char-2023-01-01.xsd"
xlink:type="simple"/>
<xbrli:unit id="usd">
<xbrli:measure>iso4217:USD</xbrli:measure>
</xbrli:unit>

<context id="accounting-standards">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountingStandardsDimension">bus:SmallEntities</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountingStandardsApplied contextRef="accounting-standards"></bus:AccountingStandardsApplied>

<context id="accounts-status">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountsStatusDimension">bus:Audited</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountsStatusAuditedOrUnaudited contextRef="accounts-status"></bus:AccountsStatusAuditedOrUnaudited>

<context id="accounts-type">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountsTypeDimension">bus:FullAccounts</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountsType contextRef="accounts-type"></bus:AccountsType>


<context id="duration">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<char:CharityRegistrationNumberEnglandWales contextRef="duration" >123650</char:CharityRegistrationNumberEnglandWales>
<bus:DescriptionPrincipalActivities contextRef="duration">text</bus:DescriptionPrincipalActivities>
<bus:EntityCurrentLegalOrRegisteredName contextRef="duration">text</bus:EntityCurrentLegalOrRegisteredName>
<bus:EntityDormantTruefalse contextRef="duration">false</bus:EntityDormantTruefalse>
<aurep:OpinionAuditorsOnEntity contextRef="duration">Opinion</aurep:OpinionAuditorsOnEntity>
<aurep:NameIndividualAuditor contextRef="duration">Name1</aurep:NameIndividualAuditor>
<char:CharityFunds contextRef="instant" decimals="2" unitRef="usd" >123650.00</char:CharityFunds>
<char:TrusteeSigningTrusteesAnnualReport contextRef="instant">Name </char:TrusteeSigningTrusteesAnnualReport>
<char:DateSigningTrusteesAnnualReport contextRef="instant">2021-01-01</char:DateSigningTrusteesAnnualReport>
<bus:EntityTradingStatus contextRef="duration"></bus:EntityTradingStatus>
<core:DirectorSigningFinancialStatements contextRef="duration"></core:DirectorSigningFinancialStatements>
<direp:StatementThatAccountsHaveBeenPreparedInAccordanceWithProvisionsSmallCompaniesRegime contextRef="duration">
Prepared in accordance with then provisions then small companies
</direp:StatementThatAccountsHaveBeenPreparedInAccordanceWithProvisionsSmallCompaniesRegime>
<direp:StatementThatCompanyEntitledToExemptionFromAuditUnderSection480CompaniesAct2006RelatingToDormantCompanies contextRef="duration">
Exempt from audit under section 480 of the Companies Act 2006
</direp:StatementThatCompanyEntitledToExemptionFromAuditUnderSection480CompaniesAct2006RelatingToDormantCompanies>
<direp:StatementThatDirectorsAcknowledgeTheirResponsibilitiesUnderCompaniesAct contextRef="duration">
Directors acknowledge their responsibilities under Companies Act 2006
</direp:StatementThatDirectorsAcknowledgeTheirResponsibilitiesUnderCompaniesAct>
<direp:StatementThatMembersHaveNotRequiredCompanyToObtainAnAudit contextRef="duration">
Members have not required the company to obtain an audit
</direp:StatementThatMembersHaveNotRequiredCompanyToObtainAnAudit>

<context id="instant">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
</entity>
<period>
<instant>2021-12-30</instant>
</period>
</context>
<bus:BalanceSheetDate contextRef="instant">2021-01-01</bus:BalanceSheetDate>
<bus:EndDateForPeriodCoveredByReport contextRef="instant">2021-01-01</bus:EndDateForPeriodCoveredByReport>
<bus:StartDateForPeriodCoveredByReport contextRef="instant">2020-01-01</bus:StartDateForPeriodCoveredByReport>
<core:DateAuthorisationFinancialStatementsForIssue contextRef="instant">2021-01-01</core:DateAuthorisationFinancialStatementsForIssue>

<context id="legal-form-entity">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:LegalFormEntityDimension">bus:UnlimitedCompany</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:LegalFormEntity contextRef="legal-form-entity"></bus:LegalFormEntity>
</xbrl>
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<xbrl
xmlns="http://www.xbrl.org/2003/instance"
xmlns:aurep="http://xbrl.frc.org.uk/reports/2023-01-01/aurep"
xmlns:bus="http://xbrl.frc.org.uk/cd/2023-01-01/business"
xmlns:char="http://xbrl.frc.org.uk/char/2023-01-01"
xmlns:core="http://xbrl.frc.org.uk/fr/2023-01-01/core"
xmlns:direp="http://xbrl.frc.org.uk/reports/2023-01-01/direp"
xmlns:lang="http://xbrl.frc.org.uk/cd/2023-01-01/languages"
xmlns:link="http://www.xbrl.org/2003/linkbase"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xbrli="http://www.xbrl.org/2003/instance"
xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
xmlns:iso4217="http://www.xbrl.org/2003/iso4217">
<link:schemaRef
xlink:href="https://xbrl.frc.org.uk/char/2023-01-01/char-2023-01-01.xsd"
xlink:type="simple"/>
<xbrli:unit id="usd">
<xbrli:measure>iso4217:USD</xbrli:measure>
</xbrli:unit>

<context id="accounting-standards">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountingStandardsDimension">bus:SmallEntities</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountingStandardsApplied contextRef="accounting-standards"></bus:AccountingStandardsApplied>

<context id="accounts-status">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountsStatusDimension">bus:Audited</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountsStatusAuditedOrUnaudited contextRef="accounts-status"></bus:AccountsStatusAuditedOrUnaudited>

<context id="accounts-type">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountsTypeDimension">bus:FullAccounts</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountsType contextRef="accounts-type"></bus:AccountsType>


<context id="duration">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<char:CharityRegistrationNumberEnglandWales contextRef="duration" >123650</char:CharityRegistrationNumberEnglandWales>
<bus:DescriptionPrincipalActivities contextRef="duration">text</bus:DescriptionPrincipalActivities>
<bus:EntityCurrentLegalOrRegisteredName contextRef="duration">text</bus:EntityCurrentLegalOrRegisteredName>
<bus:EntityDormantTruefalse contextRef="duration">false</bus:EntityDormantTruefalse>
<aurep:DateAuditorsReport contextRef="instant">2021-01-01</aurep:DateAuditorsReport>
<aurep:OpinionAuditorsOnEntity contextRef="duration">Opinion</aurep:OpinionAuditorsOnEntity>
<aurep:NameIndividualAuditor contextRef="duration">Name1</aurep:NameIndividualAuditor>
<char:TrusteeSigningTrusteesAnnualReport contextRef="instant">Name </char:TrusteeSigningTrusteesAnnualReport>
<char:DateSigningTrusteesAnnualReport contextRef="instant">2021-01-01</char:DateSigningTrusteesAnnualReport>
<bus:EntityTradingStatus contextRef="duration"></bus:EntityTradingStatus>
<core:DirectorSigningFinancialStatements contextRef="duration"></core:DirectorSigningFinancialStatements>
<direp:StatementThatAccountsHaveBeenPreparedInAccordanceWithProvisionsSmallCompaniesRegime contextRef="duration">
Prepared in accordance with then provisions then small companies
</direp:StatementThatAccountsHaveBeenPreparedInAccordanceWithProvisionsSmallCompaniesRegime>
<direp:StatementThatCompanyEntitledToExemptionFromAuditUnderSection480CompaniesAct2006RelatingToDormantCompanies contextRef="duration">
Exempt from audit under section 480 of the Companies Act 2006
</direp:StatementThatCompanyEntitledToExemptionFromAuditUnderSection480CompaniesAct2006RelatingToDormantCompanies>
<direp:StatementThatDirectorsAcknowledgeTheirResponsibilitiesUnderCompaniesAct contextRef="duration">
Directors acknowledge their responsibilities under Companies Act 2006
</direp:StatementThatDirectorsAcknowledgeTheirResponsibilitiesUnderCompaniesAct>
<direp:StatementThatMembersHaveNotRequiredCompanyToObtainAnAudit contextRef="duration">
Members have not required the company to obtain an audit
</direp:StatementThatMembersHaveNotRequiredCompanyToObtainAnAudit>

<context id="instant">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
</entity>
<period>
<instant>2021-12-30</instant>
</period>
</context>
<bus:BalanceSheetDate contextRef="instant">2021-01-01</bus:BalanceSheetDate>
<bus:EndDateForPeriodCoveredByReport contextRef="instant">2021-01-01</bus:EndDateForPeriodCoveredByReport>
<bus:StartDateForPeriodCoveredByReport contextRef="instant">2020-01-01</bus:StartDateForPeriodCoveredByReport>
<core:DateAuthorisationFinancialStatementsForIssue contextRef="instant">2021-01-01</core:DateAuthorisationFinancialStatementsForIssue>

<context id="legal-form-entity">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:LegalFormEntityDimension">bus:UnlimitedCompany</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:LegalFormEntity contextRef="legal-form-entity"></bus:LegalFormEntity>
</xbrl>
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<xbrl
xmlns="http://www.xbrl.org/2003/instance"
xmlns:aurep="http://xbrl.frc.org.uk/reports/2023-01-01/aurep"
xmlns:bus="http://xbrl.frc.org.uk/cd/2023-01-01/business"
xmlns:char="http://xbrl.frc.org.uk/char/2023-01-01"
xmlns:core="http://xbrl.frc.org.uk/fr/2023-01-01/core"
xmlns:direp="http://xbrl.frc.org.uk/reports/2023-01-01/direp"
xmlns:lang="http://xbrl.frc.org.uk/cd/2023-01-01/languages"
xmlns:link="http://www.xbrl.org/2003/linkbase"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xbrli="http://www.xbrl.org/2003/instance"
xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
xmlns:iso4217="http://www.xbrl.org/2003/iso4217">
<link:schemaRef
xlink:href="https://xbrl.frc.org.uk/char/2023-01-01/char-2023-01-01.xsd"
xlink:type="simple"/>
<xbrli:unit id="usd">
<xbrli:measure>iso4217:USD</xbrli:measure>
</xbrli:unit>

<context id="accounting-standards">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountingStandardsDimension">bus:SmallEntities</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountingStandardsApplied contextRef="accounting-standards"></bus:AccountingStandardsApplied>

<context id="accounts-status">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountsStatusDimension">bus:Audited</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountsStatusAuditedOrUnaudited contextRef="accounts-status"></bus:AccountsStatusAuditedOrUnaudited>

<context id="accounts-type">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:AccountsTypeDimension">bus:FullAccounts</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:AccountsType contextRef="accounts-type"></bus:AccountsType>


<context id="duration">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<char:CharityRegistrationNumberEnglandWales contextRef="duration" >123650</char:CharityRegistrationNumberEnglandWales>
<bus:DescriptionPrincipalActivities contextRef="duration">text</bus:DescriptionPrincipalActivities>
<bus:EntityCurrentLegalOrRegisteredName contextRef="duration">text</bus:EntityCurrentLegalOrRegisteredName>
<bus:EntityDormantTruefalse contextRef="duration">false</bus:EntityDormantTruefalse>
<aurep:DateAuditorsReport contextRef="instant">2021-01-01</aurep:DateAuditorsReport>
<aurep:OpinionAuditorsOnEntity contextRef="duration">Opinion</aurep:OpinionAuditorsOnEntity>
<aurep:NameIndividualAuditor contextRef="duration">Name1</aurep:NameIndividualAuditor>
<char:CharityFunds contextRef="instant" decimals="2" unitRef="usd" >123650.00</char:CharityFunds>
<char:TrusteeSigningTrusteesAnnualReport contextRef="instant">Name </char:TrusteeSigningTrusteesAnnualReport>
<bus:EntityTradingStatus contextRef="duration"></bus:EntityTradingStatus>
<core:DirectorSigningFinancialStatements contextRef="duration"></core:DirectorSigningFinancialStatements>
<direp:StatementThatAccountsHaveBeenPreparedInAccordanceWithProvisionsSmallCompaniesRegime contextRef="duration">
Prepared in accordance with then provisions then small companies
</direp:StatementThatAccountsHaveBeenPreparedInAccordanceWithProvisionsSmallCompaniesRegime>
<direp:StatementThatCompanyEntitledToExemptionFromAuditUnderSection480CompaniesAct2006RelatingToDormantCompanies contextRef="duration">
Exempt from audit under section 480 of the Companies Act 2006
</direp:StatementThatCompanyEntitledToExemptionFromAuditUnderSection480CompaniesAct2006RelatingToDormantCompanies>
<direp:StatementThatDirectorsAcknowledgeTheirResponsibilitiesUnderCompaniesAct contextRef="duration">
Directors acknowledge their responsibilities under Companies Act 2006
</direp:StatementThatDirectorsAcknowledgeTheirResponsibilitiesUnderCompaniesAct>
<direp:StatementThatMembersHaveNotRequiredCompanyToObtainAnAudit contextRef="duration">
Members have not required the company to obtain an audit
</direp:StatementThatMembersHaveNotRequiredCompanyToObtainAnAudit>

<context id="instant">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
</entity>
<period>
<instant>2021-12-30</instant>
</period>
</context>
<bus:BalanceSheetDate contextRef="instant">2021-01-01</bus:BalanceSheetDate>
<bus:EndDateForPeriodCoveredByReport contextRef="instant">2021-01-01</bus:EndDateForPeriodCoveredByReport>
<bus:StartDateForPeriodCoveredByReport contextRef="instant">2020-01-01</bus:StartDateForPeriodCoveredByReport>
<core:DateAuthorisationFinancialStatementsForIssue contextRef="instant">2021-01-01</core:DateAuthorisationFinancialStatementsForIssue>

<context id="legal-form-entity">
<entity>
<identifier scheme="http://www.gooog">12345678</identifier>
<segment>
<xbrldi:explicitMember dimension="bus:LegalFormEntityDimension">bus:UnlimitedCompany</xbrldi:explicitMember>
</segment>
</entity>
<period>
<startDate>2021-01-01</startDate>
<endDate>2021-12-30</endDate>
</period>
</context>
<bus:LegalFormEntity contextRef="legal-form-entity"></bus:LegalFormEntity>
</xbrl>
Loading

0 comments on commit 11f51d3

Please sign in to comment.