Altova RaptorXML+XBRL Server 2025

Debugging Server-Side Python Scripts

Home Prev Top Next

Most of the debugging functionality—apart the server-specific callbacks—can be used in a standard Python interpreter or (virtual) environment after the RaptorXML+XBRL Server module has been installed by using pip:

 

pip install –upgrade "/path/to/RaptorXML/application-folder/bin/raptorxml-version-cp37-cp37m-winversion.whl"

 

After installing the wheel, you should be able to use any Python IDE to debug a script. You could try to extract the main functionality into a separate function which takes an instance object. This can then be called (i) by the RaptorXML Server callbacks, or (ii) by directly executing the script with a Python interpreter.

 

 

from altova_api.v2 import xml, xsd, xbrl

 

def main(instance):

    # Here goes the application specific logic

 

# Main entry point, will be called by RaptorXML after the XML instance validation job has finished

def on_xsi_finished(job, instance):

    # instance object will be None if XML Schema validation was not successful

    if instance:

        main(instance)

 

# Main entry point, will be called by RaptorXML after the XBRL instance validation job has finished

def on_xbrl_finished(job, instance):

    # instance object will be None if XBRL 2.1 validation was not successful

    if instance:

        main(instance)

 

if __name__ == ‘__main__’:

    # parse arguments and create an instance

    instance = …

    main(instance)

 

© 2018-2024 Altova GmbH