# Parametric Clauses and Localization Functions

#### **3.4.1 The Challenge of Static Rules in a Dynamic World**

In traditional legal and governance systems:

* Rules are static and difficult to adapt
* Localization is manual, jurisdiction-specific, and slow
* Clause reusability across borders or domains is minimal
* Policy drift occurs without transparent lineage or governance

NSF introduces **Parametric Clauses**: Smart Clauses with **variable-bound logic** and **governance-controlled localization functions**.

They enable clauses to be reused across:

* Countries and subnational entities
* Risk models and hazard zones
* Legal systems and regulatory bodies
* Supply chains and time zones
* Agent classes and environmental conditions

***

#### **3.4.2 What Is a Parametric Clause?**

A **Parametric Clause** is a Smart Clause that:

* Contains logic with **one or more configurable parameters**
* Has parameters that are:
  * **Declared** in the clause schema
  * **Bound** to jurisdictional or contextual data
  * **Governed** by DAO-controlled policies
* May reference:
  * **Localization functions** (for geography, treaties, institutions)
  * **Risk layers** (climate models, health thresholds, financial indices)
  * **Time-based variables** (e.g., rolling averages, calendar rules)
  * **Credential-based selectors** (e.g., different parameters by agent type)

***

#### **3.4.3 Parametric Field Declarations in SCL**

Example declaration:

```scl
parametricClause WFP::Food::NutritionalThresholdClause@1.1.0 {
  parameters:
    proteinThreshold: float = local("CodexProteinMinimum")
    maxToxinLevel: float = local("CountryRegulation.ToxinMax")

  input:
    batchId: string
    proteinContent: float
    toxinLevel: float

  require:
    proteinContent >= proteinThreshold
    toxinLevel < maxToxinLevel

  trigger: onInspection(batchId)
}
```

Here, the clause logic remains stable, but the **parameter values are resolved at runtime** using localization functions.

***

#### **3.4.4 Localization Functions**

A **Localization Function** resolves a parametric field at execution or DAO governance time using:

* **Geographic scope** (country, city, zone)
* **Institutional rulebase** (e.g., WHO, FAO, ICAO)
* **Credential bindings** (e.g., user holds `DisasterOperatorVC` in jurisdiction `KE`)
* **DAO registry references** (e.g., active emission caps from `ClimateDAO`)
* **Time-based lookups** (e.g., values change per season or quarter)
* **Simulation-linked variables** (e.g., forecast-based thresholds)

Resolution happens via:

```scl
local("Regulator::ToxinThreshold::KE")
```

Or dynamically via:

```scl
riskSim("FloodRiskZoneLevel", region="Nairobi", model="FloodRiskSim@2.0")
```

***

#### **3.4.5 Benefits of Parametric Clause Design**

| Feature                          | Impact                                                         |
| -------------------------------- | -------------------------------------------------------------- |
| **Reusability**                  | Same clause logic across multiple jurisdictions                |
| **Scalability**                  | Hundreds of agents or DAOs can operate with one logical clause |
| **Adaptability**                 | Clause parameters evolve without logic changes                 |
| **Auditability**                 | Every execution logs parameters used                           |
| **Jurisdictional Customization** | Legal compliance without code divergence                       |
| **Simulation Responsiveness**    | Risk-based logic adapts to future conditions                   |

This enables **governance at scale—without sacrificing precision**.

***

#### **3.4.6 Governance of Parameters**

Parameters are:

* **Defined in clause schema**
* **Governed by specific DAOs or credentialed authorities**
* **Audited with versioning**
* Optionally:
  * **Time-bound** (e.g., only valid for fiscal year)
  * **Revocable** (e.g., in emergency override)
  * **Simulation-dependent** (e.g., value changes if risk level increases)

Example:

```json
{
  "parameter": "SafeWaterPH",
  "value": 7.5,
  "source": "WHO-WaterGuidelines",
  "jurisdiction": "GHA",
  "valid_from": "2024-01-01",
  "approved_by": "WHO-WaterDAO"
}
```

***

#### **3.4.7 Parametric Clause Execution and CAC Generation**

When a Parametric Clause is executed:

* The **parameter values used are recorded** in the CAC
* The **parameter sources and resolution timestamps** are logged
* The **localization logic trace** is included
* The execution becomes **provable and jurisdiction-specific**

This ensures that no clause is just "run"—it is **run with context, under governance, and with transparent logic anchors**.

***

#### **3.4.8 Jurisdictional Mapping and Clause Federation**

NSF supports **parameter-based clause federation**, allowing:

* One base clause to be reused in 100+ countries
* DAO-level overrides without forks
* Execution filtering by parameter origin (e.g., treaty-based, national, emergency-specific)

Example:

```scl
param: disasterPayoutTrigger = treaty("SendaiFramework.PayoutThreshold")
```

This clause executes only in jurisdictions that have ratified the Sendai Framework.

***

#### **3.4.9 Conflict Resolution and Parameter Overrides**

If parameter conflicts arise:

* Default resolution path is based on **precedence rules**: jurisdiction > DAO > credential > treaty > simulation
* Overrides must be:
  * **Signed by governance**
  * **Declared in clause metadata**
  * **Audited with lineage**
* Conflicts may trigger:
  * Dispute escalation
  * Fork recommendation
  * Emergency freeze (if outcomes diverge from forecast bounds)

***

#### **3.4.10 Parametric Clauses as Dynamic Infrastructure**

NSF Parametric Clauses allow governance systems to be:

* **Precise at the local level**
* **Consistent across domains and treaties**
* **Resilient to change**
* **Efficient to audit and simulate**
* **Executable by agents and machines without ambiguity**

This model shifts policy from **code duplication to parameter governance**.

Every clause remains:

* One logic
* Many contexts
* All traceable


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.therisk.global/organization/standardization/nexus-sovereignty/iii.-design/parametric-clauses-and-localization-functions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
