@yottagraph-app/data-model-skill 0.0.21 → 0.0.22

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.21",
3
+ "version": "0.0.22",
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",
@@ -0,0 +1,140 @@
1
+ # Data Dictionary: DOT Authority
2
+
3
+ ## Source Overview
4
+
5
+ FMCSA Carrier Authority data from the "Carrier All With History" Socrata dataset (`6eyk-hxee`), published by the Federal Motor Carrier Safety Administration. Contains operating authority records for motor carriers, brokers, and freight forwarders, including docket numbers, authority statuses (common, contract, broker), insurance requirements, and business contact information.
6
+
7
+ Bulk-refreshed periodically by FMCSA; no per-row timestamps. The streamer performs a single full download per run.
8
+
9
+ | Pipeline | `Record.Source` |
10
+ |----------|----------------|
11
+ | Carrier Authority | `dotauthority` |
12
+
13
+ This is a companion dataset to DOT Census (`dotcensus`), which covers company registration, fleet size, and safety ratings. Authority covers operating authority statuses and insurance/bond requirements. Both sources share the `usdot_number` strong ID, enabling entity merging across datasets.
14
+
15
+ ---
16
+
17
+ ## Entity Types
18
+
19
+ ### `organization`
20
+
21
+ A motor carrier, broker, or freight forwarder registered with FMCSA.
22
+
23
+ - Primary key: `usdot_number` (USDOT number assigned by FMCSA)
24
+ - Entity resolver: named entity. Strong ID = `usdot_number`. Disambiguation via legal name and business address.
25
+ - Entity name: DBA name if present (with legal name as the owner entity); otherwise the legal name.
26
+
27
+ ### `person`
28
+
29
+ A named individual who is the legal owner of a carrier operating under a DBA name.
30
+
31
+ - Only created when the carrier has a DBA name different from the legal name, and the legal name appears to be a person (not an organization).
32
+ - Entity resolver: named entity. No strong ID.
33
+
34
+ ### `location`
35
+
36
+ The business location of a carrier, derived from city, state, and country fields.
37
+
38
+ - Entity resolver: named entity. No strong ID.
39
+ - Entity name: formatted as "City, State" or "City, State, Country".
40
+
41
+ ---
42
+
43
+ ## Properties
44
+
45
+ ### Organization: Identity and Registration
46
+
47
+ * `usdot_number`
48
+ * Definition: USDOT number uniquely identifying the registered motor carrier, broker, or shipper.
49
+ * Examples: `1234567`, `3456789`
50
+ * Derivation: `dot_number` field from the Socrata API. Carriers with DOT number `00000000` or empty are treated as not having a DOT number.
51
+
52
+ * `dot_docket_number`
53
+ * Definition: FMCSA docket number (MC/FF/MX number) for the carrier's operating authority.
54
+ * Examples: `MC012892`, `MC599911`
55
+ * Derivation: `docket_number` field from the Socrata API.
56
+
57
+ ### Organization: Business Contact
58
+
59
+ * `address`
60
+ * Definition: Formatted business street address of the carrier.
61
+ * Examples: `1200 SEABOARD DR, HIALEAH, FL 33010`
62
+ * Derivation: Composed from `bus_street_po`, `bus_city`, `bus_state_code`, `bus_zip_code`, and `bus_ctry_code` fields, formatted as "Street, City, State Zip".
63
+
64
+ * `dot_phone_number`
65
+ * Definition: Primary business phone number of the carrier.
66
+ * Examples: `5551234567`
67
+ * Derivation: `bus_telno` field from the Socrata API.
68
+
69
+ ### Organization: Authority Status
70
+
71
+ * `dot_common_authority_status`
72
+ * Definition: Status of the carrier's common carrier authority.
73
+ * Examples: `A (Active)`, `I (Inactive)`, `N (None)`
74
+ * Derivation: `common_stat` field. Single-letter code expanded to include the human-readable label.
75
+
76
+ * `dot_contract_authority_status`
77
+ * Definition: Status of the carrier's contract carrier authority.
78
+ * Examples: `A (Active)`, `I (Inactive)`, `N (None)`
79
+ * Derivation: `contract_stat` field. Same code expansion as common authority.
80
+
81
+ * `dot_broker_authority_status`
82
+ * Definition: Status of the carrier's broker authority.
83
+ * Examples: `A (Active)`, `I (Inactive)`, `N (None)`
84
+ * Derivation: `broker_stat` field. Same code expansion as common authority.
85
+
86
+ * `dot_authority_type`
87
+ * Definition: Authority type flags indicating which categories the carrier is authorized for.
88
+ * Examples: `Property`, `Passenger`, `Household Goods`, `Property; Passenger`
89
+ * Derivation: Composed from five checkbox fields (`property_chk`, `passenger_chk`, `hhg_chk`, `private_auth_chk`, `enterprise_chk`). Values with `Y` are included, joined with `; `.
90
+
91
+ ### Organization: Insurance and Bonding
92
+
93
+ * `dot_min_coverage_amount`
94
+ * Definition: Minimum insurance coverage amount required, in thousands of dollars.
95
+ * Examples: `00750`, `05000`
96
+ * Derivation: `min_cov_amount` field. Values of `00000` are suppressed.
97
+
98
+ * `dot_cargo_insurance_required`
99
+ * Definition: Whether cargo insurance is required for this carrier.
100
+ * Examples: `1.0` (yes), `0.0` (no)
101
+ * Derivation: `cargo_req` field. `Y` → 1.0, `N` → 0.0. Other values are not emitted.
102
+ * Note: Stored as float per KG boolean convention.
103
+
104
+ * `dot_bond_required`
105
+ * Definition: Whether a surety bond is required for this carrier.
106
+ * Examples: `1.0` (yes), `0.0` (no)
107
+ * Derivation: `bond_req` field. `Y` → 1.0, `N` → 0.0. Other values are not emitted.
108
+ * Note: Stored as float per KG boolean convention.
109
+
110
+ * `dot_bipd_insurance_on_file`
111
+ * Definition: Bodily injury / property damage insurance filing amount on file.
112
+ * Examples: `01000`, `05000`
113
+ * Derivation: `bipd_file` field. Values of `00000` are suppressed.
114
+
115
+ ---
116
+
117
+ ## Entity Relationships Summary
118
+
119
+ ```
120
+ organization ──[is_located_at]──→ location
121
+ person ──[doing_business_as]──→ organization
122
+ organization ──[doing_business_as]──→ organization
123
+ ```
124
+
125
+ The `doing_business_as` relationship is created when a carrier's legal name differs from its DBA name. The legal entity (person or organization, determined by name heuristics) is the subject; the DBA organization is the target. The DBA organization is also the primary record subject carrying all authority properties.
126
+
127
+ The `is_located_at` relationship is created when both city and state are present. The target is a location entity named "City, State" (or "City, State, Country" if the country code is present).
128
+
129
+ ---
130
+
131
+ ## Source Fields Not Mapped
132
+
133
+ The following Socrata fields are present in the API response but not currently mapped to KG properties:
134
+
135
+ - `common_app_pend`, `contract_app_pend`, `broker_app_pend` -- application pending flags
136
+ - `common_rev_pend`, `contract_rev_pend`, `broker_rev_pend` -- revocation pending flags
137
+ - `cargo_file` -- cargo insurance filing amount
138
+ - `bond_file` -- bond filing amount
139
+
140
+ These were omitted as lower-priority. They could be added as future enhancements if needed for analysis.
@@ -0,0 +1,161 @@
1
+ # Dataset schema for FMCSA Carrier Authority (All With History).
2
+ #
3
+ # Source: https://data.transportation.gov/Trucking-and-Motorcoaches/Carrier-All-With-History/6eyk-hxee
4
+ # Bulk-refreshed periodically by FMCSA; no per-row timestamps.
5
+ #
6
+ # This schema describes motor carrier operating authority records including
7
+ # docket information, authority statuses, insurance requirements, and
8
+ # business contact information.
9
+ name: "dotauthority"
10
+ description: "FMCSA carrier operating authority data including docket numbers, authority statuses, insurance requirements, and business contact information from the Carrier All With History file"
11
+
12
+ extraction:
13
+ flavors: closed
14
+ properties: closed
15
+ relationships: closed
16
+ attributes: closed
17
+ events: closed
18
+
19
+ flavors:
20
+ - name: "organization"
21
+ description: "A particular business, institution, or organization such as a corporation, university, government agency, or non-profit"
22
+ display_name: "Organization"
23
+ mergeability: not_mergeable
24
+ strong_id_properties: ["usdot_number"]
25
+ passive: true
26
+
27
+ - name: "person"
28
+ description: "A named individual such as a business owner, executive, or public figure"
29
+ display_name: "Person"
30
+ mergeability: not_mergeable
31
+ passive: true
32
+
33
+ - name: "location"
34
+ description: "A specific named geographic location such as a city, country, region, or landmark"
35
+ display_name: "Location"
36
+ mergeability: not_mergeable
37
+ examples: ["New York City", "San Francisco", "North America", "Bakery Square"]
38
+ passive: true
39
+
40
+ properties:
41
+ - name: "usdot_number"
42
+ type: string
43
+ description: "USDOT number assigned by FMCSA, uniquely identifying a registered motor carrier, broker, or shipper"
44
+ display_name: "USDOT Number"
45
+ mergeability: not_mergeable
46
+ domain_flavors: ["organization"]
47
+ passive: true
48
+
49
+ - name: "dot_docket_number"
50
+ type: string
51
+ description: "FMCSA docket number (MC number) for operating authority"
52
+ display_name: "Docket Number"
53
+ mergeability: not_mergeable
54
+ domain_flavors: ["organization"]
55
+ examples: ["MC012892", "MC599911"]
56
+ passive: true
57
+
58
+ - name: "address"
59
+ type: string
60
+ description: "Physical street address of the entity"
61
+ display_name: "Address"
62
+ mergeability: not_mergeable
63
+ domain_flavors: ["organization"]
64
+ examples: ["1200 SEABOARD DR, HIALEAH, FL 33010"]
65
+ passive: true
66
+
67
+ - name: "dot_phone_number"
68
+ type: string
69
+ description: "Primary phone number of the carrier"
70
+ display_name: "Phone Number"
71
+ mergeability: not_mergeable
72
+ domain_flavors: ["organization"]
73
+ examples: ["5551234567"]
74
+ passive: true
75
+
76
+ - name: "dot_common_authority_status"
77
+ type: string
78
+ description: "Status of common carrier authority (A=Active, I=Inactive, N=None)"
79
+ display_name: "Common Authority Status"
80
+ mergeability: not_mergeable
81
+ domain_flavors: ["organization"]
82
+ examples: ["A (Active)", "I (Inactive)", "N (None)"]
83
+ passive: true
84
+
85
+ - name: "dot_contract_authority_status"
86
+ type: string
87
+ description: "Status of contract carrier authority (A=Active, I=Inactive, N=None)"
88
+ display_name: "Contract Authority Status"
89
+ mergeability: not_mergeable
90
+ domain_flavors: ["organization"]
91
+ examples: ["A (Active)", "I (Inactive)", "N (None)"]
92
+ passive: true
93
+
94
+ - name: "dot_broker_authority_status"
95
+ type: string
96
+ description: "Status of broker authority (A=Active, I=Inactive, N=None)"
97
+ display_name: "Broker Authority Status"
98
+ mergeability: not_mergeable
99
+ domain_flavors: ["organization"]
100
+ examples: ["A (Active)", "I (Inactive)", "N (None)"]
101
+ passive: true
102
+
103
+ - name: "dot_authority_type"
104
+ type: string
105
+ description: "Carrier authority type flags indicating property, passenger, household goods, private, or enterprise authorization"
106
+ display_name: "Authority Type"
107
+ mergeability: not_mergeable
108
+ domain_flavors: ["organization"]
109
+ examples: ["Property", "Passenger", "Household Goods", "Property; Passenger"]
110
+ passive: true
111
+
112
+ - name: "dot_min_coverage_amount"
113
+ type: string
114
+ description: "Minimum insurance coverage amount required (in thousands of dollars)"
115
+ display_name: "Minimum Coverage Amount"
116
+ mergeability: not_mergeable
117
+ domain_flavors: ["organization"]
118
+ examples: ["00750", "05000"]
119
+ passive: true
120
+
121
+ - name: "dot_cargo_insurance_required"
122
+ type: float
123
+ description: "Whether cargo insurance is required (1.0 = yes, 0.0 = no)"
124
+ display_name: "Cargo Insurance Required"
125
+ mergeability: not_mergeable
126
+ domain_flavors: ["organization"]
127
+ passive: true
128
+
129
+ - name: "dot_bond_required"
130
+ type: float
131
+ description: "Whether a surety bond is required (1.0 = yes, 0.0 = no)"
132
+ display_name: "Bond Required"
133
+ mergeability: not_mergeable
134
+ domain_flavors: ["organization"]
135
+ passive: true
136
+
137
+ - name: "dot_bipd_insurance_on_file"
138
+ type: string
139
+ description: "Bodily injury / property damage insurance filing amount"
140
+ display_name: "BIPD Insurance On File"
141
+ mergeability: not_mergeable
142
+ domain_flavors: ["organization"]
143
+ examples: ["01000", "05000"]
144
+ passive: true
145
+
146
+ relationships:
147
+ - name: "doing_business_as"
148
+ description: "A legal entity is doing business as (DBA) an organization"
149
+ display_name: "Doing Business As"
150
+ mergeability: not_mergeable
151
+ domain_flavors: ["person", "organization"]
152
+ target_flavors: ["organization"]
153
+ passive: true
154
+
155
+ - name: "is_located_at"
156
+ description: "An entity is located at, operates in, resides in, is headquartered in, was born in, visits, or died in a location"
157
+ display_name: "Located At"
158
+ mergeability: not_mergeable
159
+ domain_flavors: ["organization"]
160
+ target_flavors: ["location"]
161
+ passive: true