Skip to main content

Crate legalis_za

Crate legalis_za 

Source
Expand description

§Legalis-ZA: South Africa Jurisdiction Support

Comprehensive South African legal system implementation for Legalis-RS.

South Africa has a Mixed Legal System comprising:

  • Common Law (from English law)
  • Roman-Dutch Civil Law (from Dutch settlement)
  • Customary Law (indigenous African systems)
  • Constitution (supreme law since 1996)

The Constitution of 1996 is the cornerstone of the legal system, featuring one of the most progressive Bills of Rights globally.

§Hierarchy of Laws

  1. Constitution - Supreme law, Bill of Rights
  2. Acts of Parliament - National legislation
  3. Provincial Legislation
  4. Regulations and Subordinate Legislation
  5. Common Law (Roman-Dutch and English)
  6. Customary Law (where applicable)

§Courts Structure

  • Constitutional Court - Constitutional matters, highest on constitutional issues
  • Supreme Court of Appeal - Highest on non-constitutional matters
  • High Courts (9 divisions)
  • Magistrates’ Courts
  • Specialized Courts (Labour Court, Labour Appeal Court, Land Claims Court)

§Modules

Supports Commonwealth-style citations:

  • Acts: Companies Act 71 of 2008, s. 22(1)
  • Constitution: Constitution of the Republic of South Africa, 1996

§common - Shared Utilities

  • South African Rand (ZAR) currency formatting
  • Public holidays
  • CCMA regions
  • UIF contributions

§constitution - Constitution of 1996

  • Bill of Rights (s7-39)
  • Limitation test (s36)
  • Chapter 9 institutions
  • Constitutional Court

§tax_law - Tax Law

  • VAT Act (15%)
  • Income Tax Act
  • SARS administration
  • Transfer duty

§criminal_law - Criminal Law and Procedure

  • Criminal Procedure Act
  • Minimum sentences
  • Bail
  • Sentencing

§property_law - Property Law

  • Deeds registration
  • Land reform
  • ESTA (farm dwellers)
  • Sectional titles

§customary_law - Customary Law

  • Recognition of Customary Marriages Act
  • Traditional courts
  • Customary succession

§intellectual_property - IP Law

  • Patents (20 years)
  • Trademarks (10 years, renewable)
  • Copyright (life + 50)
  • Designs

§competition_law - Competition Act

  • Prohibited practices
  • Abuse of dominance
  • Merger control

§financial_services - FAIS & Financial Regulation

  • FSP licensing
  • Twin Peaks model
  • TCF outcomes

§insolvency - Insolvency Law

  • Sequestration (individuals)
  • Liquidation (companies)
  • Business rescue

§environmental_law - Environmental Law

  • NEMA principles
  • Environmental authorization
  • Duty of care (s28)

§labor - Labour Law (LRA, BCEA)

Labour Relations Act 66 of 1995 and Basic Conditions of Employment Act 75 of 1997:

  • Maximum 45 ordinary hours/week
  • 21 days annual leave
  • Unfair dismissal protection
  • CCMA dispute resolution
  • Severance pay (retrenchment)

§companies - Companies Act 71 of 2008

Company formation and corporate governance:

  • Company types: (Pty) Ltd, Ltd, Inc, NPC
  • King IV governance principles
  • Business rescue (Chapter 6)
  • B-BBEE integration

§data_protection - POPIA

Protection of Personal Information Act 4 of 2013:

  • 8 conditions for lawful processing
  • Information Regulator oversight
  • Direct marketing rules
  • Cross-border transfers

§Quick Start

use legalis_za::{
    citation::{SouthAfricanCitation, common_citations},
    labor::{WorkingHours, calculate_severance, LeaveType},
    companies::{CompanyType, BbbeeScorecard, validate_registration},
    common::{Zar, MinimumWageCategory},
};

// Citation example
let citation = SouthAfricanCitation::act("Companies Act", 71, 2008)
    .with_section("22")
    .with_subsection("1");
println!("{}", citation); // Companies Act 71 of 2008, s. 22(1)

// Currency formatting
let salary = Zar::from_rands(25000);
println!("{}", salary.format()); // R 25 000.00

// Minimum wage
let min = MinimumWageCategory::Standard;
println!("Hourly rate: {}", min.hourly_rate_2024());

// B-BBEE scorecard
let scorecard = BbbeeScorecard {
    ownership_points: 20.0,
    management_control_points: 15.0,
    skills_development_points: 18.0,
    enterprise_supplier_development_points: 35.0,
    socio_economic_development_points: 4.0,
    priority_elements_achieved: true,
};
println!("B-BBEE Level: {:?}", scorecard.level());

§Major Laws Covered

ActNameYearModule
-Constitution1996constitution
71Companies Act2008companies
66Labour Relations Act1995labor
75Basic Conditions of Employment Act1997labor
4Protection of Personal Information Act2013data_protection
53B-BBEE Act2003companies
55Employment Equity Act1998labor
58Income Tax Act1962tax_law
89Value-Added Tax Act1991tax_law
51Criminal Procedure Act1977criminal_law
105Criminal Law Amendment Act1997criminal_law
47Deeds Registries Act1937property_law
95Sectional Titles Act1986property_law
120Recognition of Customary Marriages Act1998customary_law
57Patents Act1978intellectual_property
194Trademarks Act1993intellectual_property
98Copyright Act1978intellectual_property
89Competition Act1998competition_law
37FAIS Act2002financial_services
9Financial Sector Regulation Act2017financial_services
24Insolvency Act1936insolvency
107National Environmental Management Act1998environmental_law

§B-BBEE Framework

Broad-Based Black Economic Empowerment is integral to South African business:

  • Ownership (25 points max)
  • Management Control (19 points)
  • Skills Development (20 points)
  • Enterprise & Supplier Development (40 points)
  • Socio-Economic Development (5 points)
  • Levels 1-8 + Non-Compliant

§Disclaimer

This library is for educational and informational purposes. For legal matters, consult qualified South African legal professionals (attorneys/advocates).

Re-exports§

pub use citation::LegalInstrumentType;
pub use citation::Province;
pub use citation::SouthAfricanCitation;
pub use citation::common_citations;
pub use common::CcmaRegion;
pub use common::MinimumWageCategory;
pub use common::SouthAfricanHoliday;
pub use common::SouthAfricanHolidayType;
pub use common::UifContribution;
pub use common::Zar;
pub use common::get_public_holidays;
pub use common::is_public_holiday;
pub use common::is_working_day;
pub use common::working_days_between;
pub use labor::AutomaticallyUnfairGround;
pub use labor::CcmaTimeframes;
pub use labor::ContractType;
pub use labor::LaborError;
pub use labor::LaborResult;
pub use labor::LeaveType;
pub use labor::SeverancePay;
pub use labor::TerminationType;
pub use labor::UnfairDismissalType;
pub use labor::WorkingHours;
pub use labor::calculate_severance;
pub use labor::get_labor_checklist;
pub use labor::validate_working_hours;
pub use companies::BbbeeLevel;
pub use companies::BbbeeScorecard;
pub use companies::BusinessRescueStatus;
pub use companies::CompanyError;
pub use companies::CompanyRegistration;
pub use companies::CompanyResult;
pub use companies::CompanyType;
pub use companies::KingIvPrinciple;
pub use companies::get_company_checklist;
pub use companies::validate_registration;
pub use data_protection::DataSubjectRight;
pub use data_protection::InformationOfficer;
pub use data_protection::LegalBasis;
pub use data_protection::PersonalInformationCategory;
pub use data_protection::PopiaCompliance;
pub use data_protection::PopiaError;
pub use data_protection::PopiaResult;
pub use data_protection::ProcessingCondition;
pub use data_protection::SpecialPersonalInformation;
pub use data_protection::TransferBasis;
pub use data_protection::get_popia_checklist;
pub use data_protection::validate_processing;
pub use constitution::BillOfRightsGuarantee;
pub use constitution::Chapter9Institution;
pub use constitution::ConstitutionalCourtJurisdiction;
pub use constitution::ConstitutionalError;
pub use constitution::ConstitutionalResult;
pub use constitution::DiscriminationGround;
pub use constitution::FoundingValue;
pub use constitution::LimitationTest;
pub use constitution::get_constitutional_checklist;
pub use constitution::validate_limitation;
pub use tax_law::CgtInclusionRate;
pub use tax_law::PersonalIncomeTaxBracket;
pub use tax_law::SarsFilingRequirement;
pub use tax_law::TaxError;
pub use tax_law::TaxRebate;
pub use tax_law::TaxResult;
pub use tax_law::TaxType;
pub use tax_law::VatRegistration;
pub use tax_law::VatSupplyType;
pub use tax_law::get_tax_checklist;
pub use tax_law::validate_vat_registration;
pub use criminal_law::AppealCourt;
pub use criminal_law::BailConsideration;
pub use criminal_law::CrimeElement;
pub use criminal_law::CriminalCapacity;
pub use criminal_law::CriminalError;
pub use criminal_law::CriminalResult;
pub use criminal_law::Fault;
pub use criminal_law::GroundExcludingFault;
pub use criminal_law::GroundOfJustification;
pub use criminal_law::IntentionType;
pub use criminal_law::ScheduleOffence;
pub use criminal_law::SentenceType;
pub use criminal_law::get_criminal_procedure_checklist;
pub use criminal_law::validate_bail;
pub use criminal_law::validate_sentence;
pub use property_law::DeedsOffice;
pub use property_law::DeedsRegistration;
pub use property_law::EstaProtection;
pub use property_law::LandReformType;
pub use property_law::OwnershipType;
pub use property_law::PropertyError;
pub use property_law::PropertyResult;
pub use property_law::RealRight;
pub use property_law::RestitutionClaim;
pub use property_law::SectionalTitle;
pub use property_law::ServitudeType;
pub use property_law::TransferDuty;
pub use property_law::get_property_checklist;
pub use property_law::validate_deeds_registration;
pub use customary_law::CustomaryError;
pub use customary_law::CustomaryMarriage;
pub use customary_law::CustomaryResult;
pub use customary_law::CustomarySuccession;
pub use customary_law::Lobolo;
pub use customary_law::MarriageRegime;
pub use customary_law::TraditionalCommunity;
pub use customary_law::TraditionalCourt;
pub use customary_law::TraditionalLeaderRole;
pub use customary_law::get_customary_law_checklist;
pub use customary_law::validate_customary_marriage;
pub use customary_law::validate_succession_rule;
pub use intellectual_property::Copyright;
pub use intellectual_property::CopyrightWorkType;
pub use intellectual_property::Design;
pub use intellectual_property::DesignType;
pub use intellectual_property::FairDealingPurpose;
pub use intellectual_property::IntellectualPropertyType;
pub use intellectual_property::IpEnforcement;
pub use intellectual_property::IpError;
pub use intellectual_property::IpResult;
pub use intellectual_property::NonPatentableSubject;
pub use intellectual_property::Patent;
pub use intellectual_property::Trademark;
pub use intellectual_property::get_ip_checklist;
pub use intellectual_property::validate_patent;
pub use intellectual_property::validate_trademark;
pub use competition_law::AbuseOfDominance;
pub use competition_law::CompetitionError;
pub use competition_law::CompetitionResult;
pub use competition_law::HorizontalPractice;
pub use competition_law::LeniencyApplication;
pub use competition_law::MergerAssessment;
pub use competition_law::MergerCategory;
pub use competition_law::MergerThresholds;
pub use competition_law::PublicInterestFactor;
pub use competition_law::VerticalPractice;
pub use competition_law::get_competition_checklist;
pub use competition_law::validate_horizontal_agreement;
pub use competition_law::validate_merger_notification;
pub use financial_services::CodeOfConduct;
pub use financial_services::FaisLicense;
pub use financial_services::FinancialProduct;
pub use financial_services::FinancialService;
pub use financial_services::FinancialServicesError;
pub use financial_services::FinancialServicesResult;
pub use financial_services::FitAndProper;
pub use financial_services::FspCategory;
pub use financial_services::RegulatoryObjective;
pub use financial_services::TcfOutcome;
pub use financial_services::TwinPeaksRegulator;
pub use financial_services::get_financial_services_checklist;
pub use financial_services::validate_fais_license;
pub use financial_services::validate_fit_and_proper;
pub use insolvency::ActOfInsolvency;
pub use insolvency::BusinessRescue;
pub use insolvency::CreditorClass;
pub use insolvency::InsolvencyError;
pub use insolvency::InsolvencyResult;
pub use insolvency::Liquidation;
pub use insolvency::LiquidationType;
pub use insolvency::PreferentClaim;
pub use insolvency::Rehabilitation;
pub use insolvency::Sequestration;
pub use insolvency::SequestrationType;
pub use insolvency::VoidableDisposition;
pub use insolvency::get_insolvency_checklist;
pub use insolvency::validate_business_rescue;
pub use insolvency::validate_sequestration;
pub use environmental_law::AirQualityLicense;
pub use environmental_law::AuthorizationType;
pub use environmental_law::BiodiversityThreat;
pub use environmental_law::ComplianceNotice;
pub use environmental_law::DutyOfCare;
pub use environmental_law::EnvironmentalAuthorization;
pub use environmental_law::EnvironmentalError;
pub use environmental_law::EnvironmentalResult;
pub use environmental_law::EnvironmentalRight;
pub use environmental_law::NemaPrinciple;
pub use environmental_law::WasteActivity;
pub use environmental_law::WasteClassification;
pub use environmental_law::WaterUse;
pub use environmental_law::get_environmental_checklist;
pub use environmental_law::validate_duty_of_care;
pub use environmental_law::validate_environmental_authorization;

Modules§

citation
South African Legal Citation System
common
Common Utilities for South African Legal System
companies
South African Companies Act 71 of 2008
competition_law
South African Competition Law
constitution
Constitution of the Republic of South Africa, 1996
criminal_law
South African Criminal Law
customary_law
South African Customary Law
data_protection
Protection of Personal Information Act 4 of 2013 (POPIA)
environmental_law
South African Environmental Law
financial_services
South African Financial Services Law
insolvency
South African Insolvency Law
intellectual_property
South African Intellectual Property Law
labor
South African Labour Law
property_law
South African Property Law
tax_law
South African Tax Law