@yottagraph-app/data-model-skill 0.0.4 → 0.0.6

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yottagraph-app/data-model-skill",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "description": "Data model skill documentation for AI agents - entity types, properties, and schemas from Lovelace fetch sources",
5
5
  "repository": {
6
6
  "type": "git",
@@ -52,7 +52,32 @@ Each SEC form type is a separate flavor, namespaced under `sec`. All share the s
52
52
  | `sec::13f_hr` | 13F-HR | Institutional investment manager holdings |
53
53
  | `sec::def_14a` | DEF 14A | Definitive proxy statement |
54
54
 
55
- Sub-records (8-K events, Form 4 transactions, Form 3 holdings) use their parent filing's flavor.
55
+ ### Sub-Records (8-K Events, Form 4 Transactions, Form 3 Holdings)
56
+
57
+ Sub-records are **separate graph entities**, not nested properties on the parent filing. Each sub-record has its own NEID and can be queried independently. They use the same flavor as their parent filing (e.g., `sec::8_k` for 8-K events, `sec::form_4` for Form 4 transactions).
58
+
59
+ **Entity naming pattern:**
60
+ - 8-K events: `{accession_number}_evt_{n}` (e.g., `0000320193-24-000067_evt_1`)
61
+ - Form 4 transactions: `{accession_number}_trx_{n}` (e.g., `0000320193-24-000067_trx_1`)
62
+ - Form 3 holdings: `{accession_number}_holding_{n}`
63
+
64
+ **Relationships on sub-records:**
65
+ - `filed` — points to the parent filing's accession number
66
+ - `issued_by` — points to the company
67
+
68
+ **Critical querying note:** Properties like `form_8k_event`, `form_8k_item_code`, `transaction_type`, `shares_transacted`, and other sub-record-specific properties do NOT appear on the parent filing entity or the organization entity. You must traverse the graph to the sub-record entities to access them.
69
+
70
+ **Traversal path:**
71
+ ```
72
+ organization --[filed]--> 8-K filing --[linked, distance 1]--> event sub-records
73
+ ```
74
+
75
+ **Example: Finding 8-K event sub-records for a company:**
76
+ 1. Get filing NEIDs from the organization's `filed` property
77
+ 2. Filter to 8-K filings by checking `form_type == "8-K"`
78
+ 3. For each 8-K filing, use a `linked` expression (distance 1, direction both) to find connected entities
79
+ 4. Exclude the organization and the filing itself from results — the remaining entities are the event sub-records
80
+ 5. Query those sub-record NEIDs for `form_8k_event` and `form_8k_item_code`
56
81
 
57
82
  ### `person`
58
83
 
@@ -161,12 +186,34 @@ The six core financial properties appear on both the **organization** and its **
161
186
 
162
187
  #### 8-K Corporate Events (source: `edgar_8k`)
163
188
 
164
- Data source: 8-K current report filings. Properties on document sub-records.
189
+ Data source: 8-K current report filings.
190
+
191
+ > **Important:** These properties are on **event sub-record entities**, not on the parent 8-K filing or the organization. See the [Sub-Records section](#sub-records-8-k-events-form-4-transactions-form-3-holdings) above for how to find them.
165
192
 
193
+ **Core event properties:**
166
194
  * `form_8k_event` — Snake_case event identifier. Examples: `"material_agreement"`, `"officer_director_change"`
167
195
  * `form_8k_item_code` — Raw SEC item number. Examples: `"1.01"`, `"5.02"`
196
+ * `event_severity` — Event importance classification. Values: `"critical"`, `"high"`, `"medium"`, `"low"`
168
197
  * `category` — Sub-classification of Item 8.01 Other Events. Examples: `"cybersecurity_incident"`
169
198
 
199
+ **Sub-record identity and relationships:**
200
+ * `accession_number` — Synthetic sub-record identifier. Example: `"0000320193-24-000067_evt_1"`
201
+ * `filed` — Relationship: event sub-record → parent 8-K filing
202
+ * `issued_by` — Relationship: event sub-record → company
203
+
204
+ **Item 8.01 keyword flags** (set to `"true"` when matched):
205
+ * `8k_cybersecurity_keyword` — Cybersecurity-related disclosure detected
206
+ * `8k_litigation_keyword` — Litigation-related disclosure detected
207
+ * `8k_regulatory_keyword` — Regulatory-related disclosure detected
208
+ * `8k_operational_keyword` — Operational issue disclosure detected
209
+
210
+ **ABS event flags** (Items 6.01–6.05, set to `"true"` when applicable):
211
+ * `abs_servicing_event` — Item 6.01: ABS servicing event
212
+ * `abs_servicer_change` — Item 6.02: ABS servicer change
213
+ * `abs_credit_enhancement_change` — Item 6.03: ABS credit enhancement change
214
+ * `abs_failure_event` — Item 6.04: ABS failure to make distribution
215
+ * `abs_securities_act` — Item 6.05: ABS Securities Act updating disclosure
216
+
170
217
  #### Beneficial Ownership (source: `edgar_sc_13d`, `edgar_sc_13g`)
171
218
 
172
219
  Data source: SC 13D/G XML filings. Properties on the filer organization.
@@ -240,8 +287,14 @@ Data source: Form 3/4 XML.
240
287
 
241
288
  #### Form 4 Transactions (source: `edgar_4`)
242
289
 
243
- Properties on document sub-records, one per transaction.
290
+ > **Important:** These properties are on **transaction sub-record entities**, not on the parent Form 4 filing. See the [Sub-Records section](#sub-records-8-k-events-form-4-transactions-form-3-holdings) above for how to find them.
291
+
292
+ **Sub-record identity and relationships:**
293
+ * `accession_number` — Synthetic sub-record identifier. Example: `"0000320193-24-000067_trx_1"`
294
+ * `filed` — Relationship: transaction sub-record → parent Form 4 filing
295
+ * `issued_by` — Relationship: transaction sub-record → issuer company
244
296
 
297
+ **Transaction properties:**
245
298
  * `transaction_type` — Human-readable code description. Examples: `"Open market or private purchase"`, `"Grant, award, or other acquisition"`
246
299
  * `transaction_date` — Transaction date (YYYY-MM-DD)
247
300
  * `acquired_disposed_code` — `"A"` (acquired) or `"D"` (disposed)
@@ -284,6 +337,8 @@ Data source: 13F-HR XML information table.
284
337
 
285
338
  ## Entity Relationships
286
339
 
340
+ > **Sub-record traversal:** Sub-records (8-K events, Form 4 transactions, Form 3 holdings) are separate document entities. To find them, traverse from the parent filing using a `linked` expression (distance 1). The sub-record's `filed` property points back to the parent filing, and `issued_by` points to the company.
341
+
287
342
  ```
288
343
  organization ──[filed]────────────────────→ document
289
344
  organization ──[filing_reference]─────────→ document
@@ -296,7 +351,8 @@ document ──[refers_to]──────────────
296
351
  document ──[filer]────────────────────→ organization (SC 13D/G)
297
352
  document ──[group_member]─────────────→ organization (SC 13D)
298
353
  document ──[compares_to]──────────────→ organization (DEF 14A)
299
- document ──[filed]────────────────────→ document (sub-record → parent)
354
+ document (sub-record)──[filed]────────────────────→ document (8-K event → parent 8-K filing)
355
+ document (sub-record)──[issued_by]────────────────→ organization (8-K event / Form 4 txn → company)
300
356
  person ──[is_officer]───────────────→ organization
301
357
  person ──[is_director]──────────────→ organization
302
358
  person ──[is_ten_percent_owner]─────→ organization