The <BodyTemplate> element provides the template from which a web service request body is built. This element is used when the POST method has to be used.

Note that several escapers are provided for use but you must perform the appropriate escaping because the escaping rules depend on the context of use.

Schema Name and Location

This element is defined in the urn:mace:shibboleth:2.0:resolver namespace, the schema for which is located at


The example demonstrates construction of a SOAP message.

<BodyTemplate MIMEType="text/xml">
	<S:Envelope xmlns:S="">
			<g:GetGroups xmlns:g="">

Configuration Reference


MIMETypeStringContent type to attach to the request
charsetStringCharacter set parameter to qualify MIME type

Child Elements

No child elements are defined.

Template Context

As enumerated below, several variables are available in the template context. In practice, $resolutionContext.principal and various named dependent attributes (if any) tend to be most useful.




Commonly useful members include $resolutionContext.principal and $resolutionContext.attributeRecipientID

foo, bar, etc.

List<IdPAttributeValue>For each IdPAttribute available from all the provided dependencies, the attributes' values are available as a collection under the attribute's name. safe embedding of input data into a query parameter safe embedding of input data into a URL fragment safe embedding of input data into a URL path safe embedding of input data into an XML attribute safe embedding of input data in XML element content
httpClientSecurityParametersHttpClientSecurityParametersRarely of interest but provides access to security parameters to be used during call