Open Database
The core tables of the database are:
- Submission: Information about a submission of reports (which may be filings)
- Report: A collection of business facts linked to filing and submission
- EDGAR extension: form type, standard schema(us-gaap, IFRS, RR)
- Filing:Metadata about a report(s) (filed with an agency or recorded in a filing system)
- China CAS/SASAC extension: File, approver, sponsor, license, industry and ticker
- EDGAR extension: Accession information, fiscal and filing period information, filer entity information, location and CIK, industry and ticker
- XDC extension: filing description
- User
- XDC extension: Name and details
- Document:A container of business facts and/or container of fact schema, metadata and semantic description. XML or OIM document.
- Element: Information about data elements used in a filing (schema elements).
- Fact: Information about each fact (Element, period, value, dimension combination)
- Aspect_value_set: Set of axis – member values of fact(s)
- Table_facts: Information about tables in the report a fact is used.
- Period: Context dates of fact(s)
- Unit: Context unit(s) of numerical fact(s)
The basic functionalities of these tables are:
- Filing/submission: Information about what and when they filed.
- Report: Link from the metadata aboutthe filing to the information inthe filing.
- Element: Description of fact.
- Period: Date/Time(s) of fact.
- Unit: Measurement unit of fact.
- Fact: Value reported and applicable period/unit/metadata.
- Aspect value set: Dimensional disaggregation details.
Each table which has a primary key contains a field named after the table suffixed by “_pk”. Primary keys that are described as Object IDs are allocated from a common sequence for all Object IDs because they may be shared as foreign keys common to several target objects. Foreign keys are suffixed by “_fk” and named and described by the object type(s) which are the source object(s).
Each table in the base schema can be extended in a domain-specific extension plugin. There are three domain-specific extensions at this time, each represented by tables which extend the underlying tables, and sub-classed loading code implemented by a domain-specific loader in plugin named ext/{domain extension plugin}. The {domain extension plugin} handles reference and loading of the underlying common plugin. Current domain extension plugins are:
- China extension: metadata about filings for CAS (MOF) and SASAC filings.
- EDGAR extension: metadata about filings for SEC EDGAR.
- XDC extension: metadata bout user, portal and submission for XDC.
The tables in the extensions are named {core-name}_{extension_suffix} when they subclass a core table by adding fields, using the same primary key for each record of extension fields. They are named {extension_suffix}_{table name} when they contribute a new table or materialized view. Materialized views are described in the same manner as tables.
In the extension table diagrams, the only core tables represented are those necessary to show which core tables are extended (using UML inheritance symbol) and which are new tables to the extension.
The extension tables for China filings for CAS (MOF) and SASAC are:
The extension tables for EDGAR filings are:
The extension tables for XDC are:
A complete list of tables and columns is:
Table | Column | Description |
arcrole_type | The arcrole_type table represents an XBRL taxonomy arcrole type (referenced by relationships and OIM footnote groups). | |
arcrole_type_pk | Object ID of arcrole type definition (within a schema document) | |
document_fk | Object ID of schema document defining this arcrole type | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
arcrole_uri | Arcrole URI for this arcrole type definition. | |
cycles_allowed | Arcrole definition cycles allowed (any, undirected or none) | |
definition | Arcrole type definition string value (human-readable meaning) | |
aspect_value_set | An aspect-value set is a collection of dimensional aspect values which contextually define one or more facts. Each aspect value represents an axis (dimension). If the dimension is explicit, the aspect value is a foreign key of the domain member element. If the dimension is typed, the aspect value is represented lexically as string. Defaulted dimensional aspect values (explicit dimensions) are absent. | |
aspect_value_set_fk | Object ID shared by a fact’s aspect_value_report_set and its aspect_value_sets. | |
aspect_element_fk | Object ID of the element defining an aspect value selection (corresponds to XBRL dimension element) | |
aspect_value_fk | Object ID of the aspect defining enumerative value selected (corresponds to XBRL domain or member element) | |
is_typed_value | True if the aspect value selection is a typed value (and then string value of typed member is provided) or false if an enumerated aspect selection (corresponding to an XBRL explicit dimension). | |
typed_value | String value of typed dimension member (inner text of the dimension element) | |
aspect_value_ report_set |
An aspect value report set is a collection of aspect value sets (axis-member combinations) which are defined in a report (e.g., instance document) and for which there may be facts which reference the set of aspect values by aspect_value_set_pk. | |
aspect_value_set_pk | Object ID shared by a fact’s aspect_value_report_set and its aspect_value_sets. (Note that aspect_values may be shared by multiple aspect_value_sets of multiple facts in possibly multiple reports) | |
report_fk | Object ID of a report owning a set of aspect value selections | |
data_type | A data type represents an XBRL Taxonomy or XML schema element data type definition. There is a data type definition for each fact element in a taxonomy, as well as for each dimensional axis element, domain member element, typed member element, and each XBRL infrastructural element. | |
data_type_pk | Obejct ID of data type defintion | |
document_fk | Object ID of schema document defining this data type | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
qname | QName of the type definition (Clark notation, e.g., ‘{namespaceURI}localName’) | |
name | Local name of the type definition | |
base_type | Name of XML base type | |
derived_from_type_fk | Object ID of data_type that this type is derived form. | |
length | Facet length | |
max_length | Facet max_length | |
min_length | Facet min_length | |
pattern | Facet pattern | |
document | Represents a container of business facts and/or container of fact schema, metadata and semantic description. May represent a file or OIM object of a filing, such as an instance document file or OIM instance, an XML document (schema, linkbase, data file, testcase or versioning report) or an attachment file (image or other). Models files related to instance and taxonomy. Extension may model additional types of documents. | |
document_pk | Object ID of the document | |
url | Document URL (may be a website URL, or if loaded from within a web-resident archive file, then the URL of the archive file concatenated to path within the archive file) | |
type | Selection of: ‘schema’, ‘linkbase’, ‘instance’, ‘inline XBRL document set’, ‘versioning report’, ‘unknown XML’, ‘unknown non-XML’ | |
namespace | Target namespace URI of a document for a schema document, else null. | |
element | Represents a definition of an element in an XBRL taxonomy or related schema, including concept element, reference part element, typed dimension member element and elements which might be used in data files (such as accessed by XBRL formula). Provides a description of fact elements. | |
element_pk | Object ID of element definition (an abstract model class, usually corresponds to a XBRL concept or other element definition). May have instances of values (such as facts or aspect value set typed values) if not abstract. | |
document_fk | Object ID of schema document defining this element | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
qname | QName of the aspect definition (Clark notation, e.g., ‘{namespaceURI}localName’) | |
name | Local name of the element definition (such as a concept element or typed dimension element) | |
datatype_fk | Object ID of type definition of an element (e.g., element type definition) | |
base_type | Nice version of element type, e.g., Table, Axis, typename without ItemType, or custom name, such as String or Monetary | |
substitution_group_aspect_fk | An aspect declaration substitution group reference to another aspect | |
parent_element_fk | Object ID of parent element (tuple) (not used) | |
balance | Balance type of the aspect (concept element). (debit, credit, or null) | |
period_type | The period type of the aspect. May be instant (values are reported at a point in time) or duration (values are reported over a period of time). | |
abstract | True if the aspect (or any XML element) is defined as abstract (can not have data point or typed dimension value). | |
nillable | True if the element can have a nil value. | |
is_numeric | True if the element is defined as a numeric data type. | |
is_monetary | True if the element is defined as a monetary item type. | |
is_text_block | True if the element is defined as a text block data type. | |
entity_identif-ier | This object represents the entity identifier aspect of an XBRL instance fact. | |
entity_identifier_pk | Object ID of the entity identifier aspect value of a fact | |
report_fk | Object ID of the report owning this entity aspect value | |
scheme | Data point entity aspect value (schema attribute URI value) | |
identifier | Data point entity aspect value (identifier string value) | |
enumeration | The enumeration object supplements a type definition object with an enumeration facet value. If there are multiple choices of enumeration values that is represented by multiple values. This database represents the value lexically. | |
data_type_fk | Object ID of type definition of an element (e.g., element type definition) | |
document_fk | Object ID of schema document defining this data_type | |
value | Value of enumeration choice | |
fact | Information about an XBRL instance fact (item or tuple). If the fact is parented in a tuple that is represented by the tuple_fact_fk of the parent fact. Aspects of the fact are represented by non-NULL foreign keys to entity_identifier, period, unit, and aspect_value_set. | |
fact_pk | Object ID of the fact | |
report_fk | Object ID of a report owning this fact | |
document_fk | Object ID of the instance or inline XBRL document containing this fact | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme ID of source XML element (ID, ID/1/2/3 or /1/2/3 notation in instance document or instance XML element derived from inline HTML) | |
source_line | Line number in instance document or inline HTML file containing this fact | |
tuple_fact_fk | For structured data points, the fact_pok of parent (corresponds to XBRL tuple containing this fact). | |
element_fk | Object ID of the element defining the data point (corresponds to XBRL concept element for the fact) | |
context_xml_id | XML element scheme ID of context XML element (almost always an ID, may be a very long id giving filer’s meaning to context) | |
entity_identifier_fk | Object ID of the entity aspect value of a fact | |
period_fk | Object ID of the period aspect value for facts that have period | |
aspect_value_set_fk | Object ID shared by a fact’s aspect_value_selection_set and its aspect_value_selections (corresponds to XBRL non-defaulted dimensions) | |
unit_fk | Object ID of the unit aspect for data points that represent numeric facts | |
is_nil | True if the value of the financial reporting fact is nil. | |
precision_value | Precision if reported for a fact (number of significant digits or INF, corresponds to significant digits in scientific number format, e.g., 3 for pi=3.14E0) | |
decimals_value | Data point precision expressed as rounded significant decimals digits (e.g., 2 = round at hundreths, -3 = round at thousands) | |
effective_value | The value of the financial reporting fact. May be a number or text. | |
language | Language of fact (if any and relevant to data type) | |
normalized_value | Post-validation string value of the fact | |
value | String value of the fact that is a fact item | |
filing | Represents metadata about a single or set of business reports filed with an agecy or recorded in a filing system. May be re-delivered (revised/amended) multiple times. | |
filing_pk | Object ID of the filing | |
filer_id | Legal Entity Identifier or authority-specific filer key | |
filing_edgar | EDGAR filing table extension fields. Represent a SEC accession and filing metadata. | |
filing_pk | Object ID of the filing | |
accession_number | SEC’s accession number of a filing | |
filing_date | The date the filing was accepted by the SEC. | |
authority_html_url | Entry point document URL of a filing (usually the XBRL instance document URL) (useful to paste into Arelle to open up the instance) | |
entry_url | A filing’s primary instance document URL, when publicly available. (From RSS feed, may not be the same as the entry document document_url, which could be within an archive file). | |
entity_ name | The name of the filer submitting the filing to SEC | |
zip_url | URL on SEC.gov for the zip of XBRL filing documents. | |
fiscal_year | Fiscal year of filing | |
fiscal_period | Period within the fiscal year | |
restatement_index | Indicator of re-filing of same report to determine most current. | |
period_index | ||
fiscal_year_end | Day-month of end of fiscal year | |
file_number | SEC file number of report | |
cik | Central Index Key (SEC unique identifier for filer) | |
tax_number | Tax authority number for filer | |
standard_industry_code | Standard industrial classification code provided with the filing when submitted to the regulatory authority | |
filer_category | ||
public_float | ||
trading_symbol | Stock ticker symbol | |
legal_state | State where incorporated | |
phone | Contact phone | |
phys_addr1 | Physical address | |
phys_addr2 | ||
phys_city | ||
phys_state | ||
phys_zip | ||
phys_country | ||
mail_addr1 | Mailing address | |
mail_addr2 | ||
mail_city | ||
mail_state | ||
mail_zip | ||
mail_country | ||
filing_xdc | XDC extension of filing. Provides id and details metadata of a filed report. | |
filing_pk | Object ID of the filing | |
filing_id | XDC id for the filing | |
details | Narrative description of the filing | |
footnote | A footnote object represents an OIM-styled footnote, in addition to ordinary relationship and resource objects which represent XBRL instance footnote relationships and resources. The footnote may be a text footnote, which has a normalized and as-submitted lexical value, or a fact-explanatory-fact relationship to the fact identified by footnote_value_fk. If a text footnote contains html or other xml elements, they are serialized (with xhtml being the default namespace and no xmlns for the default namespace within the serialized text). | |
fact_fk | Object ID of the fact owning this footnote (based on OIM) | |
footnote_group | Footnote link arc role URI | |
type | Footnote resource role URI | |
footnote_value_fk | Object ID of the target fact of this footnote for fact-explanatory-fact footnotes (Null for text footnotes) | |
language | Language code for text footnotes | |
normalized_string_value | Normalized string value | |
value | String value | |
message | The database may be loaded by a process which validates captures warning and error messages. In that case this object represents a message occurring during validation. The message is represented by a code (as specified by standard or according to section of defining document), severity and text string value. If validation noted related objects that the message pertains to they are represented by message reference foreign keys (such as to fact, element or relationship objects). | |
message_pk | Database sequence ID of this message | |
report_fk | Object ID of the report that this message pertains to (message refers to objects noted in validating this report) | |
sequence_in_report | Sequence of message when detected in validation of this report | |
message_code | Message code reported by message, such as XBRL-assigned qname or EFM paragraph section | |
message_level | Severity level of a message (WARNING, INCONSISTENCY, ERROR, or for SEC also WARNING-SEMANTIC and ERROR-SEMANTIC) | |
value | String message text of the message as reported by logging system | |
message_ref-erence | A message reference joining a message to pertaining objects the error/warning relates to. | |
message_fk | Database sequence ID of the message that this reference is for | |
object_fk | Object ID for a referenced object of the message (e.g., datapoint_id, aspect_id, relationship_id) | |
period | Represents a period aspect of fact(s). | |
period_pk | Object ID of the period aspect value | |
report_fk | Object ID of the report owning this period aspect value | |
start_date | The starting date of a duration period type. (Null for an instant or forever period.) | |
end_date | The ending date of a duration period type or the instant date of an instant period type. If the date was reported without time, this is the date after the reported date, e.g. a period Jan 1 – Dec 31, the Dec 31 ending date is at 24:00 hrs, so the end date value is Jan 1 00 hrs. (Per XBRL-US database convention.) Null for a forever period. | |
is_instant | True if a period is an instant period. (The instant date is in the end_date column, see note under end_date about 24:00 hrs issue.) | |
is_forever | True if a period is a forever period. (Start_date and end_date are null in this case.) | |
reference_part | Represents a reference part element of an XBRL reference resource. The reference part is represented by its string value (mixed content is not serialized). | |
resource_pk | Object ID of the resource | |
document_fk | Object ID of the document bearing this resource (for footnote, an instance or inline HTML document, for DTS resource, a linkbase document or schema document embedding a linkbase) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
element_fk | Object ID of the element defining the reference part | |
value | String value of element | |
referenced_ documents |
Used to join an object to documents which relate to the object. Source object may be a filing, document or extension object. | |
object_fk | Object ID of the source of a document reference (e.g., filing, document) | |
document_fk | Object ID of the target document of this reference | |
relationship | Represents an effective XBRL relationship after linkbase and arcs are compiled to consider prohibition, override, and priority. From and to foreign keys represent source and target objects, which for concept relationships can be element objects, for label/reference linkbases target objects are resource objects and for generic relationships may be any XML-sourced object (such as fact or schema component). | |
relationship_pk | Object ID of a relationship | |
document_fk | Object ID of the document containing the arc of this relationship (e.g., linkbase, instance or inline XBRL defining a footnote arc) | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
relationship_set_fk | Object ID of a relationship set | |
reln_order | Order attribute of a relationship (within it’s relationship set) | |
from_fk | Object ID of the source of the relationship (e.g., element for a concept source, resource for a table or formula linkbase, or fact for a footnote). May be NULL for an incomplete relationship. | |
to_fk | Object ID of the target of the relationship (e.g., element for a concept target, resource for a label, or fact for a fact-explanatory-fact footnote). May be NULL for an incomplete relationship. | |
calculation_weight | Weight the calculation relationship (e.g., 1, -1, or null) | |
tree_sequence | Sequence from start of relationship in depth first tree walk | |
tree_depth | Depth in relationship tree (1 is top) | |
preferred_label_role | Label URI role on a presentation relationship or generic-preferred role if used | |
relationship_ set |
Represents a compilation of effective relationships according to document owner, arc and link qnames, arc and link roles. May have root object(s) and relationship objects. | |
relationship_set_pk | Object ID of a relationship set | |
document_fk | For instance (footnote) relationships the object ID of the instance document or first inline XBRL document, for DTS relationships, the object ID of the outermost discovery document bearing linkbases, e.g., for an SEC extension taxonomy the instance document, but for a DPM instance, the highest referenced document under which linkbases are defined (e.g., the DPM framework model document). | |
arc_qname | Relationship set’s arc element QName (Clark notation) | |
link_qname | Relationship set’s extended link element QName (Clark notation) | |
arc_role | Relationship set’s arc element arcrole URIs | |
link_role | Relationship set’s link role URI | |
report | Represents an XBRL business report (collection of business facts lnked to filing and submission). May have an instance document and may have an entry-point taxonomy document. May own reported fact objects, footnote objects, defined data types and relationship sets. Links metadata about the filing to information in the filing. | |
report_pk | Object ID of the report (primary key) | |
submission_fk | Submission ID of the submission | |
filing_fk | Object ID of the filing | |
report_id | Authority-specific identifier for the report | |
is_most_current | True for most current of reports for the filing | |
creation_software | Software product creating report (from instance document comments) | |
report_data_doc_fk | Object ID of document containing report facts | |
report_schema_doc_fk | Object ID of entry point document for report | |
report_edgar | EDGAR report table extension fields. Represent an SEC form type and references agency and standard schemas of the instance document. | |
report_pk | Object ID of the report (primary key) | |
form_type | Form type (e.g., 10-K) | |
first_5_comments | XML comments from instance document | |
agency_schema_doc_fk | Object ID of authority schema document | |
standard_schema_doc_fk | Object ID of standard schema (e.g., us-gaap or IFRS) | |
resource | Represents and XBRL resource element. May be a label (which has language), resource (no language but may have reference parts), footnote (also represented by OIM-style fact footnote object) or any other use of XBRL resource element. | |
resource_pk | Object ID of the resource | |
document_fk | Object ID of the document bearing this resource (for footnote, an instance or inline HTML document, for DTS resource, a linkbase document or schema document embedding a linkbase) | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
qname | QName of the resource element (Clark notation) | |
role | Role URI of the resource | |
value | String value of resource (e.g., a label or footnote) | |
xml_lang | xml:lang attribute of resource | |
role_type | The role_type table represents an XBRL taxonomy role type (referenced by relationships and OIM footnote groups). | |
role_type_pk | Object ID of the role type definition | |
document_fk | Object ID of the schema document defining the role type | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
role_uri | Role URI of the role type definition | |
definition | Role type definition string value (human-readable meaning) | |
root | Represents the root relationship(s) of a relationship set’s effective relationships. | |
relationship_set_fk | Object ID of a relationship set | |
relationship_fk | Object ID of a relationship that is a root in a tree structure | |
submission | Represents submission (acceptance) of a business reports, which may be filings (including original, subsequent re-filing and revised filings). | |
submission_pk | Primary key of submission. | |
accepted_timestamp | Time stamp when receiving authority accepted submission | |
loaded_timestamp | Time stamp when loaded into database | |
table_facts | May be provided to group facts of an instance according to applicable arcrole or table definition, such as according to financial report schedule, details and notes. | |
report_fk | Object ID of the report owning data points of this table | |
object_fk | Object ID of a table owner (e.g., a role type definition for SEC, a table aspect for DPM) | |
table_code | A table code (financial statement face code, such as BS, IS, or table filing indicator code for DPM, such as 20.5a) | |
fact_fk | Object ID of the fact that is in this table of data points | |
unit | Represents a unit aspect of fact(s). The measures hash may be used for quick identification of units which have the same measures. Measures are represented by unit_measure objects which have the same unit primary key as their unit object. | |
unit_pk | Object ID of the unit | |
report_fk | Object ID of the report owning unit aspect value | |
xml_id | XML element ID (if any) | |
xml_child_seq | XML element scheme of the source XML element (ID/1/2/3 or /1/2/3 notation) | |
measures_hash | A hash code of the measures of this unit, for quick comparison of units that have same-valued measures | |
unit_measure | Represents a measure element of a unit aspect. | |
unit_pk | Object ID of the unit having this measure | |
qname | QName of the measure (Clark notation) | |
is_multiplicand | True if the unit measure is a multiplicand, false if a divisor measure. | |
used_on | Represents definition of which elements an arcrole or role type may be used on. | |
object_fk | Object ID of the used on owner (e.g., role_type_id, arc_role_type_id) | |
element_fk | Object ID of the element that role/arcrole type can be used on. |