The Sep 2012 CTP release of Gepsio is now available! Download the latest binary from the project’s Download page.
Here’s a peek at the newest enhancements to the latest build of Gepsio:
Role types found in schemas are now available from within Gepsio. The XbrlSchema class now contains a property called RoleTypes. This property is a collection of objects of a new class called RoleType. Objects of the RoleType class expose any role types defined in the schema.
HTTP-Based Schema Linkbase References
Gepsio now supports HTTP-based schema linkbase references. Previous releases assumed that all schema linkbase references were based on local filesystem paths.
The CalculationLink class contains a new property called Linkbase, which references the LinkbaseDocument object containing the calculation link.
The LinkbaseDocument class contains a new property called Schema, which references the XbrlSchema class referencing the linkbase document.
The SummationConcept class contains a new property called Link, which references the CalculationLink object containing the summation concept.
Work Item 9401: Valid XBRL Doc Failing To Be Loaded
The latest Amazon quarterly XBRL filing passes other validation tests I used, however attempting to Load the doc in Gepsio throws an error. Since it is an Object Ref Not Set to Instance error, it is not entirely clear what caused it although the final line in the stack trace is JeffFerguson.Gepsio.QualifiedName.Equals(Object obj). I attach the filing for your ref. Any ideas on how to get around this?
A bug in the QualifiedName equality testing code failed to detect various null conditions. This has been fixed.
Work Item 7843: The given path’s format is not supported
Fixed bug that allowed paths of the form “file:///C:/blah/blah/http://blah/blah.org” to be created in GetFullLinkbasePath when filings that reference remote documents are stored locally. This caused a NotSupportedException to be thrown. Supplied as a patch from Codeplex user matthewschrager.
Work Item 9465: WebException Objects Thrown During XbrlSchema Creation Are Not Wrapped in XbrlException Objects
The XbrlSchema constructor uses an XmlTextReader to read an XBRL schema. If the URI for the XBRL schema to be read is an HTTP-based URI, then the XmlTextReader will use the .NET Web stack to read the schema using HTTP. If something fails during that process, the .NET Web stack will throw a WebException. Thrown WebException objects were not wrapped in an XbrlException object and were consequently thrown back to the client as a WebException object.
To be clear that the issue is an XBRL issue caused by an HTTP failure, the XBRL schema creation code now creates an XbrlException object, stores the caught WebException as an inner exception to the XbrlException, and throws the XbrlException object back up to the client.
Work Item 9571: No Support for Taxonomy Role Types
Role types found in schemas are now available from within the object model. The XbrlSchema class now contains a property called RoleTypes. This property is a collection of objects of a new class called RoleType. Objects of the RoleType class expose any role types defined in the schema.