Expand description
European Union (EU) Jurisdiction Support for Legalis-RS
This crate provides comprehensive modeling of EU law across major regulatory areas.
Status: v0.6.0 - Phase 1C Complete ✅
- 200+ unit tests passing (0 warnings)
- 25+ comprehensive examples
- Production-ready
§Legal Areas Covered
§Core Data & Privacy
-
GDPR (General Data Protection Regulation 2016/679) - ✅ COMPLETE
- Data processing legal bases (Article 6)
- Special categories (Article 9)
- Data subject rights (Articles 15-22)
- Controller accountability (Article 24)
- Data Protection by Design & Default (Article 25)
- Joint controllers (Article 26)
- Processor contracts (Article 28)
- Records of Processing Activities - ROPA (Article 30)
- Security and breach notification (Articles 32-34)
- Data Protection Impact Assessment - DPIA (Articles 35-36)
- Data Protection Officer - DPO (Articles 37-39)
- Cross-border transfers (Articles 44-49, Chapter V)
- Administrative fines (Article 83)
-
ePrivacy Directive (Directive 2002/58/EC) - ✅ NEW in v0.6.0
- Cookie consent requirements (Article 5(3))
- Direct marketing (Article 13)
- Location data processing (Article 9)
- Confidentiality of communications (Article 5)
§Digital Services & Markets
-
Digital Services Act (DSA) (Regulation EU 2022/2065) - ✅ NEW in v0.6.0
- Platform classification (VLOP, VLOSE, online platforms)
- Notice and action mechanism (Article 16)
- Content moderation transparency (Article 17)
- Systemic risk assessment (Article 34)
- Risk mitigation measures (Article 35)
- Algorithmic transparency (Article 27)
-
Digital Markets Act (DMA) (Regulation EU 2022/1925) - ✅ NEW in v0.6.0
- Gatekeeper designation (Article 3)
- Core platform services
- Gatekeeper obligations (Articles 5-7)
- Interoperability requirements
§Artificial Intelligence
- AI Act (Regulation EU 2024/1689) - ✅ NEW in v0.6.0
- Risk-based classification (unacceptable, high, limited, minimal)
- Prohibited AI practices (Article 5)
- High-risk AI requirements (Articles 9-15)
- Transparency obligations (Article 52)
- General-purpose AI models (Article 51)
§Financial Services
-
MiFID II (Directive 2014/65/EU) - ✅ NEW in v0.6.0
- Investment services and activities
- Client categorization (retail, professional, eligible counterparty)
- Conduct of business rules (Articles 24-25)
- Best execution (Article 27)
- Product governance (Article 16)
- Transaction reporting (Article 26)
-
PSD2 (Directive 2015/2366/EU) - ✅ NEW in v0.6.0
- Payment services
- Strong Customer Authentication (SCA) - Article 97
- Open banking / API access (Article 67)
- Payment initiation services (PIS)
- Account information services (AIS)
- Passporting rights
§Consumer Protection
-
Consumer Rights Directive (Directive 2011/83/EU) - ✅ COMPLETE
- Distance and off-premises contracts (Article 6)
- 14-day withdrawal right (Articles 9-16)
- Information requirements
- All 13 exceptions to withdrawal (Article 17)
-
Unfair Commercial Practices Directive (Directive 2005/29/EC) - ✅ NEW in v0.6.0
- Misleading actions and omissions
- Aggressive practices
- 31 prohibited practices (“blacklist”)
- Average consumer standard
§Competition & Markets
- Competition Law (Articles 101-102 TFEU) - ✅ COMPLETE
- Anti-competitive agreements (Article 101)
- De minimis test, exemption criteria
- Abuse of dominant position (Article 102)
- Market definition and dominance assessment
§Treaty Framework
- Treaty Framework (TFEU, TEU, Charter) - ✅ COMPLETE
- Four freedoms (goods, persons, services, capital)
- Charter of Fundamental Rights
- CJEU landmark cases (Van Gend en Loos, Costa v ENEL, etc.)
§EU Legal System Characteristics
§Primary vs Secondary Law
Primary Law (Treaties)
├── TEU (Treaty on European Union)
├── TFEU (Treaty on Functioning of EU)
└── Charter of Fundamental Rights
↓
Secondary Law
├── Regulations (directly applicable)
├── Directives (require member state transposition)
└── Decisions (binding on specific addressees)
↓
Member State Law
└── National implementations of directives§Regulations vs Directives
| Feature | Regulation | Directive |
|---|---|---|
| Direct applicability | Yes | No (requires transposition) |
| Binding force | Entirely binding | Result binding, means flexible |
| Example | GDPR (Regulation 2016/679) | Consumer Rights (Directive 2011/83/EU) |
§Key EU Legal Principles
- Direct Effect: EU law creates individual rights enforceable in national courts
- Supremacy: EU law prevails over conflicting national law
- Proportionality: EU action must not exceed what is necessary
§Multi-Language Support
All EU legislation exists in 24 official languages. This crate provides:
- English (primary implementation language)
- German (German legal tradition, largest member state)
Future: French, Spanish, Italian, and other EU languages
§Citation Format
EU legal citations follow EUR-Lex/CELEX format:
- GDPR:
CELEX:32016R0679orGDPR Art. 6(1)(a) - TFEU:
CELEX:12012E/TXTorArticle 101 TFEU - Case law:
C-26/62(Van Gend en Loos) orC-6/64(Costa v ENEL)
§Example Usage
use legalis_eu::gdpr::*;
// Validate GDPR consent-based processing
let processing = DataProcessing::new()
.with_controller("Acme Corp")
.with_purpose("Marketing emails")
.add_data_category(PersonalDataCategory::Regular("email".to_string()))
.with_lawful_basis(LawfulBasis::Consent {
freely_given: true,
specific: true,
informed: true,
unambiguous: true,
});
match processing.validate() {
Ok(validation) => {
if validation.is_compliant() {
println!("✅ Processing is GDPR compliant");
}
}
Err(e) => println!("❌ Compliance error: {}", e),
}Re-exports§
pub use gdpr::AdministrativeFine;pub use gdpr::Article9Exception;pub use gdpr::Article9Processing;pub use gdpr::Article83Factors;pub use gdpr::ComplianceStatus;pub use gdpr::DataBreach;pub use gdpr::DataProcessing;pub use gdpr::DataSubjectRequest;pub use gdpr::DataSubjectRight;pub use gdpr::FineCalculation;pub use gdpr::FineTier;pub use gdpr::GdprError;pub use gdpr::HealthcarePurpose;pub use gdpr::LawfulBasis;pub use gdpr::PersonalDataCategory;pub use gdpr::ProcessingOperation;pub use gdpr::ResearchPurpose;pub use gdpr::SpecialCategory;pub use gdpr::ViolatedArticle;pub use citation::EuCitation;pub use citation::EuLegalInstrument;pub use consumer_rights::AggressivePractice;pub use consumer_rights::ConsumerRightsError;pub use consumer_rights::ContractType;pub use consumer_rights::DistanceContract;pub use consumer_rights::MisleadingAction;pub use consumer_rights::MisleadingOmission;pub use consumer_rights::OffPremisesContract;pub use consumer_rights::ProhibitedPractice as ConsumerProhibitedPractice;pub use consumer_rights::UnfairCommercialPractice;pub use consumer_rights::WithdrawalException;pub use consumer_rights::WithdrawalPeriod;pub use consumer_rights::WithdrawalRight;pub use competition::AbuseType;pub use competition::Article101Agreement;pub use competition::Article101Exemption;pub use competition::Article101Validation;pub use competition::Article102Conduct;pub use competition::Article102Validation;pub use competition::CompetitionError;pub use competition::ConcertedPractice;pub use competition::DominanceAssessment;pub use competition::ExclusionaryAbuse;pub use competition::ExploitativeAbuse;pub use competition::GeographicMarket;pub use competition::MarketAllocation;pub use competition::RelevantMarket;pub use competition::Undertaking;pub use treaty::CharterArticle;pub use treaty::CjeuCase;pub use treaty::CjeuPrinciple;pub use treaty::FourFreedom;pub use treaty::FreedomType;pub use treaty::FundamentalRight;pub use treaty::JustificationGround;pub use treaty::LandmarkCase;pub use treaty::Restriction;pub use treaty::TreatyArticle;pub use treaty::TreatyProvision;pub use treaty::TreatyType;pub use intellectual_property::AcquisitionMethod;pub use intellectual_property::CommunityDesign;pub use intellectual_property::CopyrightException;pub use intellectual_property::CopyrightValidation;pub use intellectual_property::CopyrightWork;pub use intellectual_property::DesignType;pub use intellectual_property::DesignValidation;pub use intellectual_property::EuTrademark;pub use intellectual_property::IpError;pub use intellectual_property::MarkType;pub use intellectual_property::MisappropriationAnalysis;pub use intellectual_property::NiceClass;pub use intellectual_property::TradeSecret;pub use intellectual_property::TradeSecretCharacteristics;pub use intellectual_property::TradeSecretValidation;pub use intellectual_property::TrademarkStatus;pub use intellectual_property::TrademarkValidation;pub use intellectual_property::WorkType;pub use i18n::MultilingualText;pub use shared::MemberState;pub use reasoning::ComplianceStatus as ReasoningComplianceStatus;pub use reasoning::EuEvaluationContext;pub use reasoning::LegalAnalysis;pub use reasoning::LegalReasoningEngine;pub use reasoning::ReasoningError;pub use reasoning::ReasoningResult;pub use reasoning::ReasoningStep;pub use reasoning::RiskLevel;pub use reasoning::Violation;pub use reasoning::ViolationSeverity;pub use reasoning::all_eu_statutes;pub use reasoning::competition_statutes;pub use reasoning::consumer_rights_statutes;pub use reasoning::gdpr_statutes;pub use digital_services::AlgorithmicTransparency;pub use digital_services::CorePlatformService;pub use digital_services::DigitalServicesError;pub use digital_services::DmaComplianceReport;pub use digital_services::DsaValidationResult;pub use digital_services::GatekeeperDesignation;pub use digital_services::GatekeeperObligation;pub use digital_services::IllegalContent;pub use digital_services::IllegalContentNotice;pub use digital_services::InteroperabilityRequirement;pub use digital_services::ModerationDecision;pub use digital_services::NoticeDecision;pub use digital_services::NoticeResponse;pub use digital_services::PlatformType;pub use digital_services::QuantitativeThresholds;pub use digital_services::StatementOfReasons;pub use digital_services::SystemicRisk;pub use digital_services::TransparencyReport;pub use ai_regulation::AiActValidationResult;pub use ai_regulation::AiRegulationError;pub use ai_regulation::AiSystem;pub use ai_regulation::ConformityStatus;pub use ai_regulation::GeneralPurposeAiModel;pub use ai_regulation::HighRiskCategory;pub use ai_regulation::HighRiskRequirements;pub use ai_regulation::HumanOversight;pub use ai_regulation::LimitedRiskType;pub use ai_regulation::ProhibitedPractice;pub use ai_regulation::RiskLevel as AiRiskLevel;pub use ai_regulation::TransparencyObligation;pub use financial_services::AccountInformationProvider;pub use financial_services::AuthenticationElement;pub use financial_services::BestExecutionPolicy;pub use financial_services::ClientCategory;pub use financial_services::ConductOfBusiness;pub use financial_services::FinancialServicesError;pub use financial_services::InvestmentService;pub use financial_services::OpenBankingApi;pub use financial_services::Passport;pub use financial_services::PaymentInitiationProvider;pub use financial_services::PaymentService;pub use financial_services::ScaExemption;pub use financial_services::StrongCustomerAuthentication;pub use financial_services::ThirdPartyProvider;pub use eprivacy::CookieBanner;pub use eprivacy::CookieCategory;pub use eprivacy::CookieConsent;pub use eprivacy::CookieDuration;pub use eprivacy::CookieExemption;pub use eprivacy::DirectMarketing;pub use eprivacy::LocationDataProcessing;pub use eprivacy::MarketingChannel;
Modules§
- ai_
regulation - EU AI Act (Regulation EU 2024/1689) Implementation
- citation
- EUR-Lex citation system and CELEX identifiers
- competition
- Competition Law (Articles 101-102 TFEU)
- consumer_
rights - Consumer Rights and Protection in the EU
- digital_
services - Digital Services Act (DSA) and Digital Markets Act (DMA) Implementation
- eprivacy
- ePrivacy Directive (Directive 2002/58/EC) Implementation
- financial_
services - EU Financial Services Regulation
- gdpr
- GDPR (General Data Protection Regulation 2016/679) Implementation
- i18n
- Internationalization (i18n) support for EU legal texts
- intellectual_
property - European Union Intellectual Property Law Module
- reasoning
- Legal Reasoning Engine for EU Law.
- shared
- Shared utilities and types for EU jurisdiction
- treaty
- Treaty Framework - EU Primary Law (TFEU, TEU, Charter)