MOXIS Resolver and their function
Content
Standard signatures can be customised in MOXIS using resolvers (placeholders). This article explains the logic behind resolution and the different types of resolvers available.
1. Definition
What is a resolver?
A resolver is a software component that retrieves information from a name server via the DNS protocol.
In the case of MOXIS, a resolver is a placeholder that is placed in a MOXIS component to represent a specific text or piece of information. As soon as the information is available, it is automatically retrieved and the placeholder is replaced by the information/text. This allows certain processes in MOXIS to be automated and simplified.
1. Resolution of resolvers
The resolution of resolvers follows the logic below:
Resolver | Resolution |
|---|---|
| The percent sign ( |
| The question mark (?) indicates an optional placeholder that resolves to an empty string if the key cannot be evaluated. It can also be escaped with a backslash ( |
| The character string %(...) indicates a group whose result is the first valid value after evaluation of the subgroups content-1 ... content-n. |
| Optional placeholders also work for groups. |
| Groups can also be nested and contain static elements. Static elements are only taken into account if all placeholders in the subgroup resolve validly. |
| A static placeholder for |
2.1. Examples for resolvers
Resolver | Resolution |
|---|---|
| … resolves the common name from the certificate, if the certificate is available. |
| … resolves the first name and last name of the logged-in MOXIS user, provided that the MOXIS user is available. |
| Hard-coded name (Max Mustermann or John Doe, depending on the language). Required in the preview for external signatories. |
| … current (signature) time |
2.2. Examples for resolvers with groupings
Resolver | Resolution |
|---|---|
| … resolves to the common name from a certificate or first name and last name or Max Mustermann (if the language is German). Depending on which resolves first. |
2.3. Further resolvers and Resolver and their effects
Resolver | Resolution |
|---|---|
| … Resolves the first invalid match for certificate-user-name, certificate-common-name, moxis-user-name, default-signer-name. Resolves to null if none of these match. |
| … resolves to the ‘Issuer Distinguished Name’ of the certificate, if specified, otherwise null. |
| … resolves to the ‘Common Name’ of the certificate, if specified, otherwise null. |
| … resolves to the serial number of the certificate, if specified, otherwise null. |
| … resolves to the currently logged-in MOXIS user name <first name> <last name>, if specified, FOR SHARES, otherwise null. |
| … resolves to the email address of the currently logged-in MOXIS user, otherwise |
| … resolves to the constants John Doe or Max Mustermann, depending on the locale used and if preview mode is used, otherwise |
| … resolves the name of the signer that must be displayed. |
| … resolves the name of the user who signs in place of the original signer, otherwise |
| … resolves the iteration comment set in the ‘Create order’ view, otherwise |
| … resolves the job ID (process instance ID) that would otherwise be automatically assigned to null. |
| … resolve the job reference ID, otherwise |
| … resolves into the signature comment of a qualified signature. |
| … resolves into the signature comment of a simple signature or an approval. |
3. Use case: Resolvers in practical application
In MOXIS, for example, signature visualizations can be designed differently using resolvers. We would like to explain their function and benefits using a practical example.
Good document management is particularly important in industries that are subject to strict guidelines. This is also the case in the pharmaceutical industry, where transparency plays a major role. Not only the name but also the role of the signatories must be noted on documents.
However, it can happen that more than one person works on a document. This must of course also be recorded with a signature.
3.1. Use case: General conditions
For our example, we have defined three people who are working on the same document. After successful interaction, they must countersign it in some form:
Creator of the document = Creator
Editor of the document = Checker
Approver (person with hierarchical authority) = Approver
Now, you could create a separate signature profile for each role. However, this would have to be selected before each signature. Since this can be prone to errors, the use of a resolver is recommended. This can be controlled by the client(s) in the course of the annotation for each signature level.
3.2 Use case: Personalizing signatures in MOXIS
Use case: A person in the quality management department of a pharmaceutical company wants to create a document. Their signature should include their name, the date and time, and their role.
Solution: The “%iteration-comment” resolver is suitable for our example. According to the syntax description in section 1.3 of this article, this can be resolved and inserted into the signature profile accordingly.
To add a resolver to a signature profile, open the signature profile you want to edit. Then add the desired information.
In the Caption section (see figure 1 [1]), make sure you have checked all the important items you want to display. You can choose between:
Display name
Display date
Display time
Display note text
XiTip
Please note: The check mark for “Display note text” must be selected in all cases. Otherwise, the resolver will not be displayed in text form.
Now enter the resolver (see figure 1 [2] and see here in turquoise) with additional, freely selected text (see here in yellow) in the text field.
%(I am the %iteration-comment of this document| )

Figure 1: Add resolver
Following the logic of our example, the final signature will look like this (see figure 2), with the resolver following the following logic:
%(I am the %iteration-comment of this document| )
%(I am the Creator of this document| )

Figure 2: Signature visualisation including resolved text
We invite you to try out your own signature profiles and find out what works best for you.