Methodology Registry
This page describes the current derivation, source posture, and capability states for the major v3 surfaces that changed the public contract.Market schedule
What the values mean
market: exchange MIC or OMNI market code such asXNYSorXNASsessionStatus: the current implementation returnsopenorclosed; the public schema reservesearly_closefor future explicit shortened-session supportopensAtandclosesAt: local-session timestamps for open sessionsholidayName: configured exchange holiday when the day is closed for a known holidaycoverage:configured_holidaysorweekend_onlyconfidence:confirmedortentativestatusNote: explicit warning when OMNI only has weekend coverage and has not yet configured local holidays
How it is derived
XNYSandXNASare built from public exchange trading-hours calendars plus explicit holiday maps checked into DatastreamXLON,XTKS,XHKG,XTAE, andXSAUcurrently use documented public hours plus weekend closures only- the inventory artifacts are exported from those checked-in market definitions, not fetched from a separate sync system at read time
First-party status
- first-party public-source utility, but only
XNYSandXNASare fully holiday-configured today - the other covered exchanges remain partial and intentionally return
weekend_onlyplustentativewhen OMNI cannot confirm holiday status
How it works in OMNI
- Datastream serves
/v1/market/calendar - omni-apps can rely on the
coverage,confidence, andstatusNotefields instead of assuming every market is fully holiday-aware
Indices and constituents
What the values mean
- status field:
supportedorinventory_only rightsStatus:public_source_documented,public_source_review_required, orlicensed_index_not_supportedlegalShareability:public_source_table,public_source_review_required, orlicense_requiredconstituentCount: current known roster size when OMNI has a usable sourcepositionRank: roster order when weights are unavailableweightBpsandweightMethod: explicit when published, otherwise null andunpublished
How it is derived
NDXcomes from Nasdaq’s public company roster and is the only rights-safe public constituent surface todaySPX,DJIA,RUT,UKX, andSX5Eare tracked in the source inventory with explicit rights posture- internal company-mapping audit artifacts currently use:
- Nasdaq public roster for
NDX - Wikipedia constituent tables for
SPXandDJIA - iShares IWM holdings as an internal Russell 2000 proxy corpus for mapping QA
- Nasdaq public roster for
First-party status
NDXpublic constituent export is first-party and documentedSPX,DJIA, andRUTare not publicly exposed as constituent APIs today- internal mapping QA is intentionally decoupled from public shareability
How it works in OMNI
- Datastream serves
/v1/market/indicesand/v1/market/indices/constituents - the current company-mapping audit artifact lives at
ops/company-mapping-audit/latest.json - FIGI-family lookup inputs are accepted in
/v1/entities/resolve, and the audit surface now coversSPX,NDX,DJIA, andRUT; canonical-store completeness should still be read from the current audit artifact rather than assumed
Segmented revenues
What the values mean
segmentAxis,segmentMember,segmentLabel: XBRL dimension identity and human-readable labelsegmentType:geographic,product, orothercapability:supportedornot_disclosedtrace: lightweight filing-derived trace reference for later hydration
How it is derived
- OMNI scans issuer filing history, finds the XBRL instance for 10-K and 10-Q filings, and extracts segment facts from the disclosed XBRL contexts and members
- traces now hydrate to filing-page anchors through
/v1/tracesand/v1/traces/{trace_id}
First-party status
- first-party SEC-derived surface
- page anchors are now materialized lazily during trace hydration rather than precomputed at ingest time
How it works in OMNI
- Datastream serves
/v1/statements/segmented-revenues - omni-apps revenue-segmentation flows now point at Datastream-backed SEC routes instead of the prior MASSIVE/FMP path
M&A events
What the values mean
eventType:merger,acquisition,tender_offer, ordivestiture- status field:
announced,pending,shareholder_vote,completed, orterminated considerationType:cash,stock,mixed, orunspecifiedcapability: explicit quality state for the extracted record
How it is derived
- OMNI classifies 8-K, S-4, F-4, 425, M14A, and tender-offer filing text plus selected exhibits
- the current implementation is heuristic and filing-text driven, not a fully persisted event graph yet
First-party status
- first-party SEC-derived surface
- suitable for announced public-company deal intelligence, but still needs broader corpus proof before launch copy can overstate completeness
How it works in OMNI
- Datastream serves
/v1/events/ma - downstream product usage is still early; the endpoint exists before the omni-apps UX is fully wired
Earnings materials
What the values mean
sourceScope: alwayssec_furnishedcoverage:release_only,prepared_remarks,transcript_text, orunusablecapability: explicit quality state for the extracted materialcontentMd: normalized markdown when usable content exists
How it is derived
- OMNI scans 8-K and 8-K/A filings for Item 2.02 and related exhibits
- the extraction classifies whether the issuer furnished only a release, prepared remarks, fuller transcript-like text, or unusable material
First-party status
- first-party SEC-derived surface
- OMNI does not yet claim full earnings-transcript coverage outside SEC-furnished materials
How it works in OMNI
- Datastream serves
/v1/earnings/transcripts - omni-apps now has Datastream-backed earnings-material client paths, but broader transcript parity remains deferred
Enforcement actions
What the values mean
sourceType:litigation_releaseoradministrative_proceedingreleaseNumber: SEC release identifier from the official feed, such asLR-26502or34-104994capability:supportedwhen Datastream can enrich a release beyond feed metadata, otherwisedegradeddocumentUrl: canonical SEC release or PDF link
How it is derived
- OMNI reads the official SEC RSS feeds for litigation releases and administrative proceedings
- litigation releases are enriched from the linked SEC detail page when available
- administrative proceedings currently rely on SEC RSS metadata plus the published PDF link rather than PDF body extraction
First-party status
- first-party SEC-derived release surface
- this is an official SEC enforcement feed wrapper, not an EDGAR filing parser and not a third-party alert vendor dependency
How it works in OMNI
- Datastream serves
/v1/events/enforcement - omni-apps does not currently expose a dedicated enforcement UI, but the Datastream surface is now live as a direct contract for future alert and investigation flows
Filing traceability
What the values mean
- status field:
supportedwhen OMNI can materialize a filing page, otherwisedegraded viewerUrl: SEC inline viewer URL for the filing documentpage: resolved filing page when availablenodes: disclosed and derived lineage nodes for the traced datapoint
How it is derived
- trace IDs encode filing-derived payload metadata
- Datastream resolves the filing document, inspects SEC inline XBRL HTML, matches the fact against its context and nearby text, then maps that hit to the nearest filing page footer
First-party status
- first-party SEC-derived traceability
- current implementation is lazy hydration, not yet ingest-time precomputation or region-level highlighting
How it works in OMNI
- Datastream serves
/v1/tracesand/v1/traces/{trace_id} - omni-apps SEC workflows now hydrate traces and open filing pages directly from the SEC tab
Share float
What the values mean
capability:supported,degraded,not_disclosed, orunavailablesourceMode:company_factswhen SEC company facts expose public float,shares_outstanding_proxywhen only shares outstanding are available,not_disclosedwhen the latest covered filing exists but the facts are absent, andunavailablewhen there is no recent covered filingpublicFloatUsd: disclosed public-float dollar value from SEC company facts when availablesharesOutstanding: latest disclosed shares-outstanding fact from SEC company factsxbrlData: raw tag-to-value map for the disclosed facts used in the responsefacts: normalized fact excerpts with taxonomy, tag, unit, period end, filing date, and form
How it is derived
- first preference:
dei:EntityPublicFloat - shares-outstanding fallback:
dei:EntityCommonStockSharesOutstandingandus-gaap:CommonStockSharesOutstanding - current-filing posture comes from the latest covered
10-Qor10-K - Datastream marks the response
degradedwhen only shares outstanding are available because the SEC company-facts surface often does not expose true float shares directly
First-party status
- first-party wrapper over SEC company facts and the latest filing substrate
- honest degraded-state semantics are part of the contract; OMNI does not pretend shares outstanding are the same thing as true float shares
How it works in OMNI
- Datastream serves
/v1/statements/share-float - omni-apps, agent-backend, and Merlin can cut over from legacy float helpers to this wrapper without re-implementing fact-tag precedence
Board composition
What the values mean
capability:supported,degraded, orunavailablecommitteeCoverage:complete,partial, ornonedirectors[*].nominationStatus: whether the latest proxy table presents the director as anominee,continuing,departing, orunknowndirectors[*].independence:independent,non_independent, orunknownbased on explicit proxy markersdirectors[*].committeesandchairCommittees: canonical committee labels extracted from the latest stable proxy table shape
How it is derived
- Datastream resolves the issuer, searches recent
DEF 14Afilings, and scans the latest parsable definitive proxy for a stable board-composition table - the parser prefers tables with director-roster, committee-membership, independence, and tenure signals and rejects compensation-style tables
- the response explicitly degrades when Datastream can parse the board roster but committee coverage is incomplete in the latest stable table shape
First-party status
- first-party SEC-derived surface built directly on the definitive proxy substrate
- OMNI is intentionally conservative here: if the filing does not expose a stable board table, the response degrades or returns
unavailableinstead of fabricating governance structure
How it works in OMNI
- Datastream serves
/v1/board - omni-apps can replace the legacy
/api/sec/board/{ticker}compatibility surface with this latest-proxy board roster
N-PORT holdings
What the values mean
capability:supported,degraded, orunavailableholdings[*].balance: reported position amount from the filingholdings[*].balanceUnit: explicit SEC filing unit such asSharesorPrincipal amountholdings[*].valueUsd: reported U.S. dollar value from the filingholdings[*].pctNetAssets: reported percentage of fund net assets for the holdingassetType,issuerType,country, andcurrency: normalized values lifted from the transformed N-PORT filing sections
How it is derived
- Datastream resolves the fund, searches recent
NPORT-PandNPORT-EXfilings, and parses the latest transformed SEC filing output that yields a stable holdings roster - the parser extracts repeated
Item C.1holding blocks and normalizes issuer, identifier, amount, value, asset-type, issuer-type, country, and currency fields - the response explicitly degrades when Datastream finds holdings but one or more rows are missing stable title or value fields in the transformed filing output
First-party status
- first-party SEC-derived holdings surface over the published N-PORT filing output
- OMNI keeps the contract honest by preserving balance units instead of pretending every reported amount is a share count
How it works in OMNI
- Datastream serves
/v1/funds/nport/holdings - omni-apps, agent-backend, and Merlin can now replace the prior blocked N-PORT holdings path with a direct Datastream surface
Historical institutional ownership extract
What the values mean
yearandquarter: requested quarter reference for the historical extractreportDate: quarter-end date used to resolve the 13F cohortcomparisonCoverage:with_prior_quarter_deltawhen Datastream can also resolve the immediately preceding parsable 13F, otherwisecurrent_onlystatusNote: explicit explanation when the current quarter is available but prior-quarter deltas could not be populated from the current SEC-backed search windowholdings: normalized 13F rows with issuer mapping, value, shares,weightBps,positionRank, and change fields
How it is derived
- Datastream resolves the requested manager CIK, computes the target quarter-end
reportDate, and searches the SEC-native 13F family with elevated submissions-file depth rather than the shallow recent-only path - the current quarter is parsed from the matching 13F information table exhibit
- when available, the immediately prior parsable quarter is loaded as well so
changeStatus,previous*, anddelta*fields can be computed on the normalized holdings
First-party status
- first-party SEC-derived surface over the existing 13F family
- explicit
current_onlysemantics are part of the contract so OMNI does not fabricate quarter-over-quarter deltas when the prior parsable quarter is absent
How it works in OMNI
- Datastream serves
/v1/owners/institutional/extract - omni-apps and Merlin can use this as the direct Datastream replacement for the historical institutional ownership extract path without depending on FMP
Risk-category labeling
What the values mean
capability:supported,degraded, orunavailablecategoryCount: number of stable risk categories that matched the current deterministic taxonomycategories[*].key: normalized theme key such ascybersecurity_privacyorregulatory_legalconfidence: deterministic confidence derived from keyword density and supporting-signal breadthsignals: matched keywords that explain why the category firedsnippets: supporting Item 1A excerpts for the assigned category
How it is derived
- Datastream extracts the latest covered Item 1A risk-factor section using the same section substrate that powers
/v1/filings/latest/sections/item_1a - the classifier then assigns deterministic categories based on a transparent keyword taxonomy over the extracted Item 1A prose
- the response degrades explicitly when extraction succeeds but too few stable categories match the taxonomy
First-party status
- first-party SEC-derived wrapper over the Item 1A section substrate
- this is intentionally deterministic and transparent; OMNI is not using a hidden model or undisclosed category taxonomy here
How it works in OMNI
- Datastream serves
/v1/filings/latest/risk-categories - omni-apps and agent-backend can now replace the prior MASSIVE risk-category workflow with a native Datastream surface
Volatility score
What the values mean
score: 0-100 aggregate scoreband:low,moderate,elevated, orhighconfidence:high,medium, orlowfactors: weighted factor breakdown with explanationsfreshness: explicit freshness state and degradation reason
How it is derived
- recent disclosure intensity from high-signal filings
- insider imbalance from recent Forms 4 and 5
- risk-factor intensity from Item 1A extraction
- filing recency as a proxy for how current the disclosure set is
First-party status
- first-party derived utility built from first-party SEC inputs
- methodology versioning and degraded reasons are part of the public response
How it works in OMNI
- Datastream serves
/v1/signals/volatility - omni-apps can treat it as a derived, provenance-first signal rather than a raw market feed
Sentiment score
Current posture
- there is no
/v1/signals/sentimentendpoint in the 3.0 public surface today - OMNI intentionally keeps sentiment behind a methodology gate until backtests, stale-input handling, and public explanations meet the launch bar
Where to look
- docs posture:
apps/docs/content/sentiment-gate.md - ops artifact:
ops/sentiment-gate/latest.json