{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://openinherit.org/v3/extensions/ireland/ireland.json",
  "title": "Ireland Extension",
  "description": "Irish succession law — Succession Act 1965, spouse legal right share, Section 117 moral duty provision, Capital Acquisitions Tax, intestacy distribution, dwelling house exemption, civil partnership provisions",
  "$comment": "Ireland does NOT distinguish whole blood from half blood. Siblings and their issue inherit equally regardless of blood degree.",
  "type": "object",
  "properties": {
    "spouseLegalRightShare": {
      "description": "Spouse legal right share under Succession Act 1965 s.111 — 1/3 with children, 1/2 without. Cannot be defeated by will.",
      "type": "object",
      "properties": {
        "fraction": {
          "type": "string",
          "maxLength": 10,
          "description": "1/3 (with children) or 1/2 (without children)"
        },
        "hasChildren": {
          "type": "boolean"
        },
        "renounced": {
          "type": "boolean",
          "description": "Whether spouse has renounced their legal right share"
        }
      },
      "additionalProperties": false
    },
    "section117Claim": {
      "description": "Section 117 moral duty provision — court can order provision for children if testator failed in moral duty",
      "type": "object",
      "properties": {
        "applicable": {
          "type": "boolean"
        },
        "claimantPersonIds": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uuid"
          }
        },
        "claimDeadlineMonths": {
          "type": "integer",
          "description": "6 months from first extraction of grant of probate"
        }
      },
      "additionalProperties": false
    },
    "capitalAcquisitionsTax": {
      "description": "Capital Acquisitions Tax (CAT) thresholds — Irish equivalent of inheritance tax",
      "$comment": "CAT group → kinship type mapping: Group A (€335,000 threshold): parent_child_biological, parent_child_adopted, grandparent_grandchild (minor grandchild of predeceased child only). Group B (€32,500): sibling, half_sibling, uncle_aunt, cousin, grandparent_grandchild (adult grandchild). Group C (€16,250): all others. These thresholds make kinship classification directly relevant to tax calculation.",
      "type": "object",
      "properties": {
        "groupAThreshold": {
          "$ref": "../../common/temporal-rule.json",
          "description": "Group A: child from parent"
        },
        "groupBThreshold": {
          "$ref": "../../common/temporal-rule.json",
          "description": "Group B: sibling, niece/nephew, grandchild"
        },
        "groupCThreshold": {
          "$ref": "../../common/temporal-rule.json",
          "description": "Group C: all others"
        },
        "taxRate": {
          "$ref": "../../common/temporal-rule.json",
          "description": "Current CAT rate (33%)"
        }
      },
      "additionalProperties": false
    },
    "probateProcess": {
      "description": "Irish probate process — Probate Office or District Probate Registry",
      "type": "object",
      "properties": {
        "probateOffice": {
          "type": "string",
          "maxLength": 255
        },
        "inlandRevenueAffidavit": {
          "type": "boolean",
          "description": "Whether Revenue Commissioners affidavit (Form SA.2) filed"
        },
        "grantType": {
          "enum": [
            "probate",
            "administration_with_will",
            "administration_intestacy",
            "administration_de_bonis_non"
          ]
        }
      },
      "additionalProperties": false
    },
    "enduringPowerOfAttorney": {
      "description": "Irish EPA — different from English LPA. Must be registered with the court before it can be used.",
      "type": "object",
      "properties": {
        "registered": {
          "type": "boolean"
        },
        "registrationDate": {
          "type": "string",
          "format": "date",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
        },
        "attorneyPersonIds": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uuid"
          }
        }
      },
      "additionalProperties": false
    },
    "intestacyRules": {
      "description": "Distribution order under Part VI of the Succession Act 1965",
      "type": "object",
      "properties": {
        "distributionOrder": {
          "enum": [
            "spouse_only",
            "spouse_and_children",
            "children_only",
            "parents",
            "siblings",
            "nephews_nieces",
            "grandparents",
            "uncles_aunts",
            "first_cousins",
            "next_of_kin"
          ]
        },
        "hasSpouse": {
          "type": "boolean"
        },
        "hasIssue": {
          "type": "boolean"
        },
        "notes": {
          "type": "string",
          "maxLength": 2000
        }
      },
      "additionalProperties": false
    },
    "dwellingHouseExemption": {
      "description": "CAT Section 86 dwelling house exemption — inherited home exempt if beneficiary lived there 3+ years prior and continues 6 years after",
      "type": "object",
      "properties": {
        "claimed": {
          "type": "boolean"
        },
        "propertyId": {
          "type": "string",
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
        },
        "residencePeriodYears": {
          "type": "integer",
          "minimum": 3
        },
        "noOtherResidentialInterest": {
          "type": "boolean"
        },
        "continuingResidenceRequired": {
          "type": "boolean"
        },
        "notes": {
          "type": "string",
          "maxLength": 2000
        }
      },
      "additionalProperties": false
    },
    "civilPartnershipProvisions": {
      "description": "Civil Partnership and Certain Rights and Obligations of Cohabitants Act 2010",
      "type": "object",
      "properties": {
        "civilPartner": {
          "type": "boolean"
        },
        "qualifiedCohabitant": {
          "type": "boolean",
          "description": "5 years cohabitation or 2 years with dependent child"
        },
        "cohabitantRedressSchemeApplied": {
          "type": "boolean"
        },
        "notes": {
          "type": "string",
          "maxLength": 2000
        }
      },
      "additionalProperties": false
    },
    "section56Advancement": {
      "description": "Advancement provisions under Section 56 of the Succession Act 1965 — lifetime gifts to children brought into account on intestacy",
      "type": "object",
      "properties": {
        "advancementsRecorded": {
          "type": "boolean"
        },
        "advancements": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "personId": {
                "type": "string",
                "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
              },
              "amount": {
                "$ref": "../../common/money.json"
              },
              "description": {
                "type": "string",
                "maxLength": 500
              }
            },
            "required": ["personId"],
            "additionalProperties": false
          },
          "maxItems": 50
        },
        "notes": {
          "type": "string",
          "maxLength": 2000
        }
      },
      "additionalProperties": false
    },
    "legislativeChanges": {
      "description": "Tracked changes to Irish succession legislation",
      "type": "array",
      "items": {
        "$ref": "../../common/temporal-rule.json"
      },
      "maxItems": 50
    },
    "notes": {
      "type": "string",
      "maxLength": 2000
    }
  },
  "minProperties": 1,
  "patternProperties": {
    "^x-inherit-[a-z][a-z0-9-]{1,54}$": {
      "type": "object",
      "maxProperties": 50,
      "propertyNames": {
        "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
        "maxLength": 64
      }
    }
  },
  "unevaluatedProperties": false,
  "propertyNames": {
    "pattern": "^(x-inherit-[a-z][a-z0-9-]*|[a-z][a-zA-Z0-9]*)$"
  }
}
