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.