pynetdicom.pdu_primitives.SOPClassExtendedNegotiation

class pynetdicom.pdu_primitives.SOPClassExtendedNegotiation[source]

A representation of the SOP Class Extended Negotiation primitive.

Allows peer AEs to exchange application information defined by specific Service Class specifications. Each Service Class is required to document the application information it supports and how this information is negotiated between SCUs and SCPs.

The SOP Class Extended Negotiation is optional and there may only be a single SOPClassExtendedNegotiation item for each available SOP Class UID.

Identical for both A-ASSOCIATE-RQ and A-ASSOCIATE-AC

Examples

>>> from pynetdicom.pdu_primitives import SOPClassExtendedNegotiation
>>> item = SOPClassExtendedNegotiation()
>>> item.sop_class_uid = '1.2.840.10008.5.1.4.1.2.1.3'
>>> item.service_class_application_information = b'\x01'

References

__init__() None[source]

Methods

__init__()

from_primitive()

Convert the primitive to a PDU item ready to be encoded.

Attributes

service_class_application_information

Get or set the Service Class Application Information.

sop_class_uid

Get or set the SOP Class UID.

from_primitive() SOPClassExtendedNegotiationSubItem[source]

Convert the primitive to a PDU item ready to be encoded.

Returns

item

Return type

pdu_items.SOPClassExtendedNegotiationSubItem

Raises

ValueError – If sop_class_uid or service_class_application_information are not set

property service_class_application_information: Optional[bytes]

Get or set the Service Class Application Information.

Parameters

value (bytes) – The Service Class Application Information as per the Service Class Specifications (see PS3.4)

Raises

TypeError – If value is not a bytes object.

property sop_class_uid: Optional[UID]

Get or set the SOP Class UID.

Parameters

value (pydicom.uid.UID, bytes or str) – The corresponding Abstract Syntax UID

Raises

TypeError – If value is not a pydicom.uid.UID, bytes or str