Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Provision Types

Quick reference for all 11 provision types in the extraction schema. For detailed explanations with real examples and distribution data, see The Provision Type System.

At a Glance

TypeWhat It IsHas Dollar Amount?Counted in BA?
appropriationGrant of budget authorityYesYes (at top_level/line_item)
rescissionCancellation of prior fundsYesSeparately (subtracted for Net BA)
cr_substitutionCR anomaly — substituting $X for $YYes (new + old)No (CR baseline amounts)
transfer_authorityPermission to move funds between accountsSometimes (ceiling)No
limitationCap or prohibition on spendingSometimesNo
directed_spendingEarmark / community project fundingYesDepends on detail_level
mandatory_spending_extensionAmendment to authorizing statuteSometimesNo (tracked separately)
directiveReporting requirement or instructionNoNo
riderPolicy provision (no direct spending)NoNo
continuing_resolution_baselineCore CR mechanism (SEC. 101)NoNo
otherCatch-all for unclassifiable provisionsSometimesNo

Common Fields (All Types)

Every provision carries these fields regardless of type:

FieldTypeDescription
provision_typestringThe type discriminator
sectionstringSection header (e.g., "SEC. 101"). Empty string if none.
divisionstring or nullDivision letter (e.g., "A"). Null for bills without divisions.
titlestring or nullTitle numeral (e.g., "IV"). Null if not determinable.
confidencefloatLLM self-assessed confidence, 0.0–1.0. Not calibrated — useful only for identifying outliers below 0.90.
raw_textstringVerbatim excerpt from the bill text (~first 150 characters). Verified against source.
notesarray of stringsExplanatory annotations (e.g., “advance appropriation”, “no-year funding”).
cross_referencesarray of CrossReferenceReferences to other laws, sections, or bills.

CrossReference Fields

FieldTypeDescription
ref_typestringRelationship: baseline_from, amends, notwithstanding, subject_to, see_also, transfer_to, rescinds_from, modifies, references, other
targetstringThe referenced law or section (e.g., "31 U.S.C. 1105(a)")
descriptionstring or nullOptional clarifying note

appropriation

Grant of budget authority — the core spending provision.

Bill text pattern: “For necessary expenses of [account], $X,XXX,XXX,XXX…”

FieldTypeDescription
account_namestringAppropriations account name from '' delimiters in bill text
agencystring or nullParent department or agency
programstring or nullSub-account or program name
amountAmountDollar amount with semantics
fiscal_yearinteger or nullFiscal year the funds are available for
availabilitystring or nullFund availability (e.g., "to remain available until expended")
provisosarray of Proviso“Provided, That” conditions
earmarksarray of EarmarkCommunity project funding items
detail_levelstring"top_level", "line_item", "sub_allocation", or "proviso_amount"
parent_accountstring or nullParent account for sub-allocations

Budget authority: Counted when semantics == "new_budget_authority" AND detail_level is "top_level" or "line_item". Sub-allocations and proviso amounts are excluded to prevent double-counting.

Example (from H.R. 9468):

{
  "provision_type": "appropriation",
  "account_name": "Compensation and Pensions",
  "agency": "Department of Veterans Affairs",
  "amount": {
    "value": { "kind": "specific", "dollars": 2285513000 },
    "semantics": "new_budget_authority",
    "text_as_written": "$2,285,513,000"
  },
  "detail_level": "top_level",
  "availability": "to remain available until expended",
  "fiscal_year": 2024,
  "confidence": 0.99,
  "raw_text": "For an additional amount for ''Compensation and Pensions'', $2,285,513,000, to remain available until expended."
}

Count in example data: 1,223 (49% of all provisions)


rescission

Cancellation of previously appropriated funds.

Bill text pattern: “…is hereby rescinded” or “Of the unobligated balances… $X is rescinded”

FieldTypeDescription
account_namestringAccount being rescinded from
agencystring or nullDepartment or agency
amountAmountDollar amount (semantics: "rescission")
reference_lawstring or nullThe law whose funds are being rescinded
fiscal_yearsstring or nullWhich fiscal years’ funds are affected

Budget authority: Summed separately and subtracted to produce Net BA.

Example (from H.R. 4366):

{
  "provision_type": "rescission",
  "account_name": "Nonrecurring Expenses Fund",
  "agency": "Department of Health and Human Services",
  "amount": {
    "value": { "kind": "specific", "dollars": 12440000000 },
    "semantics": "rescission",
    "text_as_written": "$12,440,000,000"
  },
  "reference_law": "Fiscal Responsibility Act of 2023"
}

Count in example data: 78 (3.1%)


cr_substitution

Continuing resolution anomaly — substitutes one dollar amount for another.

Bill text pattern: “…shall be applied by substituting ‘$X’ for ‘$Y’…”

FieldTypeDescription
account_namestring or nullAccount affected (null if bill references a statute section)
new_amountAmountThe new dollar amount ($X — the replacement level)
old_amountAmountThe old dollar amount ($Y — the level being replaced)
reference_actstringThe act being modified
reference_sectionstringSection being modified

Both amounts are independently verified. The search table automatically shows New, Old, and Delta columns.

Example (from H.R. 5860):

{
  "provision_type": "cr_substitution",
  "account_name": "Rural Housing Service—Rural Community Facilities Program Account",
  "new_amount": {
    "value": { "kind": "specific", "dollars": 25300000 },
    "semantics": "new_budget_authority",
    "text_as_written": "$25,300,000"
  },
  "old_amount": {
    "value": { "kind": "specific", "dollars": 75300000 },
    "semantics": "new_budget_authority",
    "text_as_written": "$75,300,000"
  },
  "section": "SEC. 101",
  "division": "A"
}

Count in example data: 13 (all in H.R. 5860)


transfer_authority

Permission to move funds between accounts. The dollar amount is a ceiling, not new spending.

FieldTypeDescription
from_scopestringSource account(s) or scope
to_scopestringDestination account(s) or scope
limitTransferLimitTransfer ceiling (percentage, fixed amount, or description)
conditionsarray of stringsConditions that must be met

Budget authority: Not counted — semantics: "transfer_ceiling".

Count in example data: 77 (all in H.R. 4366)


limitation

Cap or prohibition on spending.

Bill text pattern: “not more than $X”, “none of the funds”, “shall not exceed”

FieldTypeDescription
descriptionstringWhat is being limited
amountAmount or nullDollar cap, if specified
account_namestring or nullAccount the limitation applies to
parent_accountstring or nullParent account for proviso-based limitations

Budget authority: Not counted — semantics: "limitation".

Count in example data: 460 (18.4%)


directed_spending

Earmark or community project funding directed to a specific recipient.

FieldTypeDescription
account_namestringAccount providing the funds
amountAmountDollar amount directed
earmarkEarmark or nullrecipient, location, requesting_member
detail_levelstringTypically "sub_allocation" or "line_item"
parent_accountstring or nullParent account name

Note: Most earmarks are in the joint explanatory statement (a separate document), not the enrolled bill XML. Only earmarks in the bill text itself appear here.

Count in example data: 8 (all in H.R. 4366)


mandatory_spending_extension

Amendment to an authorizing statute — extends, modifies, or reauthorizes mandatory programs.

FieldTypeDescription
program_namestringProgram being extended
statutory_referencestringThe statute being amended (e.g., "Section 330B(b)(2) of the Public Health Service Act")
amountAmount or nullDollar amount if specified
periodstring or nullDuration of the extension
extends_throughstring or nullEnd date or fiscal year

Count in example data: 84 (40 in omnibus, 44 in CR)


directive

Reporting requirement or instruction to an agency.

FieldTypeDescription
descriptionstringWhat is being directed
deadlinesarray of stringsAny deadlines mentioned (e.g., "30 days after enactment")

Budget authority: None — directives don’t carry dollar amounts.

Example (from H.R. 9468):

{
  "provision_type": "directive",
  "description": "Requires the Inspector General of the Department of Veterans Affairs to conduct a review of the circumstances surrounding and underlying causes of the announced VBA funding shortfall for FY2024...",
  "deadlines": ["180 days after enactment"],
  "section": "SEC. 104"
}

Count in example data: 125


rider

Policy provision that doesn’t directly appropriate, rescind, or limit funds.

FieldTypeDescription
descriptionstringWhat the rider does
policy_areastring or nullPolicy domain if identifiable

Budget authority: None.

Count in example data: 336


continuing_resolution_baseline

The core CR mechanism — usually SEC. 101 — establishing the default funding rule.

FieldTypeDescription
reference_yearinteger or nullFiscal year used as the baseline rate
reference_lawsarray of stringsLaws providing baseline funding levels
ratestring or nullRate description (e.g., “the rate for operations”)
durationstring or nullHow long the CR lasts
anomaliesarray of CrAnomalyExplicit anomalies (usually captured as separate cr_substitution provisions)

Count in example data: 1 (in H.R. 5860)


other

Catch-all for provisions that don’t fit any of the 10 specific types.

FieldTypeDescription
llm_classificationstringThe LLM’s original description of what this provision is
descriptionstringSummary of the provision
amountsarray of AmountAny dollar amounts mentioned
referencesarray of stringsAny references mentioned
metadataobjectArbitrary key-value pairs for non-standard fields

When the LLM produces an unknown provision_type string, the resilient parser wraps it as Other with the original classification preserved in llm_classification. In the example data, all 96 other provisions were deliberately classified as “other” by the LLM — none triggered the fallback parser.

Count in example data: 96 (3.8%)


Amount Fields

Dollar amounts appear on many provision types. Each amount has three components:

AmountValue (value)

KindFieldsDescription
specificdollars (integer)Exact whole-dollar amount. Can be negative for rescissions.
such_sumsOpen-ended: “such sums as may be necessary”
noneNo dollar amount

Amount Semantics (semantics)

ValueMeaningCounted in Budget Authority?
new_budget_authorityNew spending powerYes (at top_level/line_item)
rescissionCancellation of prior BASeparately (subtracted for Net BA)
reference_amountContextual amount (sub-allocations, “of which” breakdowns)No
limitationCap on spendingNo
transfer_ceilingMaximum transfer amountNo
mandatory_spendingMandatory program amountTracked separately

Text As Written (text_as_written)

The verbatim dollar string from the bill text (e.g., "$2,285,513,000"). Used for verification — the string is searched for in the source XML to confirm the amount is real.

Detail Levels (Appropriation Type Only)

LevelMeaningCounted in BA?
top_levelMain account appropriationYes
line_itemNumbered item within a sectionYes
sub_allocation“Of which” breakdownNo
proviso_amountDollar amount in a “Provided, That” clauseNo
"" (empty)Not applicable (non-appropriation types)N/A

Proviso Fields

Conditions attached to appropriations via “Provided, That” clauses:

FieldTypeDescription
proviso_typestringlimitation, transfer, reporting, condition, prohibition, other
descriptionstringSummary of the proviso
amountAmount or nullDollar amount if specified
referencesarray of stringsReferenced laws or sections
raw_textstringSource text excerpt

Earmark Fields

Community project funding items:

FieldTypeDescription
recipientstringWho receives the funds
locationstring or nullGeographic location
requesting_memberstring or nullMember of Congress who requested it

Distribution in Example Data

The distribution varies by bill type. Here’s a sample from three FY2024 bills to illustrate — run congress-approp search --dir data --list-types for current counts across the full 32-bill dataset:

TypeH.R. 4366 (Omnibus)H.R. 5860 (CR)H.R. 9468 (Supp)
appropriation1,21652
limitation4564
rider285492
directive12023
other8412
rescission78
transfer_authority77
mandatory_spending_extension4044
directed_spending8
cr_substitution13
continuing_resolution_baseline1

Notice how bill type shapes the distribution: the omnibus is dominated by appropriations and limitations, the CR by riders and mandatory spending extensions, and the supplemental by a handful of targeted appropriations and directives.

Next Steps