Skip to content

divbzero/xbrl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Features

  • (P0) Parse XBRL instance documents
  • (P0) Parse XBRL linkbases
    • (P2) Calculation linkbase
    • (P2) Definition linkbase
    • (P1) Label linkbase
    • (P0) Presentation linkbase
  • (P0) Parse XBRL schemas

Classes

XBRL Instance

Document

class XBRL(list):
    """An XBRL instance document"""
    ...

Fact

class Fact(dict):
    """An XBRL fact: concept, context, value"""
    ...

Concept

class Concept(dict):
    """An XBRL concept"""
    ...

Context

class Context(dict):
    """An XBRL context: company, segment, period"""
    ...
class Period(dict):
    """An XBRL period: start date, end date"""
    ...

Value

class Value(dict):
    """An XBRL value: amount, unit"""
    ...
class Unit(dict):
    """An XBRL unit"""
    ...

XBRL Linkbase

Linkbase

class Linkbase(list):
    """An XBRL linkbase"""
    ...
class CalculationLinkbase(Linkbase):
    """An XBRL calculation linkbase"""
    ...
class DefinitionLinkbase(Linkbase):
    """An XBRL definition linkbase"""
    ...
class LabelLinkbase(Linkbase):
    """An XBRL label linkbase"""
    ...
class PresentationLinkbase(Linkbase):
    """An XBRL Presentation linkbase"""
    ...

Link

class Link(dict):
    """An XBRL link"""
    ...
class CalculationLink(Link):
    """An XBRL calculation link"""
    ...
class DefinitionLink(Link):
    """An XBRL definition link"""
    ...
class LabelLink(Link):
    """An XBRL label link"""
    ...
class PresentationLink(Link):
    """An XBRL Presentation link"""
    ...

Usage

XBRL Instance

brka = XBRL(file='brka-20151231.xml')
brka = XBRL('BRKA', 2015)
brka = XBRL('BRKA', 2015, 'FY')
brka = XBRL(file='brka-20160331.xml')
brka = XBRL('BRKA', 2016, 'Q1')
facts = list(brka)
contexts = list(brka.contexts)
units = list(brka.units)

XBRL Linkbase

brka_cal = CalculationLinkbase(file='brka-20151231_cal.xml')
brka_cal = CalculationLinkbase('BRKA', 2015)
brka_cal = CalculationLinkbase('BRKA', 2015, 'FY')
brka_def = DefinitionLinkbase(file='brka-20151231_def.xml')
brka_def = DefinitionLinkbase('BRKA', 2015)
brka_def = DefinitionLinkbase('BRKA', 2015, 'FY')
brka_lab = LabelLinkbase(file='brka-20151231_lab.xml')
brka_lab = LabelLinkbase('BRKA', 2015)
brka_lab = LabelLinkbase('BRKA', 2015, 'FY')
brka_pre = PresentationLinkbase(file='brka-20151231_pre.xml')
brka_pre = PresentationLinkbase('BRKA', 2015)
brka_pre = PresentationLinkbase('BRKA', 2015, 'FY')