Schema Reference
Complete reference for all SFRS schema fields
Complete reference for the SFRS v0.1 JSON Schema.
| Field | Type | Required | Description |
|---|
sfrs | object | Yes | Schema version and metadata |
filing | object | Yes | Entity, period, and framework |
facts | object | Yes | All financial facts |
dimensions | object | No | Segment breakdowns |
notes | object | No | Footnote disclosures |
extensions | object | No | Pre-approved extensions |
{
"sfrs": {
"version": "0.1",
"generatedAt": "2025-03-15T14:30:00Z",
"generator": "Your Filing Tool v1.0",
"checksum": "sha256:a3f2b8c9..."
}
}
| Field | Type | Required | Description |
|---|
version | string | Yes | Must be "0.1" |
generatedAt | string | Yes | ISO 8601 timestamp |
generator | string | No | Software that created the filing |
checksum | string | No | SHA-256 hash of facts object |
{
"entity": {
"lei": "5493001KJTIIGC8Y1R12",
"name": "Acme Technology Corporation",
"jurisdiction": "US-DE",
"fiscalYearEnd": "--12-31",
"cik": "0001234567",
"ticker": "ACME",
"exchange": "XNAS"
}
}
| Field | Type | Required | Pattern | Description |
|---|
lei | string | Yes | ^[A-Z0-9]{20}$ | Legal Entity Identifier (ISO 17442) |
name | string | Yes | - | Legal entity name |
jurisdiction | string | Yes | ^[A-Z]{2}(-[A-Z0-9]{1,3})?$ | ISO 3166 country/subdivision |
fiscalYearEnd | string | No | ^--[0-9]{2}-[0-9]{2}$ | Month-day (e.g., --12-31) |
cik | string | No | ^[0-9]{10}$ | SEC Central Index Key |
ticker | string | No | ^[A-Z]{1,5}$ | Stock ticker symbol |
exchange | string | No | - | MIC code of primary exchange |
Either instant or duration is required:
// Instant (balance sheet date)
{ "period": { "instant": "2024-12-31" } }
// Duration (income statement period)
{
"period": {
"duration": {
"start": "2024-01-01",
"end": "2024-12-31"
}
}
}
{
"auditor": {
"name": "Big Four LLP",
"pcaobId": "1234",
"opinion": "unqualified",
"opinionDate": "2025-02-28"
}
}
| Field | Type | Description |
|---|
name | string | Audit firm name |
pcaobId | string | PCAOB registration number |
opinion | enum | unqualified, qualified, adverse, disclaimer |
opinionDate | string | Date of audit opinion (YYYY-MM-DD) |
Every fact has this structure:
{
"revenue": {
"value": 4850000000,
"unit": "USD",
"decimals": -6,
"confidence": "exact",
"source": "Note 2"
}
}
| Field | Type | Required | Description |
|---|
value | number/string/boolean/null | Yes | The fact value |
unit | string | No | ISO 4217 currency or unit |
decimals | integer | No | Precision (-10 to 10) |
periodOverride | object | No | Override filing period |
confidence | enum | No | exact, estimated, restated |
source | string | No | Reference to source |
| Value | Meaning | Example |
|---|
-6 | Millions | 4,850,000,000 shown as 4850 |
-3 | Thousands | 4,850,000 shown as 4850 |
0 | Whole numbers | Exact integer |
2 | Cents | 3.24 (two decimal places) |
{
"dimensions": {
"revenueBySegment": {
"axis": "segment",
"members": [
{
"name": "Cloud Services",
"facts": {
"revenue": { "value": 2180000000, "unit": "USD", "decimals": -6 }
}
}
]
}
}
}
| Field | Type | Required | Description |
|---|
axis | string | Yes | Dimension type (segment, geography, product) |
members | array | Yes | Array of dimension members |
members[].name | string | Yes | Member name |
members[].facts | object | Yes | Facts for this member |
{
"extensions": {
"cryptoAssetsHeld": {
"extensionApprovalId": "EXT-SEC-2025-000123",
"definition": "Digital assets held at fair value",
"parentConcept": "otherNoncurrentAssets",
"value": { "value": 50000000, "unit": "USD", "decimals": -6 }
}
}
}
| Field | Type | Required | Pattern | Description |
|---|
extensionApprovalId | string | Yes | ^EXT-[A-Z]{2,4}-[0-9]{4}-[0-9]{6}$ | Regulator approval ID |
definition | string | Yes | - | Human-readable definition |
parentConcept | string | No | - | Nearest standard SFRS concept |
value | object | Yes | - | The fact value |