GoFiler Legato Script Reference
Legato v 1.5b Application v 5.24b
|
Table of Contents | < < Previous | Next >> |
Chapter Twenty-one — EDGARView Integration (continued)
21.12 EDGAR Data Access Class (EDAC)
The EDGAR Data Access Class (EDAC) is designed to give direct access to EDGAR data fields for various forms and support modules. EDAC allows GFP, XML and EIS files to be opened directly, modified and saved without using the application user interface. In addition, a new form can be created and modified.
Because groups of EDGAR XML forms vary dramatically, various modules have been created to handle each type. For example, the Form ATS-N series contains a large number of yes/no and textual disclosure questions while the Form N-PORT series contains many tables with complex structure. Each of these modules has a separate and distinct XML schema with a wide variety of element names. As such, the XML schema type directly related to the internal file type (see Section 6.10 File Types for more information), when can be used to reference specific form type modules.
The EDAC has five main components: new, open, save, get and set. To start with, an EDAC Object must be created by either opening or create a new form. A handle is returned and is used in subsequent called to access the form.
To create a new form, the file type is used to dispatch to the correct module using the EDACCreateObject function. Once created, a handle is returned for later access. Open operates in a similar manner via the EDACOpenFile function except the XML content is read to determine the file type and then appropriately dispatched.
Once open, data can be accessed or modified using the EDACGetItem and EDACSetItem, respectively. It is important to note that except for field size, the EDAC does not validate the data set into the form. In many cases, invalid values will result in schema violations when the form is eventually submitted to the SEC. In addition, the contextual nature of certain fields is not checked. This may also result in schema violation errors and can lead to data not being saved. For example, if a descriptive field is dependent on a yes/no answer on a related field, the save function will not save the related textual data unless its corresponding element is set to the correct state.
The following table represents the supported forms groups (functionality will be expanded in future releases):
Group | File Support |
Basic Data Support |
Full Data Support |
Comment | ||||||
EDGAR XML | x | x | — | Covers general EDGAR forms. | ||||||
Form 13F-HR | x | x | — | Setup for GFP to XML only. form 13F-HR also has specific access functions to access the Info Table within an open view. | ||||||
Form 13H | x | x | — | Setup for GFP to XML only. | ||||||
Form 17A | x | x | — | Setup for GFP to XML only. | ||||||
Form 17H | x | x | — | Setup for GFP to XML only. | ||||||
Form 24F-2 | x | x | x | Complete form access. | ||||||
Form ATS-N | x | x | x | Complete form access. | ||||||
Form C | x | x | — | Setup for GFP to XML only. | ||||||
Form D† | x | x | — | Does not contain confirming copy information. EDAC operates only with XML files. | ||||||
Form MA | x | x | — | Setup for GFP to XML only. | ||||||
Form N-CEN | x | x | — | Setup for GFP to XML only. | ||||||
Form N-MFP† | x | x | — | Setup for GFP to XML only. | ||||||
Form N-PORT | x | x | x | Complete form access. | ||||||
Form SDR | x | x | — | Setup for GFP to XML only. | ||||||
Form TA | x | x | — | Setup for GFP to XML only. | ||||||
Regulation-A | x | x | — | Setup for GFP to XML only. | ||||||
Section 16 | x | p | — | Setup for GFP to XML only. |
† Non-project view.
There are four basic data types: string, ordinal value, integer and boolean. All are communicated via string data type requiring the caller to make appropriate adjustments.
Most strings have limits that are set by the specific field, as limited by the associated EDGAR XML schema. Ordinal values are translated to their respective schema selection. For example, if the schema allows the enumerated values N-1/A, N-2, etc., adding a value not in the schema will return an error from the EDACSetItem function.
Integer values are translated to decimal string values. These are not used very often.
Finally, boolean values are returned as “0” and “1”, false and true, respectively. They can be set in all forms allowed as in the IsTrue function. Any string not matching a true condition will set the value to false.
When writing a field that is part of a list or tables, the composite name will set the array or table depth. The depth is not adjusted during reading,
Fields on forms are by and large addressed by a name made up of the schema name, index and context. In addition, all forms allow for access of common EDGAR data via basic keywords. The keywords are as follows:
Name | Comment | |||
_ccc | Filer CCC. On all forms except Section 16. | |||
_cik | On all forms. For Section 16 this is the issuer CIK. | |||
_confirming_copy_file_number | On most forms. If allowed, the confirming copy flags will also be available. | |||
_confirming_copy_flag | On most forms. If allowed, the confirming copy file number will also be available. On some forms, this is referred to as a “temporary hardship.” | |||
_contact_email | On most forms. Note that many forms also have notification emails. | |||
_contact_name | On all forms. | |||
_contact_telphone | On all forms. | |||
_file_number | On some forms. In many cases, this is the same as the confirming copy file numbers. In many cases, this field is only used when the confirming copy flag is set. | |||
_form_type | On all forms. Note that changing the form outside the scope of the specific module is not allowed. Further, changing the form will not clear or adjust conflicting data. | |||
_live_flag | In most cases, this is LIVE or TEST, but with some modules it is boolean, true for live. | |||
_notify_via_website | On most forms. | |||
_period | On most forms. |
When accessing form specific fields, a specific name syntax is employed:
context[index]:element
or
context[index]:context[index]...:element
Where (not that the brackets do not indicate optional items):
element | is the base data named by the schema. |
context | is one or more optional contexts in which the element appears. |
index | is a zero-based value specifying an option element number in the context. |
For example:
txNMSStockATSName
part1Item7PrimarySite:zip
secondarySiteI7[001]:street1
The first is a direct reference while the section is a reference within a context. The last reference has a context referencing the second item in the list.
Certain functions will return ERROR_CONTEXT combined with a subcode. These are as follows:
SDK Define | Subcode | Description | ||||
EDAC_ERR_CON_NA | 0x1001 | Context Not allowed | ||||
EDAC_ERR_CON_CNT | 0x1002 | Incorrect number of contexts | ||||
EDAC_ERR_CON_ERR | 0x1003 | Incorrect/wrong Context | ||||
EDAC_ERR_CON_INVALID | 0x2001 | Invalid Condition | ||||
EDAC_ERR_PRIMARY_NAME_NOT_SUPPORTED | 0x2002 | Main Token Not Supported | ||||
EDAC_ERR_NAME_NOT_IN_SET | 0x2003 | Specified Name is Not in Data Set | ||||
EDAC_ERR_INVALID_ACCESS_POINT | 0x2004 | Specified Name Cannot be Accessed |
Table of Contents | < < Previous | Next >> |
© 2012-2024 Novaworks, LLC. All rights reserved worldwide. Unauthorized use, duplication or transmission prohibited by law. Portions of the software are protected by US Patents 10,095,672, 10,706,221 and 11,210,456. GoFiler™ and Legato™ are trademarks of Novaworks, LLC. EDGAR® is a federally registered trademark of the U.S. Securities and Exchange Commission. Novaworks is not affiliated with or approved by the U.S. Securities and Exchange Commission. All other trademarks are property of their respective owners. Use of the features specified in this language are subject to terms, conditions and limitations of the Software License Agreement.