XML Utilities

enum XmlError(value)

Enum which indicates the status of the xml process.

Member Type:

int

Valid values are as follows:

SUCCESS = <XmlError.SUCCESS: 0>
NO_ATTRIBUTE = <XmlError.NO_ATTRIBUTE: 1>
WRONG_ATTRIBUTE_TYPE = <XmlError.WRONG_ATTRIBUTE_TYPE: 2>
FILE_NOT_FOUND = <XmlError.FILE_NOT_FOUND: 3>
FILE_COULD_NOT_BE_OPENED = <XmlError.FILE_COULD_NOT_BE_OPENED: 4>
FILE_READ_ERROR = <XmlError.FILE_READ_ERROR: 5>
PARSING_ELEMENT = <XmlError.PARSING_ELEMENT: 6>
PARSING_ATTRIBUTE = <XmlError.PARSING_ATTRIBUTE: 7>
PARSING_TEXT = <XmlError.PARSING_TEXT: 8>
PARSING_CDATA = <XmlError.PARSING_CDATA: 9>
PARSING_COMMENT = <XmlError.PARSING_COMMENT: 10>
PARSING_DECLARATION = <XmlError.PARSING_DECLARATION: 11>
PARSING_UNKNOWN = <XmlError.PARSING_UNKNOWN: 12>
EMPTY_DOCUMENT = <XmlError.EMPTY_DOCUMENT: 13>
MISMATCHED_ELEMENT = <XmlError.MISMATCHED_ELEMENT: 14>
ERROR_PARSING = <XmlError.ERROR_PARSING: 15>
CAN_NOT_CONVERT_TEXT = <XmlError.CAN_NOT_CONVERT_TEXT: 16>
NO_TEXT_NODE = <XmlError.NO_TEXT_NODE: 17>
ELEMENT_DEPTH_EXCEEDED = <XmlError.ELEMENT_DEPTH_EXCEEDED: 18>
TINYXML2_ERROR_COUNT = <XmlError.TINYXML2_ERROR_COUNT: 19>
FILE_TYPE_NOT_SUPPORTED = <XmlError.FILE_TYPE_NOT_SUPPORTED: 275>
ELEMENT_TYPE_NOT_SUPPORTED = <XmlError.ELEMENT_TYPE_NOT_SUPPORTED: 276>
TYPE_MISMATCH = <XmlError.TYPE_MISMATCH: 277>
class ZahnerFileInfo(self: zahner_link._zahner_link.xml.ZahnerFileInfo)
INVALID_FILE_VERSION = 0
XML_ELEMENT_NAME = 'zahner-fileinfo'
property comment
property creation_timestamp
property file_version
property generator
property generator_version
property type
class Measurement(*args, **kwargs)

Overloaded function.

  1. __init__(self: zahner_link._zahner_link.xml.Measurement) -> None

  2. __init__(self: zahner_link._zahner_link.xml.Measurement, hardware_info: zahner_link.HardwareInfo) -> None

    Create an XML measurement with a hardware info

    param hardware_info:

    zahner_link.HardwareInfo object to be included in the XML file

  3. __init__(self: zahner_link._zahner_link.xml.Measurement, dataset: zahner_link.EisDataset) -> None

    Create an XML measurement with a dataset

    param dataset:

    dataset to be included in the XML file

  4. __init__(self: zahner_link._zahner_link.xml.Measurement, dataset: zahner_link.DcDataset) -> None

    Create an XML measurement with a dataset

    param dataset:

    dataset to be included in the XML file

  5. __init__(self: zahner_link._zahner_link.xml.Measurement, hardware_info: zahner_link.HardwareInfo, dataset: zahner_link.EisDataset) -> None

    Create an XML measurement with a hardware info and a dataset

    param hardware_info:

    zahner_link.HardwareInfo object to be included in the XML file

    param dataset:

    dataset to be included in the XML file

  6. __init__(self: zahner_link._zahner_link.xml.Measurement, hardware_info: zahner_link.HardwareInfo, dataset: zahner_link.DcDataset) -> None

    Create an XML measurement with a hardware info and a dataset

    param hardware_info:

    zahner_link.HardwareInfo object to be included in the XML file

    param dataset:

    dataset to be included in the XML file

append_dataset(*args, **kwargs)

Overloaded function.

  1. append_dataset(self: zahner_link._zahner_link.xml.Measurement, dataset: zahner_link.EisDataset) -> None

    Append the measurement with an EIS dataset

    param dataset:

    EIS dataset to append

  2. append_dataset(self: zahner_link._zahner_link.xml.Measurement, dataset: zahner_link.DcDataset) -> None

    Append the measurement with an DC dataset

    param dataset:

    DC dataset to append

get_datasets(self: zahner_link._zahner_link.xml.Measurement) list[DataSet]

Get the datasets included in the measurement

Returns:

list of datasets

get_hardware_info(self: zahner_link._zahner_link.xml.Measurement) HardwareInfo | None

Get the used hardware info in the XML file

Returns:

zahner_link.HardwareInfo object

set_hardware_info(self: zahner_link._zahner_link.xml.Measurement, hardware_info: HardwareInfo) None

Set the hardware info to be included in the XML file

Parameters:

hardware_infozahner_link.HardwareInfo object to be included in the XML file

class ZXmlImporter(self: zahner_link._zahner_link.xml.ZXmlImporter)

Class to import datasets from Zahner XML format

deserialize(self: zahner_link._zahner_link.xml.ZXmlImporter, data: bytes) zahner_link._zahner_link.xml.XmlSerializable

Deserialize a plain XmlSerializable XML element from bytes.

Parameters:

data – Bytes containing the XML element

Returns:

Shared pointer to the deserialized object or None on failure

get_last_error(self: zahner_link._zahner_link.xml.ZXmlImporter) zahner_link._zahner_link.xml.XmlError

Get the status/error code of the last import operation.

Returns:

XmlError enum value indicating the result of the last operation

import_from_file(self: zahner_link._zahner_link.xml.ZXmlImporter, filename: os.PathLike | str | bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) zahner_link._zahner_link.xml.XmlSerializable

Create XmlSerializable from a file.

Parameters:
  • filename – Full path and filename of the file to be imported

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported object or None on failure

import_from_file_as_dc_dataset(self: zahner_link._zahner_link.xml.ZXmlImporter, filename: os.PathLike | str | bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) DcDataset

Create DcDataset from a file.

Parameters:
  • filename – Full path and filename of the file to be imported

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported DcDataset object or None on failure

import_from_file_as_eis_dataset(self: zahner_link._zahner_link.xml.ZXmlImporter, filename: os.PathLike | str | bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) EisDataset

Create EisDataset from a file.

Parameters:
  • filename – Full path and filename of the file to be imported

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported EisDataset object or None on failure

import_from_file_as_measurement(self: zahner_link._zahner_link.xml.ZXmlImporter, filename: os.PathLike | str | bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) zahner_link._zahner_link.xml.Measurement

Create Measurement from a file.

Parameters:
  • filename – Full path and filename of the file to be imported

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported Measurement object or None on failure

import_from_memory(self: zahner_link._zahner_link.xml.ZXmlImporter, data: bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) zahner_link._zahner_link.xml.XmlSerializable

Create XmlSerializable from bytes in memory.

Parameters:
  • data – The complete XML standalone file as bytes

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported object or None on failure

import_from_memory_as_dc_dataset(self: zahner_link._zahner_link.xml.ZXmlImporter, data: bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) DcDataset

Create DcDataset from bytes in memory.

Parameters:
  • data – The complete XML standalone file as bytes

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported DcDataset object or None on failure

import_from_memory_as_eis_dataset(self: zahner_link._zahner_link.xml.ZXmlImporter, data: bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) EisDataset

Create EisDataset from bytes in memory.

Parameters:
  • data – The complete XML standalone file as bytes

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported EisDataset object or None on failure

import_from_memory_as_measurement(self: zahner_link._zahner_link.xml.ZXmlImporter, data: bytes, file_info: zahner_link._zahner_link.xml.ZahnerFileInfo = None) zahner_link._zahner_link.xml.Measurement

Create Measurement from bytes in memory.

Parameters:
  • data – The complete XML standalone file as bytes

  • file_info – Optional ZahnerFileInfo for informations

Returns:

Imported Measurement object or None on failure

class ZXmlExporter(self: zahner_link._zahner_link.xml.ZXmlExporter)

Class to export datasets to Zahner XML format

static default_produces_compact_xml() bool

Get the default compact XML state.

Compact XML means that unnecessary whitespace is removed.

Returns:

True if compact format is enabled

static get_default_file_version() int
static get_default_generator() str
static get_default_generator_version() str
get_file_version(self: zahner_link._zahner_link.xml.ZXmlExporter) int
get_generator(self: zahner_link._zahner_link.xml.ZXmlExporter) str

Get the used XML generator

Returns:

String with the used generator

get_generator_version(self: zahner_link._zahner_link.xml.ZXmlExporter) str

Get the used XML generator version

Returns:

String with the used generator version

get_xml_element_tree(self: zahner_link._zahner_link.xml.ZXmlExporter, serializable: zahner_link._zahner_link.xml.XmlSerializable, user_comment: str = '') object

Get the XML as Python xml.etree.ElementTree object

Parameters:
  • serializable – serializable job

  • user_comment – optional user comment

Returns:

returns the Python xml.etree.ElementTree object

produces_compact_xml(self: zahner_link._zahner_link.xml.ZXmlExporter) bool

Get the compact XML state.

Compact XML means that unnecessary whitespace is removed.

Returns:

True if compact format is enabled

save_as_file_standalone(self: zahner_link._zahner_link.xml.ZXmlExporter, serializable: zahner_link._zahner_link.xml.XmlSerializable, filename: os.PathLike | str | bytes, user_comment: str = '') int

Save the XML file standalone.

Parameters:
  • serializable – serializable job

  • filename – filename with path to save

  • user_comment – optional user comment

Returns:

file content as string

serialize(self: zahner_link._zahner_link.xml.ZXmlExporter, serializable: zahner_link._zahner_link.xml.XmlSerializable) str

Serialize a plain XmlSerializable XML element to string.

Parameters:

serializable – serializable job

Returns:

content as string

serialize_as_file_standalone(self: zahner_link._zahner_link.xml.ZXmlExporter, serializable: zahner_link._zahner_link.xml.XmlSerializable, user_comment: str = '') str

Create the XML file content as string

Parameters:
  • serializable – serializable job

  • user_comment – optional user comment

Returns:

file content as string

set_compact_xml(self: zahner_link._zahner_link.xml.ZXmlExporter, compact_xml: bool = True) None

Set compact XML format.

Compact XML means that unnecessary whitespace is removed.

Parameters:

compact_xml – True to enable compact format

static set_default_compact_xml(compact_xml: bool = True) None

Set default compact XML format.

Compact XML means that unnecessary whitespace is removed.

Parameters:

compact_xml – True to enable compact format

static set_default_generator(arg0: str) None
static set_default_generator_version(arg0: str) None
set_generator(self: zahner_link._zahner_link.xml.ZXmlExporter, generator: str) None

Set the used XML generator

This is for the customer, who can then enter his application as a generator if necessary.

Parameters:

generator – String with the used generator

set_generator_version(self: zahner_link._zahner_link.xml.ZXmlExporter, generator_version: str) None

Set the used XML generator version

This is for the customer, who can then enter his application as a generator if necessary.

Parameters:

generator_version – String with the used generator version

class XmlSerializable

Abstract base class for XML serializable objects.