@yottagraph-app/data-model-skill 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skill/bny/DATA_DICTIONARY.md +184 -0
- package/skill/bny/schema.yaml +598 -0
- package/skill/newsdata/schema.yaml +10 -0
package/package.json
CHANGED
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
# Data Dictionary — BNY Arbitrage Rebate Analysis
|
|
2
|
+
|
|
3
|
+
## Source Description
|
|
4
|
+
|
|
5
|
+
Interim Arbitrage Rebate Analysis reports prepared by BLX Group LLC for
|
|
6
|
+
municipal bond issuers. Each report computes the arbitrage rebate liability
|
|
7
|
+
under IRC Section 148 for a bond issue across a computation period. Reports
|
|
8
|
+
include transmittal letters, legal opinions, notes/assumptions, summary
|
|
9
|
+
schedules (rebate analysis, sources/uses of funds), and detailed per-fund
|
|
10
|
+
cash flow and investment data.
|
|
11
|
+
|
|
12
|
+
BNY (Bank of New York Mellon) serves as trustee. Orrick, Herrington &
|
|
13
|
+
Sutcliffe LLP provides the accompanying legal opinion.
|
|
14
|
+
|
|
15
|
+
## Entity Types
|
|
16
|
+
|
|
17
|
+
### bond
|
|
18
|
+
|
|
19
|
+
The municipal bond issue itself. One entity per unique bond across all reports.
|
|
20
|
+
|
|
21
|
+
| Property | Type | Description |
|
|
22
|
+
|----------|------|-------------|
|
|
23
|
+
| `client_matter_number` | string | **Strong ID.** BLX Group client matter number (e.g. `42182-2748`). Invariant across all reports for the same bond. |
|
|
24
|
+
| `bonds_name` | string | Full name of the bonds (e.g. "Multifamily Housing Revenue Refunding Bonds (Presidential Plaza at Newport Project-FHA Insured Mortgages) 1991 Series 1") |
|
|
25
|
+
| `par_amount` | string | Total par amount of the bond issue (e.g. "$142,235,000") |
|
|
26
|
+
| `dated_date` | string | Dated date of the bonds (e.g. "September 15, 1991") |
|
|
27
|
+
| `issue_date` | string | Issue date of the bonds (e.g. "October 17, 1991") |
|
|
28
|
+
| `bond_yield` | string | Arbitrage yield / allowable yield on investments (e.g. "7.420898%") |
|
|
29
|
+
| `computation_period` | string | The computation period for this report (e.g. "October 17, 1991 through October 16, 2024") |
|
|
30
|
+
| `rebate_computation_date` | string | End date of the computation period (e.g. "October 16, 2024") |
|
|
31
|
+
| `cumulative_rebate_liability` | string | Total cumulative rebate liability (e.g. "$0.00") |
|
|
32
|
+
| `rebate_payment_due` | string | Amount due to the US (e.g. "$0.00") |
|
|
33
|
+
| `return_on_investments` | string | Weighted return on investments since prior computation date (e.g. "6.447251%") |
|
|
34
|
+
| `shortfall_pct` | string | Shortfall percentage: return minus yield (e.g. "-0.973647%") |
|
|
35
|
+
| `actual_gross_earnings` | string | Total actual gross earnings across all funds |
|
|
36
|
+
| `allowable_gross_earnings` | string | Total allowable gross earnings at bond yield |
|
|
37
|
+
| `excess_earnings` | string | Total excess (negative = under yield) |
|
|
38
|
+
| `report_date` | string | Date the report was issued (e.g. "December 6, 2024") |
|
|
39
|
+
|
|
40
|
+
### organization
|
|
41
|
+
|
|
42
|
+
Companies, agencies, law firms, and financial institutions named in the reports.
|
|
43
|
+
|
|
44
|
+
| Property | Type | Description |
|
|
45
|
+
|----------|------|-------------|
|
|
46
|
+
| `org_type` | string | Type: `government_agency`, `law_firm`, `financial_services`, `financial_institution`, `trust_company` |
|
|
47
|
+
| `description` | string | Role in the deal (e.g. "Issuer", "Trustee", "Bond Counsel") |
|
|
48
|
+
|
|
49
|
+
Expected entities:
|
|
50
|
+
- New Jersey Housing and Mortgage Finance Agency (Issuer)
|
|
51
|
+
- BLX Group LLC (Rebate Analyst)
|
|
52
|
+
- Orrick, Herrington & Sutcliffe LLP (Bond Counsel)
|
|
53
|
+
- BNY / Bank of New York Mellon (Trustee)
|
|
54
|
+
- Willdan Financial Services (Prior Report preparer)
|
|
55
|
+
- U.S. Department of the Treasury
|
|
56
|
+
|
|
57
|
+
### fund_account
|
|
58
|
+
|
|
59
|
+
Bond proceeds sub-accounts tracked for rebate computation purposes.
|
|
60
|
+
|
|
61
|
+
| Property | Type | Description |
|
|
62
|
+
|----------|------|-------------|
|
|
63
|
+
| `fund_status` | string | Current status: `Active` or `Inactive` |
|
|
64
|
+
| `computation_date_valuation` | string | Fair market value at computation date |
|
|
65
|
+
| `gross_earnings` | string | Total gross earnings for the fund |
|
|
66
|
+
| `internal_rate_of_return` | string | IRR on the fund's investments |
|
|
67
|
+
| `excess_earnings` | string | Excess earnings (negative = below yield) |
|
|
68
|
+
|
|
69
|
+
Expected entities:
|
|
70
|
+
- Reserve I Account
|
|
71
|
+
- Reserve II Account
|
|
72
|
+
- Prior Rebate Liability
|
|
73
|
+
- Liquidity I Account
|
|
74
|
+
- Liquidity II Account
|
|
75
|
+
|
|
76
|
+
Additional fund accounts mentioned in Notes and Assumptions:
|
|
77
|
+
- Revenue Account (bona fide debt service fund, excluded from rebate)
|
|
78
|
+
- Escrow Fund
|
|
79
|
+
- Debt Service Reserve Account
|
|
80
|
+
- Construction Account
|
|
81
|
+
|
|
82
|
+
### financial_instrument
|
|
83
|
+
|
|
84
|
+
Securities held within fund accounts (investments of bond proceeds).
|
|
85
|
+
|
|
86
|
+
| Property | Type | Description |
|
|
87
|
+
|----------|------|-------------|
|
|
88
|
+
| `par_amount` | string | Par amount of the security |
|
|
89
|
+
| `coupon` | string | Coupon rate (e.g. "7.000%" or "Variable") |
|
|
90
|
+
| `maturity_date` | string | Maturity date |
|
|
91
|
+
| `settlement_date` | string | Settlement date |
|
|
92
|
+
| `settlement_price` | string | Settlement price (e.g. "100.000") |
|
|
93
|
+
| `yield` | string | Yield on the security |
|
|
94
|
+
| `accreted_price` | string | Accreted price |
|
|
95
|
+
| `accrued_interest` | string | Accrued interest amount |
|
|
96
|
+
| `value` | string | Total value (par + accrued interest) |
|
|
97
|
+
|
|
98
|
+
Expected entities (scoped per fund via `entity_context_from_title`):
|
|
99
|
+
- Morgan IA (7% coupon, institutional investment)
|
|
100
|
+
- Federated MM (variable rate money market fund)
|
|
101
|
+
|
|
102
|
+
### legal_agreement
|
|
103
|
+
|
|
104
|
+
Governing legal documents referenced in the reports.
|
|
105
|
+
|
|
106
|
+
| Property | Type | Description |
|
|
107
|
+
|----------|------|-------------|
|
|
108
|
+
| `agreement_type` | string | Type: `arbitrage_certificate`, `trust_indenture`, `engagement_letter` |
|
|
109
|
+
| `description` | string | Description of the agreement's role |
|
|
110
|
+
|
|
111
|
+
Expected entities:
|
|
112
|
+
- Certificate as to Arbitrage (Section 8, Section 21 referenced)
|
|
113
|
+
- Prior Report (Willdan Financial Services, December 17, 2008)
|
|
114
|
+
|
|
115
|
+
### location
|
|
116
|
+
|
|
117
|
+
Addresses and jurisdictions.
|
|
118
|
+
|
|
119
|
+
Expected entities:
|
|
120
|
+
- Trenton, NJ (Issuer address)
|
|
121
|
+
- Dallas, TX (BLX Group address)
|
|
122
|
+
- New York, NY (Orrick address)
|
|
123
|
+
- State of New Jersey
|
|
124
|
+
|
|
125
|
+
### person
|
|
126
|
+
|
|
127
|
+
Signatories, if extractable from signatures on transmittal letters and opinions.
|
|
128
|
+
May be sparse — many PDFs have illegible or absent signature blocks.
|
|
129
|
+
|
|
130
|
+
## Relationships
|
|
131
|
+
|
|
132
|
+
| Relationship | Domain | Target | Description |
|
|
133
|
+
|-------------|--------|--------|-------------|
|
|
134
|
+
| `issuer_of` | organization | bond | Issuer issued the bonds |
|
|
135
|
+
| `trustee_of` | organization | bond | Trustee of the bond issue |
|
|
136
|
+
| `advisor_to` | organization | bond | BLX Group as rebate analyst; Orrick as bond counsel |
|
|
137
|
+
| `fund_of` | fund_account | bond | Fund account belongs to the bond issue |
|
|
138
|
+
| `holds_investment` | fund_account | financial_instrument | Fund holds a security as an investment |
|
|
139
|
+
| `party_to` | organization | legal_agreement | Entity is party to an agreement |
|
|
140
|
+
| `located_at` | organization | location | Organization's address |
|
|
141
|
+
| `predecessor_of` | legal_agreement | legal_agreement | Prior Report preceded current Report |
|
|
142
|
+
|
|
143
|
+
## Events
|
|
144
|
+
|
|
145
|
+
| Event | Severity | Description |
|
|
146
|
+
|-------|----------|-------------|
|
|
147
|
+
| Rebate computation | medium | Periodic computation of arbitrage rebate liability |
|
|
148
|
+
| Bond issuance | high | Original issuance of the bonds (October 17, 1991) |
|
|
149
|
+
| Bond refunding | high | Refunding of prior 1985 Series F and G bonds |
|
|
150
|
+
| Fund valuation | medium | Valuation of fund accounts at computation date |
|
|
151
|
+
| Rebate payment determination | high | Determination that rebate payment is/isn't due |
|
|
152
|
+
| Report issuance | low | Issuance of this rebate analysis report |
|
|
153
|
+
|
|
154
|
+
## Table Extraction
|
|
155
|
+
|
|
156
|
+
### Schedule A — Summary of Rebate Analysis
|
|
157
|
+
|
|
158
|
+
Maps to `rebate_analysis` table config. Key column: Fund Description.
|
|
159
|
+
Each row becomes a `fund_account` entity with properties for status,
|
|
160
|
+
valuation, earnings, IRR, and excess earnings.
|
|
161
|
+
|
|
162
|
+
### Schedule B — Sources & Uses of Funds
|
|
163
|
+
|
|
164
|
+
Maps to `sources_of_funds` and `uses_of_funds` table configs. Uses
|
|
165
|
+
`document_entity_from_title` mode to attach line items as properties
|
|
166
|
+
on the bond entity.
|
|
167
|
+
|
|
168
|
+
### Security Holdings (Schedules C1, D1, F1, G1)
|
|
169
|
+
|
|
170
|
+
Maps to `security_tables` config. Key column: Security Type. Each
|
|
171
|
+
security becomes a `financial_instrument` entity scoped by fund
|
|
172
|
+
account title. Properties: par amount, coupon, maturity, yield, etc.
|
|
173
|
+
|
|
174
|
+
### Cash Flow Tables (Schedules C2, D2, E1, F2, G2)
|
|
175
|
+
|
|
176
|
+
New table config needed. These are the largest tables — hundreds of rows
|
|
177
|
+
of deposit/withdrawal transactions for each fund account. Columns:
|
|
178
|
+
Date, Description, Cash Flow, Muni-Days/Computation Date, FV Factor
|
|
179
|
+
at bond yield, FV As Of at bond yield, FV Factor at IRR, FV As Of at IRR.
|
|
180
|
+
|
|
181
|
+
## Citations
|
|
182
|
+
|
|
183
|
+
All extracted data should cite the specific schedule and page number
|
|
184
|
+
within the source PDF. The PDF filename serves as the document identifier.
|
|
@@ -0,0 +1,598 @@
|
|
|
1
|
+
# Dataset schema for BNY arbitrage rebate analysis reports.
|
|
2
|
+
#
|
|
3
|
+
# Extracts entities, properties, relationships, and events from Interim
|
|
4
|
+
# Arbitrage Rebate Analysis PDF documents prepared by BLX Group LLC for
|
|
5
|
+
# municipal bond issuers. BNY (Bank of New York Mellon) serves as trustee.
|
|
6
|
+
#
|
|
7
|
+
# Each report computes the arbitrage rebate liability under IRC Section 148
|
|
8
|
+
# for a bond issue across a computation period. Reports contain transmittal
|
|
9
|
+
# letters, legal opinions, notes/assumptions, summary schedules, and
|
|
10
|
+
# detailed per-fund cash flow and investment data.
|
|
11
|
+
#
|
|
12
|
+
# Uses the ml/extraction library with WithTableExtractor for combined
|
|
13
|
+
# entity + table extraction from PDF blobs via Gemini vision.
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
# These documents are structured compliance reports with a fixed format:
|
|
17
|
+
# transmittal letter, legal opinion, notes and assumptions, and financial
|
|
18
|
+
# schedules (A through G). Extract ONLY real-world entities — named
|
|
19
|
+
# organizations, the bond issue, fund accounts, and geographic locations.
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
# CRITICAL EXTRACTION RULES:
|
|
23
|
+
|
|
24
|
+
# - The bond issue is ONE financial_instrument entity. Use its full official
|
|
25
|
+
# name as stated on the cover page (e.g. "$142,235,000 New Jersey Housing
|
|
26
|
+
# and Mortgage Finance Agency Multifamily Housing Revenue Refunding Bonds
|
|
27
|
+
# (Presidential Plaza at Newport Project-FHA Insured Mortgages) 1991 Series 1").
|
|
28
|
+
# Do NOT extract the word "Bonds" alone as a separate entity.
|
|
29
|
+
|
|
30
|
+
# - Fund accounts are: Reserve I Account, Reserve II Account, Liquidity I
|
|
31
|
+
# Account, Liquidity II Account, Prior Rebate Liability, Revenue Account,
|
|
32
|
+
# Escrow Fund, Debt Service Reserve Account, Construction Account. Extract
|
|
33
|
+
# these by their proper names ONLY.
|
|
34
|
+
|
|
35
|
+
# - Do NOT extract any of the following as entities:
|
|
36
|
+
# * Schedule headings or titles (e.g. "Schedule A - Summary of Rebate
|
|
37
|
+
# Analysis", "Schedule C1 - Reserve I Account")
|
|
38
|
+
# * Table headers, column names, or row labels (e.g. "Fund Description",
|
|
39
|
+
# "Totals:", "Sources of Funds")
|
|
40
|
+
# * Document section names (e.g. "Transmittal Letter", "Notes and
|
|
41
|
+
# Assumptions", "Report", "engagement letter")
|
|
42
|
+
# * Amendment numbers (e.g. "AMENDMENT (NO. 002.00)")
|
|
43
|
+
# * Telex numbers, account numbers, or reference codes
|
|
44
|
+
# * The document title itself (e.g. "INTERIM ARBITRAGE REBATE ANALYSIS")
|
|
45
|
+
# * Legal citation references (e.g. "Section 5.6", "IRC Section 148")
|
|
46
|
+
# * Generic terms like "Prior Bonds" — use the full name instead
|
|
47
|
+
|
|
48
|
+
# - DO extract important related entities such as:
|
|
49
|
+
# * The issuer of the bond
|
|
50
|
+
# * related organizations such as real estate developers, important people, law firms, etc.
|
|
51
|
+
# * important events such as bond issuance, bond refunding, fund valuation, rebate payment determination, report issuance, etc.
|
|
52
|
+
# * important locations such as addresses, cities, and jurisdictions mentioned in the report.
|
|
53
|
+
|
|
54
|
+
# - IMPORTANT: Ensure that you extract important relationships between entities so that we are able
|
|
55
|
+
# to build a graph of the bond issue and its related entities.
|
|
56
|
+
|
|
57
|
+
# - Securities held in fund accounts (e.g. "Morgan IA", "Federated MM")
|
|
58
|
+
# are valid financial_instrument entities.
|
|
59
|
+
|
|
60
|
+
# - If this document is NOT an Interim Arbitrage Rebate Analysis (e.g. it
|
|
61
|
+
# is a Letter of Credit, trust indenture, or other document type), extract
|
|
62
|
+
# ZERO entities. Return an empty entities list.
|
|
63
|
+
|
|
64
|
+
name: "bny"
|
|
65
|
+
description: >-
|
|
66
|
+
Interim Arbitrage Rebate Analysis reports for municipal bond issues.
|
|
67
|
+
Documents contain bond details, fund account valuations, investment
|
|
68
|
+
holdings, cash flow tables, and rebate liability computations. Extract
|
|
69
|
+
the bond, its issuer, trustee, counsel, fund accounts, held securities,
|
|
70
|
+
and legal agreements. Each report is one observation of the bond's state
|
|
71
|
+
at a specific computation date.
|
|
72
|
+
|
|
73
|
+
extraction:
|
|
74
|
+
flavors: closed
|
|
75
|
+
properties: open
|
|
76
|
+
relationships: closed
|
|
77
|
+
attributes: closed
|
|
78
|
+
events: closed
|
|
79
|
+
|
|
80
|
+
# =============================================================================
|
|
81
|
+
# FLAVORS
|
|
82
|
+
# =============================================================================
|
|
83
|
+
|
|
84
|
+
flavors:
|
|
85
|
+
- name: "document"
|
|
86
|
+
description: "A source PDF document in the BNY dataset. Created programmatically, not by LLM extraction."
|
|
87
|
+
display_name: "Document"
|
|
88
|
+
mergeability: not_mergeable
|
|
89
|
+
strong_id_properties: ["bny_document_id"]
|
|
90
|
+
passive: true
|
|
91
|
+
|
|
92
|
+
- name: "organization"
|
|
93
|
+
description: "Companies, agencies, law firms, financial institutions, and government bodies named in the report."
|
|
94
|
+
display_name: "Organization"
|
|
95
|
+
mergeability: not_mergeable
|
|
96
|
+
examples:
|
|
97
|
+
- "New Jersey Housing and Mortgage Finance Agency"
|
|
98
|
+
- "BLX Group LLC"
|
|
99
|
+
- "Orrick, Herrington & Sutcliffe LLP"
|
|
100
|
+
- "BNY"
|
|
101
|
+
- "Lefrak Organization"
|
|
102
|
+
|
|
103
|
+
- name: "fund_account"
|
|
104
|
+
description: "Bond proceeds sub-accounts tracked for arbitrage rebate computation (e.g. reserve funds, liquidity accounts)."
|
|
105
|
+
display_name: "Fund Account"
|
|
106
|
+
mergeability: not_mergeable
|
|
107
|
+
examples:
|
|
108
|
+
- "Reserve I Account"
|
|
109
|
+
- "Reserve II Account"
|
|
110
|
+
- "Liquidity I Account"
|
|
111
|
+
- "Liquidity II Account"
|
|
112
|
+
- "Prior Rebate Liability"
|
|
113
|
+
|
|
114
|
+
- name: "financial_instrument"
|
|
115
|
+
description: "Bonds, notes, and securities. Includes the main bond issue being analyzed and securities held within fund accounts as investments of bond proceeds."
|
|
116
|
+
display_name: "Financial Instrument"
|
|
117
|
+
mergeability: not_mergeable
|
|
118
|
+
strong_id_properties: ["client_matter_number"]
|
|
119
|
+
examples:
|
|
120
|
+
- "New Jersey Housing and Mortgage Finance Agency Multifamily Housing Revenue Refunding Bonds 1991 Series 1"
|
|
121
|
+
- "Morgan IA"
|
|
122
|
+
- "Federated MM"
|
|
123
|
+
|
|
124
|
+
- name: "legal_agreement"
|
|
125
|
+
description: "Governing legal documents referenced in the report: arbitrage certificates, prior reports, engagement letters."
|
|
126
|
+
display_name: "Legal Agreement"
|
|
127
|
+
mergeability: not_mergeable
|
|
128
|
+
examples:
|
|
129
|
+
- "Certificate as to Arbitrage"
|
|
130
|
+
- "Prior Report"
|
|
131
|
+
|
|
132
|
+
- name: "location"
|
|
133
|
+
description: "Addresses, cities, and jurisdictions mentioned in the report."
|
|
134
|
+
display_name: "Location"
|
|
135
|
+
mergeability: not_mergeable
|
|
136
|
+
examples:
|
|
137
|
+
- "Trenton, NJ"
|
|
138
|
+
- "Dallas, TX"
|
|
139
|
+
- "New York, NY"
|
|
140
|
+
|
|
141
|
+
- name: "person"
|
|
142
|
+
description: "Officers, signatories, or other named individuals."
|
|
143
|
+
display_name: "Person"
|
|
144
|
+
mergeability: not_mergeable
|
|
145
|
+
|
|
146
|
+
# =============================================================================
|
|
147
|
+
# PROPERTIES
|
|
148
|
+
# =============================================================================
|
|
149
|
+
|
|
150
|
+
properties:
|
|
151
|
+
# --- Document-level properties ---
|
|
152
|
+
|
|
153
|
+
- name: "bny_document_id"
|
|
154
|
+
type: string
|
|
155
|
+
description: "Numeric document identifier from the PDF filename (e.g. 26889358, 5816087). Used as strong ID for document entities."
|
|
156
|
+
display_name: "BNY Document ID"
|
|
157
|
+
mergeability: not_mergeable
|
|
158
|
+
domain_flavors: ["document"]
|
|
159
|
+
passive: true
|
|
160
|
+
|
|
161
|
+
# --- Bond-level properties (document-level, one per report) ---
|
|
162
|
+
|
|
163
|
+
- name: "client_matter_number"
|
|
164
|
+
type: string
|
|
165
|
+
description: "BLX Group client matter number uniquely identifying this bond engagement (e.g. 42182-2748). Used as strong ID."
|
|
166
|
+
display_name: "Client Matter Number"
|
|
167
|
+
mergeability: not_mergeable
|
|
168
|
+
domain_flavors: ["financial_instrument"]
|
|
169
|
+
examples: ["42182-2748"]
|
|
170
|
+
|
|
171
|
+
- name: "bonds_name"
|
|
172
|
+
type: string
|
|
173
|
+
description: "The full name of the bond issue being analyzed in this report, exactly as it appears in the document title or cover page. This identifies which financial_instrument entity is the primary bond."
|
|
174
|
+
display_name: "Bonds Name"
|
|
175
|
+
mergeability: not_mergeable
|
|
176
|
+
domain_flavors: ["financial_instrument"]
|
|
177
|
+
extraction_config:
|
|
178
|
+
level: document
|
|
179
|
+
literal: {}
|
|
180
|
+
|
|
181
|
+
- name: "par_amount"
|
|
182
|
+
type: string
|
|
183
|
+
description: "Total par amount of the bond issue."
|
|
184
|
+
display_name: "Par Amount"
|
|
185
|
+
mergeability: not_mergeable
|
|
186
|
+
domain_flavors: ["financial_instrument"]
|
|
187
|
+
examples: ["$142,235,000"]
|
|
188
|
+
|
|
189
|
+
- name: "dated_date"
|
|
190
|
+
type: string
|
|
191
|
+
description: "Dated date of the bonds."
|
|
192
|
+
display_name: "Dated Date"
|
|
193
|
+
mergeability: not_mergeable
|
|
194
|
+
domain_flavors: ["financial_instrument"]
|
|
195
|
+
|
|
196
|
+
- name: "issue_date"
|
|
197
|
+
type: string
|
|
198
|
+
description: "Issue date of the bonds."
|
|
199
|
+
display_name: "Issue Date"
|
|
200
|
+
mergeability: not_mergeable
|
|
201
|
+
domain_flavors: ["financial_instrument"]
|
|
202
|
+
|
|
203
|
+
- name: "bond_yield"
|
|
204
|
+
type: string
|
|
205
|
+
description: "Arbitrage yield / allowable yield on investments (e.g. 7.420898%)."
|
|
206
|
+
display_name: "Bond Yield"
|
|
207
|
+
mergeability: not_mergeable
|
|
208
|
+
domain_flavors: ["financial_instrument"]
|
|
209
|
+
|
|
210
|
+
- name: "computation_period"
|
|
211
|
+
type: string
|
|
212
|
+
description: "The computation period covered by this report (e.g. October 17, 1991 through October 16, 2024)."
|
|
213
|
+
display_name: "Computation Period"
|
|
214
|
+
mergeability: not_mergeable
|
|
215
|
+
domain_flavors: ["financial_instrument"]
|
|
216
|
+
|
|
217
|
+
- name: "rebate_computation_date"
|
|
218
|
+
type: string
|
|
219
|
+
description: "End date of the computation period (e.g. October 16, 2024). This is the 'as of' date for all values in the report."
|
|
220
|
+
display_name: "Rebate Computation Date"
|
|
221
|
+
mergeability: not_mergeable
|
|
222
|
+
domain_flavors: ["financial_instrument"]
|
|
223
|
+
extraction_config:
|
|
224
|
+
level: document
|
|
225
|
+
literal: {}
|
|
226
|
+
|
|
227
|
+
- name: "cumulative_rebate_liability"
|
|
228
|
+
type: string
|
|
229
|
+
description: "Total cumulative rebate liability amount."
|
|
230
|
+
display_name: "Cumulative Rebate Liability"
|
|
231
|
+
mergeability: not_mergeable
|
|
232
|
+
domain_flavors: ["financial_instrument"]
|
|
233
|
+
|
|
234
|
+
- name: "rebate_payment_due"
|
|
235
|
+
type: string
|
|
236
|
+
description: "Rebate payment amount due to the United States."
|
|
237
|
+
display_name: "Rebate Payment Due"
|
|
238
|
+
mergeability: not_mergeable
|
|
239
|
+
domain_flavors: ["financial_instrument"]
|
|
240
|
+
|
|
241
|
+
- name: "return_on_investments"
|
|
242
|
+
type: string
|
|
243
|
+
description: "Weighted return on investments since the prior computation date."
|
|
244
|
+
display_name: "Return on Investments"
|
|
245
|
+
mergeability: not_mergeable
|
|
246
|
+
domain_flavors: ["financial_instrument"]
|
|
247
|
+
|
|
248
|
+
- name: "shortfall_pct"
|
|
249
|
+
type: string
|
|
250
|
+
description: "Shortfall percentage: return on investments minus bond yield."
|
|
251
|
+
display_name: "Shortfall Percentage"
|
|
252
|
+
mergeability: not_mergeable
|
|
253
|
+
domain_flavors: ["financial_instrument"]
|
|
254
|
+
|
|
255
|
+
- name: "actual_gross_earnings"
|
|
256
|
+
type: string
|
|
257
|
+
description: "Total actual gross earnings across all funds."
|
|
258
|
+
display_name: "Actual Gross Earnings"
|
|
259
|
+
mergeability: not_mergeable
|
|
260
|
+
domain_flavors: ["financial_instrument"]
|
|
261
|
+
|
|
262
|
+
- name: "allowable_gross_earnings"
|
|
263
|
+
type: string
|
|
264
|
+
description: "Total allowable gross earnings computed at the bond yield."
|
|
265
|
+
display_name: "Allowable Gross Earnings"
|
|
266
|
+
mergeability: not_mergeable
|
|
267
|
+
domain_flavors: ["financial_instrument"]
|
|
268
|
+
|
|
269
|
+
- name: "report_date"
|
|
270
|
+
type: string
|
|
271
|
+
description: "Date the report was issued."
|
|
272
|
+
display_name: "Report Date"
|
|
273
|
+
mergeability: not_mergeable
|
|
274
|
+
domain_flavors: ["financial_instrument"]
|
|
275
|
+
|
|
276
|
+
# --- Organization properties ---
|
|
277
|
+
|
|
278
|
+
- name: "org_type"
|
|
279
|
+
type: string
|
|
280
|
+
description: "Type of organization: government_agency, law_firm, financial_services, financial_institution, trust_company."
|
|
281
|
+
display_name: "Organization Type"
|
|
282
|
+
mergeability: not_mergeable
|
|
283
|
+
domain_flavors: ["organization"]
|
|
284
|
+
|
|
285
|
+
- name: "description"
|
|
286
|
+
type: string
|
|
287
|
+
description: "Short description or role of the entity in the deal."
|
|
288
|
+
display_name: "Description"
|
|
289
|
+
mergeability: not_mergeable
|
|
290
|
+
domain_flavors: ["organization", "legal_agreement"]
|
|
291
|
+
|
|
292
|
+
# --- Fund account properties (from Schedule A table extraction) ---
|
|
293
|
+
|
|
294
|
+
- name: "current_fund_status"
|
|
295
|
+
type: string
|
|
296
|
+
description: "Current status of the fund: Active or Inactive."
|
|
297
|
+
display_name: "Current Fund Status"
|
|
298
|
+
mergeability: not_mergeable
|
|
299
|
+
domain_flavors: ["fund_account"]
|
|
300
|
+
|
|
301
|
+
- name: "computation_date_valuation"
|
|
302
|
+
type: string
|
|
303
|
+
description: "Fair market value of the fund at the computation date."
|
|
304
|
+
display_name: "Computation Date Valuation"
|
|
305
|
+
mergeability: not_mergeable
|
|
306
|
+
domain_flavors: ["fund_account"]
|
|
307
|
+
|
|
308
|
+
- name: "gross_earnings"
|
|
309
|
+
type: string
|
|
310
|
+
description: "Total gross earnings for the fund."
|
|
311
|
+
display_name: "Gross Earnings"
|
|
312
|
+
mergeability: not_mergeable
|
|
313
|
+
domain_flavors: ["fund_account"]
|
|
314
|
+
|
|
315
|
+
- name: "internal_rate_of_return"
|
|
316
|
+
type: string
|
|
317
|
+
description: "Internal rate of return on the fund's investments."
|
|
318
|
+
display_name: "Internal Rate of Return"
|
|
319
|
+
mergeability: not_mergeable
|
|
320
|
+
domain_flavors: ["fund_account"]
|
|
321
|
+
|
|
322
|
+
- name: "excess_earnings"
|
|
323
|
+
type: string
|
|
324
|
+
description: "Excess earnings (negative means below yield). Applies to both the bond overall and individual fund accounts."
|
|
325
|
+
display_name: "Excess Earnings"
|
|
326
|
+
mergeability: not_mergeable
|
|
327
|
+
domain_flavors: ["financial_instrument", "fund_account"]
|
|
328
|
+
|
|
329
|
+
# --- Financial instrument properties (from security holdings tables) ---
|
|
330
|
+
|
|
331
|
+
- name: "instrument_par_amount"
|
|
332
|
+
type: string
|
|
333
|
+
description: "Par amount of the security held in a fund account."
|
|
334
|
+
display_name: "Par Amount"
|
|
335
|
+
mergeability: not_mergeable
|
|
336
|
+
domain_flavors: ["financial_instrument"]
|
|
337
|
+
|
|
338
|
+
- name: "coupon"
|
|
339
|
+
type: string
|
|
340
|
+
description: "Coupon rate of the security (e.g. 7.000% or Variable)."
|
|
341
|
+
display_name: "Coupon"
|
|
342
|
+
mergeability: not_mergeable
|
|
343
|
+
domain_flavors: ["financial_instrument"]
|
|
344
|
+
|
|
345
|
+
- name: "maturity_date"
|
|
346
|
+
type: string
|
|
347
|
+
description: "Maturity date of the security."
|
|
348
|
+
display_name: "Maturity Date"
|
|
349
|
+
mergeability: not_mergeable
|
|
350
|
+
domain_flavors: ["financial_instrument"]
|
|
351
|
+
|
|
352
|
+
- name: "settlement_date"
|
|
353
|
+
type: string
|
|
354
|
+
description: "Settlement date of the security."
|
|
355
|
+
display_name: "Settlement Date"
|
|
356
|
+
mergeability: not_mergeable
|
|
357
|
+
domain_flavors: ["financial_instrument"]
|
|
358
|
+
|
|
359
|
+
- name: "settlement_price"
|
|
360
|
+
type: string
|
|
361
|
+
description: "Settlement price of the security."
|
|
362
|
+
display_name: "Settlement Price"
|
|
363
|
+
mergeability: not_mergeable
|
|
364
|
+
domain_flavors: ["financial_instrument"]
|
|
365
|
+
|
|
366
|
+
- name: "yield"
|
|
367
|
+
type: string
|
|
368
|
+
description: "Yield on the security."
|
|
369
|
+
display_name: "Yield"
|
|
370
|
+
mergeability: not_mergeable
|
|
371
|
+
domain_flavors: ["financial_instrument"]
|
|
372
|
+
|
|
373
|
+
- name: "accreted_price"
|
|
374
|
+
type: string
|
|
375
|
+
description: "Accreted price of the security."
|
|
376
|
+
display_name: "Accreted Price"
|
|
377
|
+
mergeability: not_mergeable
|
|
378
|
+
domain_flavors: ["financial_instrument"]
|
|
379
|
+
|
|
380
|
+
- name: "accrued_interest"
|
|
381
|
+
type: string
|
|
382
|
+
description: "Accrued interest amount on the security."
|
|
383
|
+
display_name: "Accrued Interest"
|
|
384
|
+
mergeability: not_mergeable
|
|
385
|
+
domain_flavors: ["financial_instrument"]
|
|
386
|
+
|
|
387
|
+
- name: "value"
|
|
388
|
+
type: string
|
|
389
|
+
description: "Total value of the security (par + accrued interest)."
|
|
390
|
+
display_name: "Value"
|
|
391
|
+
mergeability: not_mergeable
|
|
392
|
+
domain_flavors: ["financial_instrument"]
|
|
393
|
+
|
|
394
|
+
# --- Legal agreement properties ---
|
|
395
|
+
|
|
396
|
+
- name: "agreement_type"
|
|
397
|
+
type: string
|
|
398
|
+
description: "Type of legal agreement: arbitrage_certificate, prior_report, engagement_letter."
|
|
399
|
+
display_name: "Agreement Type"
|
|
400
|
+
mergeability: not_mergeable
|
|
401
|
+
domain_flavors: ["legal_agreement"]
|
|
402
|
+
|
|
403
|
+
# --- Person properties ---
|
|
404
|
+
|
|
405
|
+
- name: "title"
|
|
406
|
+
type: string
|
|
407
|
+
description: "Person's title or role."
|
|
408
|
+
display_name: "Title"
|
|
409
|
+
mergeability: not_mergeable
|
|
410
|
+
domain_flavors: ["person"]
|
|
411
|
+
|
|
412
|
+
# =============================================================================
|
|
413
|
+
# RELATIONSHIPS
|
|
414
|
+
# =============================================================================
|
|
415
|
+
|
|
416
|
+
relationships:
|
|
417
|
+
- name: "appears_in"
|
|
418
|
+
description: "An entity appears in (is mentioned in) a source document."
|
|
419
|
+
display_name: "Appears In"
|
|
420
|
+
mergeability: not_mergeable
|
|
421
|
+
domain_flavors: ["organization", "fund_account", "financial_instrument", "legal_agreement", "location", "person"]
|
|
422
|
+
target_flavors: ["document"]
|
|
423
|
+
passive: true
|
|
424
|
+
|
|
425
|
+
- name: "issuer_of"
|
|
426
|
+
description: "An organization issued the bonds."
|
|
427
|
+
display_name: "Issuer Of"
|
|
428
|
+
mergeability: not_mergeable
|
|
429
|
+
domain_flavors: ["organization"]
|
|
430
|
+
target_flavors: ["financial_instrument", "legal_agreement"]
|
|
431
|
+
|
|
432
|
+
- name: "trustee_of"
|
|
433
|
+
description: "An organization serves as trustee of the bond issue."
|
|
434
|
+
display_name: "Trustee Of"
|
|
435
|
+
mergeability: not_mergeable
|
|
436
|
+
domain_flavors: ["organization"]
|
|
437
|
+
target_flavors: ["financial_instrument"]
|
|
438
|
+
|
|
439
|
+
- name: "advisor_to"
|
|
440
|
+
description: "An entity serves as advisor (rebate analyst, bond counsel) to another entity."
|
|
441
|
+
display_name: "Advisor To"
|
|
442
|
+
mergeability: not_mergeable
|
|
443
|
+
domain_flavors: ["organization", "person", "legal_agreement"]
|
|
444
|
+
target_flavors: ["financial_instrument", "legal_agreement", "organization"]
|
|
445
|
+
|
|
446
|
+
- name: "fund_of"
|
|
447
|
+
description: "A fund account belongs to the bond issue."
|
|
448
|
+
display_name: "Fund Of"
|
|
449
|
+
mergeability: not_mergeable
|
|
450
|
+
domain_flavors: ["fund_account"]
|
|
451
|
+
target_flavors: ["financial_instrument"]
|
|
452
|
+
|
|
453
|
+
- name: "holds_investment"
|
|
454
|
+
description: "A fund account holds a financial instrument as an investment."
|
|
455
|
+
display_name: "Holds Investment"
|
|
456
|
+
mergeability: not_mergeable
|
|
457
|
+
domain_flavors: ["fund_account"]
|
|
458
|
+
target_flavors: ["financial_instrument"]
|
|
459
|
+
|
|
460
|
+
- name: "party_to"
|
|
461
|
+
description: "An organization or person is a party to a legal agreement, bond issue, or letter of credit."
|
|
462
|
+
display_name: "Party To"
|
|
463
|
+
mergeability: not_mergeable
|
|
464
|
+
domain_flavors: ["organization", "person"]
|
|
465
|
+
target_flavors: ["legal_agreement", "financial_instrument"]
|
|
466
|
+
|
|
467
|
+
- name: "sponsor_of"
|
|
468
|
+
description: "An organization sponsors, develops, or is the principal behind a project, deal, fund, or another organization (e.g. real estate developer behind a housing project partnership)."
|
|
469
|
+
display_name: "Sponsor Of"
|
|
470
|
+
mergeability: not_mergeable
|
|
471
|
+
domain_flavors: ["organization"]
|
|
472
|
+
target_flavors: ["organization", "financial_instrument", "location"]
|
|
473
|
+
|
|
474
|
+
- name: "developer_of"
|
|
475
|
+
description: "An organization is the developer of a project, deal, fund, or another organization (e.g. real estate developer behind a housing project partnership)."
|
|
476
|
+
display_name: "Developer Of"
|
|
477
|
+
mergeability: not_mergeable
|
|
478
|
+
domain_flavors: ["organization"]
|
|
479
|
+
target_flavors: ["organization", "financial_instrument", "location"]
|
|
480
|
+
|
|
481
|
+
- name: "subsidiary_of"
|
|
482
|
+
description: "An organization is a subsidiary, affiliate, or controlled entity of another organization (e.g. a special purpose partnership controlled by a developer)."
|
|
483
|
+
display_name: "Subsidiary Of"
|
|
484
|
+
mergeability: not_mergeable
|
|
485
|
+
domain_flavors: ["organization"]
|
|
486
|
+
target_flavors: ["organization"]
|
|
487
|
+
|
|
488
|
+
- name: "borrower_of"
|
|
489
|
+
description: "An organization is the borrower, applicant, or account party on a financial instrument such as a letter of credit, loan, or bond issue."
|
|
490
|
+
display_name: "Borrower Of"
|
|
491
|
+
mergeability: not_mergeable
|
|
492
|
+
domain_flavors: ["organization"]
|
|
493
|
+
target_flavors: ["financial_instrument", "legal_agreement"]
|
|
494
|
+
|
|
495
|
+
- name: "beneficiary_of"
|
|
496
|
+
description: "An organization is the beneficiary of a financial instrument, letter of credit, or trust arrangement."
|
|
497
|
+
display_name: "Beneficiary Of"
|
|
498
|
+
mergeability: not_mergeable
|
|
499
|
+
domain_flavors: ["organization"]
|
|
500
|
+
target_flavors: ["financial_instrument", "legal_agreement"]
|
|
501
|
+
|
|
502
|
+
- name: "guarantor_of"
|
|
503
|
+
description: "An organization guarantees another organization's obligations or a financial instrument (e.g. letter of credit provider)."
|
|
504
|
+
display_name: "Guarantor Of"
|
|
505
|
+
mergeability: not_mergeable
|
|
506
|
+
domain_flavors: ["organization"]
|
|
507
|
+
target_flavors: ["organization", "financial_instrument"]
|
|
508
|
+
|
|
509
|
+
- name: "successor_to"
|
|
510
|
+
description: "An entity succeeded another entity in a role (e.g. successor trustee, bank name change, corporate merger)."
|
|
511
|
+
display_name: "Successor To"
|
|
512
|
+
mergeability: not_mergeable
|
|
513
|
+
domain_flavors: ["organization", "financial_instrument"]
|
|
514
|
+
target_flavors: ["organization", "financial_instrument"]
|
|
515
|
+
|
|
516
|
+
- name: "signatory_of"
|
|
517
|
+
description: "A person signed or executed a document or agreement on behalf of an organization."
|
|
518
|
+
display_name: "Signatory Of"
|
|
519
|
+
mergeability: not_mergeable
|
|
520
|
+
domain_flavors: ["person"]
|
|
521
|
+
target_flavors: ["legal_agreement", "financial_instrument", "organization"]
|
|
522
|
+
|
|
523
|
+
- name: "located_at"
|
|
524
|
+
description: "An entity is located at a geographic location."
|
|
525
|
+
display_name: "Located At"
|
|
526
|
+
mergeability: not_mergeable
|
|
527
|
+
domain_flavors: ["organization"]
|
|
528
|
+
target_flavors: ["location"]
|
|
529
|
+
|
|
530
|
+
- name: "predecessor_of"
|
|
531
|
+
description: "A prior report or agreement preceded the current one."
|
|
532
|
+
display_name: "Predecessor Of"
|
|
533
|
+
mergeability: not_mergeable
|
|
534
|
+
domain_flavors: ["legal_agreement", "financial_instrument", "organization"]
|
|
535
|
+
target_flavors: ["legal_agreement", "financial_instrument", "organization"]
|
|
536
|
+
|
|
537
|
+
- name: "head_of"
|
|
538
|
+
description: "A person is the head of an organization or location, e.g., President, CEO, or equivalent top leadership role"
|
|
539
|
+
display_name: "Head Of"
|
|
540
|
+
mergeability: not_mergeable
|
|
541
|
+
domain_flavors: ["person"]
|
|
542
|
+
target_flavors: ["organization", "location"]
|
|
543
|
+
|
|
544
|
+
- name: "is_director"
|
|
545
|
+
description: "A person is on the board of directors of an organization. Not to be used for heads of organizations."
|
|
546
|
+
display_name: "Director Of"
|
|
547
|
+
mergeability: not_mergeable
|
|
548
|
+
domain_flavors: ["person"]
|
|
549
|
+
target_flavors: ["organization"]
|
|
550
|
+
|
|
551
|
+
- name: "works_at"
|
|
552
|
+
description: "A person is employed by, or is a founder of an organization. Not to be used for heads or board members of organizations."
|
|
553
|
+
display_name: "Works At"
|
|
554
|
+
mergeability: not_mergeable
|
|
555
|
+
domain_flavors: ["person"]
|
|
556
|
+
target_flavors: ["organization"]
|
|
557
|
+
|
|
558
|
+
|
|
559
|
+
# =============================================================================
|
|
560
|
+
# EVENTS
|
|
561
|
+
# =============================================================================
|
|
562
|
+
|
|
563
|
+
events:
|
|
564
|
+
- name: "Rebate computation"
|
|
565
|
+
description: "Periodic computation of arbitrage rebate liability under IRC Section 148"
|
|
566
|
+
metadata: { severity: medium }
|
|
567
|
+
|
|
568
|
+
- name: "Bond issuance"
|
|
569
|
+
description: "Original issuance of the bonds"
|
|
570
|
+
metadata: { severity: high }
|
|
571
|
+
|
|
572
|
+
- name: "Bond refunding"
|
|
573
|
+
description: "Refunding or refinancing of prior bonds using proceeds from this issue"
|
|
574
|
+
metadata: { severity: high }
|
|
575
|
+
|
|
576
|
+
- name: "Fund valuation"
|
|
577
|
+
description: "Valuation of bond fund accounts at the computation date"
|
|
578
|
+
metadata: { severity: medium }
|
|
579
|
+
|
|
580
|
+
- name: "Rebate payment determination"
|
|
581
|
+
description: "Formal determination of the rebate payment amount owed to the IRS"
|
|
582
|
+
metadata: { severity: high }
|
|
583
|
+
|
|
584
|
+
- name: "Report issuance"
|
|
585
|
+
description: "Issuance of the rebate analysis report by BLX Group"
|
|
586
|
+
metadata: { severity: low }
|
|
587
|
+
|
|
588
|
+
- name: "LOC issuance"
|
|
589
|
+
description: "Issuance of a letter of credit providing credit enhancement or liquidity support"
|
|
590
|
+
metadata: { severity: high }
|
|
591
|
+
|
|
592
|
+
- name: "LOC amendment"
|
|
593
|
+
description: "Amendment to a letter of credit extending its validity, changing terms, or updating parties"
|
|
594
|
+
metadata: { severity: medium }
|
|
595
|
+
|
|
596
|
+
- name: "Party succession"
|
|
597
|
+
description: "Succession of a key deal party (e.g. trustee, bank, beneficiary) from one entity to another"
|
|
598
|
+
metadata: { severity: medium }
|
|
@@ -62,12 +62,14 @@ flavors:
|
|
|
62
62
|
description: "A news article or press release being processed"
|
|
63
63
|
display_name: "Article"
|
|
64
64
|
mergeability: not_mergeable
|
|
65
|
+
strong_id_properties: ["newsdata_id"]
|
|
65
66
|
passive: true
|
|
66
67
|
|
|
67
68
|
- name: "publication"
|
|
68
69
|
description: "A news publication or media outlet identified by its home URL"
|
|
69
70
|
display_name: "Publication"
|
|
70
71
|
mergeability: not_mergeable
|
|
72
|
+
strong_id_properties: ["homeUrl"]
|
|
71
73
|
passive: true
|
|
72
74
|
|
|
73
75
|
# =============================================================================
|
|
@@ -389,6 +391,14 @@ properties:
|
|
|
389
391
|
domain_flavors: ["article"]
|
|
390
392
|
passive: true
|
|
391
393
|
|
|
394
|
+
- name: "newsdata_id"
|
|
395
|
+
type: string
|
|
396
|
+
description: "Unique article identifier from the NewsData API"
|
|
397
|
+
display_name: "NewsData ID"
|
|
398
|
+
mergeability: not_mergeable
|
|
399
|
+
domain_flavors: ["article"]
|
|
400
|
+
passive: true
|
|
401
|
+
|
|
392
402
|
- name: "title"
|
|
393
403
|
type: string
|
|
394
404
|
description: "Title of the entity"
|