Altova RaptorXML+XBRL Server 2024

Editions and Interfaces

Home Prev Top Next

Editions

RaptorXML is available in the following editions:

 

RaptorXML Server, which is a fast server-based XML processing engine for the validation and processing of XML, XML Schema, XML Signature, XSLT, and XQuery documents.

RaptorXML+XBRL Server, which provides all the functionality of RaptorXML Server plus a wide range of XBRL processing functionality.

 

See here for a list of the supported specifications.

 

Interfaces

After you install RaptorXML, you can access it in one or more of the following ways:

 

Command Line Interface (CLI): available for Windows, Linux, and macOS installations of RaptorXML

HTTP REST client interface: uses RaptorXML's HTTP interface

COM/.NET server interface (Windows): uses RaptorXML's (i) COM/.NET API and (ii) HTTP REST interface

Java server interface (Windows, Linux, macOS): uses RaptorXML's (i) Java API and (ii) HTTP REST interface

Altova XMLSpy interface: RaptorXML can be accessed from within the Altova XMLSpy user interface

Python engine interface: uses (i) a RaptorXML Python-wheel in your Python environment and (ii) the Python API of RaptorXML in your Python script. In this way, RaptorXML functionality can be used in Python scripts together with third-party Python packages

.NET engine interface (Windows): uses (i) a RaptorXML DLL and (ii) the .NET API of RaptorXML to create independent .NET applications that use RaptorXML functionality

 

These seven interfaces can be organized into four groups:

 

Command Line Interface (CLI)

Server APIs: HTTP, COM/.NET, Java

Engine APIs: Python and .NET

Altova XMLSpy

 

CLI, Server APIs, and Altova XMLSpy

Access via the CLI, the Server APIs, and Altova XMLSpy can be visualized as in the figure below.

 

RaptorXML+XBRL Server defines an HTTP REST interface, which is used by clients to dispatch validation jobs to the server. Clients can either access the HTTP REST interface directly or use the high-level COM/.NET and Java Server APIs. These APIs provide easy to use COM/.NET and Java classes which manage the creation and dispatch of the HTTP REST requests. Additionally, Altova XMLSpy can be configured to run validation jobs on a remote RaptorXML+XBRL Server.

RaptorInterfaces01

 

Command line interface (CLI)

 

RaptorXML is licensed on the machine on which it is installed and this instance is accessed via the command line

Can be installed on Windows, Linux, and macOS

Provides command line usage for validation and processing of XML, XML Schema, XML Signature,XBRL, XQuery, and XSLT documents

Python 3.11.5 is bundled in RaptorXML and will be used when a Python script is invoked with the --script option

 

 

HTTP REST client interface

 

RaptorXML is licensed on the machine on which it is installed and this instance is accessed via an HTTP REST client interface

Client requests are made in JSON format. Each request is assigned a job directory on the server, in which output files are saved. Server responses to the client include all relevant information about the job.

Python 3.11.5 is bundled in RaptorXML and will be used when a Python script is invoked with the --script option

 

 

COM/.NET interface

 

Available on Windows only

RaptorXML is automatically registered as a COM server object when installed, and so can be invoked from within applications and scripting languages that have programming support for COM calls

RaptorXML is licensed on the machine on which it is installed

The .NET interface is built as a wrapper around the COM interface

The COM/.NET Server API of RaptorXML provides objects that can be used in COM/.NET scripting languages to access RaptorXML functionality

Python 3.11.5 is bundled in RaptorXML and will be used when a Python script is invoked with the --script option

 

 

Java interface

 

RaptorXML is licensed on the machine on which it is installed and this instance is accessed via a Java program

RaptorXML functionality is available in the Java Server API as Java classes that can be used in Java programs.

Python 3.11.5 is bundled in RaptorXML and will be used when a Python script is invoked with the --script option

 

 

 

Altova XMLSpy

 

If you have installed and licensed Altova XMLSpy and if XMLSpy can access RaptorXML+XBRL Server across a network, then you can use RaptorXML+XBRL Server from withing the XMLSpy GUI to validate XML and XBRL documents, as well as run XSLT and XQuery transformations.

You can validate the active document or all the documents in an XMLSpy project folder.

The validation results are displayed in the Messages window of the XMLSpy GUI.

In XMLSpy, you can (i) validate documents or (ii) run XSLT/XQuery transformation by using either XMLSpy's engines or RaptorXML Server.

One of the main advantages of using Raptor is that you can configure individual validations by means of a large range of validation options. Furthermore, you can store a set of Raptor options as a "configuration" in XMLSpy, and then select one of your defined configurations for a particular Raptor validation. Using Raptor is also advantageous when large data collections are to be validated.

 

Engine APIs

The Engine APIs are different than the Server APIs in that RaptorXML is contained in the Python wheel and in the .NET DLL that are used, respectively, by Python programs and .NET applications (see figure below). These programs/applications must use, respectively, Raptor's Python API and Raptor's .NET API in order to access RaptorXML functionality.

 

Note:The functionality provided by the Python API and .NET API are considerably greater than that provided by either the CLI or the Server APIs; for example, the ability to read documents and manipulate data.
RaptorInterfaces02

 

Python interface

 

RaptorXML is available in a Python wheel package that can be installed in your Python 3.11.5 environment

A Python program can then be written that uses objects from RaptorXML's Python API. This API provides much more functionality than is available in the CLI, and it can be combined with the functionality provided by third-party libraries in your Python environment

When RaptorXML functionality is called via RaptorXML's Python wheel, a check is carried out for a valid RaptorXML license on that machine before the command is executed

 

 

.NET interface

 

RaptorXML is available in a DLL that can be embedded in an application that supports the .NET Framework. See the section .NET Framework API for information about the API.

RaptorXML's .NET API provides access to RaptorXML. The available functionality is much more than that which is available in the RaptorXML CLI.

When RaptorXML functionality is called via a .NET application, a check is carried out for a valid RaptorXML license on that machine

 

© 2017-2023 Altova GmbH