Skip to main content


class %SOAP.WSSC.DerivedKeyToken extends %SOAP.Security.Element

DerivedKeyToken from WS-SecureConversation 1.4.

Property Inventory

Method Inventory


Inherited description: ELEMENTQUALIFIED controls the format of exported XML. The ELEMENTQUALIFIED specification should be based on the elementFormDefault attribute of the schema that defines the type. To maintain compatibility, ELEMENTQUALIFIED will default to 1 (true) for literal format export and will default to 0 (false) for encoded or encoded12 format export. These were the values always previously assumed for the elementFormDefault attribute.

NOTE: Direct use of XMLExport method does not support the ELEMENTQUALIFIED. The export must be done using %XML.Writer or SOAP support.

parameter NAMESPACE =;
Inherited description: NAMESPACE specifies the XML namespace to be used when projecting the class to XML. If NAMESPACE = "", the default namespace is used for the XML schema is used as the namespace for his class.
parameter XMLFORMAT = literal;
Inherited description: The XMLFORMAT parameter controls the generation of the XMLExport and XMLImport methods for XML enabled classes to include code for only literal or only encoded format. This allows the generated routines to be significantly smaller since usually both formats are not needed.

If XMLFORMAT="Literal", then only support for literal format import and export is generated.

If XMLFORMAT="Encoded", then only support for SOAP encoded format import and export is generated.

The default is to generate support for both literal and encoded format.

parameter XMLPREFIX = wsc;
Inherited description: The XMLPREFIX parameter controls the prefix to be used for the XML namespace that is given by the NAMESPACE parameter.


property Algorithm as %xsd.anyURI (XMLPROJECTION = "attribute");
Property methods: AlgorithmDisplayToLogical(), AlgorithmGet(), AlgorithmIsValid(), AlgorithmLogicalToDisplay(), AlgorithmLogicalToOdbc(), AlgorithmNormalize(), AlgorithmSet()
property Generation as %xsd.unsignedLong;
Property methods: GenerationDisplayToLogical(), GenerationGet(), GenerationIsValid(), GenerationLogicalToDisplay(), GenerationNormalize(), GenerationSet(), GenerationXSDToLogical()
property Label as %String);
Property methods: LabelDisplayToLogical(), LabelGet(), LabelIsValid(), LabelLogicalToDisplay(), LabelLogicalToOdbc(), LabelNormalize(), LabelSet()
property Length as %xsd.unsignedLong;
Property methods: LengthDisplayToLogical(), LengthGet(), LengthIsValid(), LengthLogicalToDisplay(), LengthNormalize(), LengthSet(), LengthXSDToLogical()
property Nonce as %xsd.base64Binary;
Property methods: NonceGet(), NonceIsValid(), NonceLogicalToXSD(), NonceSet(), NonceXSDToLogical()
property Offset as %xsd.unsignedLong;
Property methods: OffsetDisplayToLogical(), OffsetGet(), OffsetIsValid(), OffsetLogicalToDisplay(), OffsetNormalize(), OffsetSet(), OffsetXSDToLogical()
property Properties as %SOAP.WSSC.Properties;
Property methods: PropertiesGet(), PropertiesGetSwizzled(), PropertiesIsValid(), PropertiesNewObject(), PropertiesSet()
property SecurityTokenReference as %SOAP.Security.SecurityTokenReference (REFELEMENTQUALIFIED = 1, REFNAMESPACE = "", XMLREF = 1);
Property methods: SecurityTokenReferenceGet(), SecurityTokenReferenceGetSwizzled(), SecurityTokenReferenceIsValid(), SecurityTokenReferenceNewObject(), SecurityTokenReferenceSet()


classmethod Create(keyElement As %SOAP.Security.Element = "", referenceOption As %Integer = "") as %SOAP.WSSC.DerivedKeyToken
Create a DerivedKeyToken element that is to be referenced from an EncryptedKey, EncryptedData or Signature element and that is to carry a key derived from a symmetric key specified by its SecurityTokenReference element.

The properties of %SOAP.WSSC.DerivedKeyToken instance may be set after the instance is created. The SecurityTokenReference is set by the Create method. The other properties default as specified by WS-SecureConversation. If not otherwise set, the Nonce property defaults to a 16 octet random binary string.
  • keyElement is the Security element which will supply the symmetric key: either an EncryptedKey or SecurityContextToken element. The required keyElement type depends on referenceOption specified. See referenceOption for details.
  • The referenceOption argument specifies the type of reference which will be in the SecurityTokenReference.
    • $$$SOAPWSReferenceEncryptedKey is reference to an EncryptedKey element in this message. The keyElement argument must be specified and is the EncryptedKey element.
    • $$$SOAPWSReferenceEncryptedKeySHA1 is reference by the SHA1 hash of the key contained in the EncryptedKey element specified as the first argument. If the keyElement is not specified, the key from the first EncryptedKey element in the received message is used.
    • $$$SOAPWSReferenceDerivedKey is reference to a DerivedKeyToken element in this message. The keyElement argument must be specified and is the DerivedKeyToken element.
    • $$$SOAPWSReferenceSCT is reference by wsu:Id to a SecurityContextToken element in this message. The keyElement argument must be specified and is the SecurityContextToken element.
    • $$$SOAPWSReferenceSCTIdentifier is reference by Identifier and Instance to a SecurityContextToken element not necessarily in this message. The keyElement argument must be specified and is the SecurityContextToken element.
    • If referenceOption is "" or not specified, no SecurityTokenReference is created.
method Equals(credentials As %SOAP.WSSC.DerivedKeyToken) as %Boolean
Return true if the same Key.
method Reset()
Reset the element.

Inherited Members

Inherited Methods

FeedbackOpens in a new tab