Validera XBRL i Python

XBRL står för XML Based Business Reporting Language. Det är helt enkelt ett schema som hjälper företag att organisera sin data så att de kan dela information mellan olika avdelningar inom sitt företag. XBRL och Inline XBRL (iXBRL) dokument är strukturerade elektroniska affärsrapporter för att möta olika affärskrav. Det är inte bara en annan typ av tråkiga affärsdokument - XBRL-dokument innehåller viss struktur, format och egenskaper som kan användas för att validera de finansiella dokumenten. Vi kan enkelt validera ett XBRL- eller iXBRL-instansdokument programmatiskt. I den här artikeln kommer vi att lära oss hur man validerar ett XBRL-dokument i Python.

Följande ämnen ska behandlas i den här artikeln:

  1. Python XBRL Validator API för att validera XBRL-dokument
  2. Validera XBRL-fil
  3. Validera Inline XBRL-fil

Python XBRL Validator API för att validera XBRL-dokument

För att validera en XBRL-fil eller ett instansdokument kommer vi att använda Aspose.Finance for Python API. Det gör det möjligt att skapa XBRL-instanser, analysera och validera XBRL- eller iXBRL-filerna.

API tillhandahåller klassen XbrlDocument som representerar ett XBRL-dokument som innehåller en eller flera XBRL-instanser. En XBRL-instans är ett XML-fragment, där rotelementet har en XBRL-tagg. Klassen XbrlInstance tillhandahåller olika metoder och egenskaper för att arbeta med XBRL-instanser. Metoden validate() för den här klassen validerar den valda XBRL-instansen. Vi har klassen InlineXbrlDocument för API:t som representerar ett inline XBRL-dokument. Dessutom definierar ValidationErrorCode uppräkningen av API:t alla valideringsfelkoder och respektive felmeddelande.

Vänligen antingen ladda ner paketet eller installera API:et från PyPI med följande pip-kommando i konsolen:

pip install aspose-finance

Validera XBRL-dokument i Python

Vi kan enkelt ladda och validera ett XBRL-instansdokument genom att följa stegen nedan:

  1. Först laddar du en XBRL-fil med XbrlDocument-klassen.
  2. Hämta sedan alla instanser med hjälp av xbrlinstances.
  3. Gå sedan till önskad XBRL-instans från samlingen.
  4. Därefter anropar du metoden validate() för att validera XBRL-instansen.
  5. Till sist, visa eventuella fel.

Följande kodexempel visar hur man validerar en XBRL-instans i Python.

# Detta kodexempel visar hur man validerar XBRL-instansdokument.
from aspose.finance.xbrl import XbrlDocument

# Sökvägen till inmatningsdokumentet
inputFile = "C:\Files\sample.xbrl"

# Ladda XBRL-fil
document = XbrlDocument(inputFile)

# Få instanser
xbrlInstances = document.xbrl_instances

# Välj en specifik instans
xbrlInstance = xbrlInstances[0]

# Bekräfta
xbrlInstance.validate()

# Visa eventuella valideringsfel
if xbrlInstance.validation_errors.length > 0:
   for validationError in xbrlInstance.validation_errors:
        print(validationError.message)

Validera Inline XBRL-dokument i Python

Vi kan också validera ett iXBRL-dokument genom att följa stegen nedan:

  1. Först laddar du en iXBRL-fil med klassen InlineXbrlDocument.
  2. Därefter anropar du metoden validate() för att validera XBRL-instansen.
  3. Till sist, visa eventuella fel.

Följande kodexempel visar hur man validerar ett inline XBRL- eller iXBRL-dokument i Python.

# Detta kodexempel visar hur man validerar Inline XBRL-dokument.
from aspose.finance.xbrl.inline import InlineXbrlDocument

# Sökvägen till inmatningsdokumentet
inputFile = "C:\Files\sample.html"

# Ladda XBRL-fil
document = InlineXbrlDocument(inputFile)

# Bekräfta
document.validate();

# Visa eventuella valideringsfel
if document.validation_errors.length > 0:
   for validationError in document.validation_errors:
        print(validationError.message)

Skaffa en gratis licens

Du kan få en gratis tillfällig licens för att prova biblioteket utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har vi lärt oss hur man validerar ett XBRL-dokument i Python. Vi har också sett hur man validerar ett inline XBRL-dokument programmatiskt. Dessutom kan du lära dig mer om Aspose.Finance för Python API med hjälp av dokumentation. I händelse av oklarheter är du välkommen att kontakta oss på vårt gratis supportforum.

Se även