openpyxl.packaging.relationship module

class openpyxl.packaging.relationship.Relationship(Id=None, Type=None, type=None, Target=None, TargetMode=None)[source]

Bases: openpyxl.descriptors.serialisable.Serialisable

Represents many kinds of relationships.

Id

Values must be of type <class ‘str’>

Target

Values must be of type <class ‘str’>

TargetMode

Values must be of type <class ‘str’>

Type

Values must be of type <class ‘str’>

id

Aliases can be used when either the desired attribute name is not allowed or confusing in Python (eg. “type”) or a more descriptve name is desired (eg. “underline” for “u”)

tagname = 'Relationship'
target

Aliases can be used when either the desired attribute name is not allowed or confusing in Python (eg. “type”) or a more descriptve name is desired (eg. “underline” for “u”)

class openpyxl.packaging.relationship.RelationshipList(Relationship=())[source]

Bases: openpyxl.descriptors.serialisable.Serialisable

Relationship

A sequence (list or tuple) that may only contain objects of the declared type

append(value)[source]
find(content_type)[source]

Find relationships by content-type NB. these content-types namespaced objects and different to the MIME-types in the package manifest :-(

tagname = 'Relationships'
to_tree()[source]
openpyxl.packaging.relationship.get_dependents(archive, filename)[source]

Normalise dependency file paths to absolute ones

Relative paths are relative to parent object

openpyxl.packaging.relationship.get_rel(archive, deps, id=None, cls=None)[source]

Get related object based on id or rel_type

openpyxl.packaging.relationship.get_rels_path(path)[source]

Convert relative path to absolutes that can be loaded from a zip archive. The path to be passed in is that of containing object (workbook, worksheet, etc.)