IOpcSignatureRelationshipReference interface (msopc.h)

Represents a reference to a Relationships part that contains relationships that have been or will be signed.

Inheritance

The IOpcSignatureRelationshipReference interface inherits from the IUnknown interface. IOpcSignatureRelationshipReference also has these types of members:

Methods

The IOpcSignatureRelationshipReference interface has these methods.

 
IOpcSignatureRelationshipReference::GetDigestMethod

Gets the digest method to use on relationship markup of the selected relationships.
IOpcSignatureRelationshipReference::GetDigestValue

Gets the digest value calculated for the selected relationships when they are signed.
IOpcSignatureRelationshipReference::GetRelationshipSelectorEnumerator

Gets an enumerator of IOpcRelationshipSelector interface pointers that represent the techniques used to select the subset of relationships in the referenced�Relationships part.
IOpcSignatureRelationshipReference::GetRelationshipSigningOption

Gets a value that describes whether all or a subset of relationships that are stored in the referenced�Relationships part are selected.
IOpcSignatureRelationshipReference::GetSourceUri

Gets the source URI of the relationships that are stored in the referenced�Relationships part.
IOpcSignatureRelationshipReference::GetTransformMethod

Gets the canonicalization method to use on the relationship markup of the selected relationships when they are signed.

Remarks

To create an IOpcSignatureRelationshipReference interface pointer that represents a reference to a Relationships part, call the Create method. This reference will indicate whether all or a subset of the relationships in the Relationships part will be signed when the signature is generated.

To access an IOpcSignatureRelationshipReference interface pointer, call the IOpcSignatureRelationshipReferenceEnumerator::GetCurrent method.

Relationships that are not selected for signing can be removed, modified or added to the package without invalidating the signature. If a subset of relationships has been selected for signing and the subset is altered, the signature will be invalidated.

Important  A selected subset could be altered if the relationship type of a relationship that is added to or modified in a referenced Relationships part matches a relationship type that was used to select one or more relationships in the subset.

 

The interface provides methods to access information about the referenced Relationships part, the selected relationships that have been or will be signed, and the reference itself. When a signature is generated, this reference information is serialized in the XML markup of the signature (signature markup). In signature markup, the information is represented by a Reference element that has a URI attribute value that identifies a Relationships part.

Thread Safety

Packaging objects are not thread-safe.

For more information, see the Getting Started with the Packaging API.

Requirements

Requirement Value
Minimum supported client Windows 7 [desktop apps | UWP apps]
Minimum supported server Windows Server 2008 R2 [desktop apps | UWP apps]
Target Platform Windows
Header msopc.h

See also

Core Packaging Interfaces

Digital Signatures Overview

Getting Started with the Packaging API

IOpcSignatureRelationshipReferenceEnumerator

IOpcSignatureRelationshipReferenceSet

OPC_CANONICALIZATION_METHOD

OPC_RELATIONSHIPS_SIGNING_OPTION

Overviews

Packaging API Programming Guide

Packaging API Reference

Packaging API Samples

Packaging Digital Signature Interfaces

Packaging Interfaces

Reference