Page History
...
When creating your own Blueriq as a Service (BaaS), it is possible to include a justification tree in your response to the caller of the webservice. This tree explains how a certain attribute was derived by the inference engine.
To do this, you need the custom schema element 'AQ_JustificationTree', which is part of the AquimaLibrary. If you open this schema element, you find under the 'xsd' tab the following xsd:
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="utf-8"?> <xs:schema targetNamespace="http://aquima.com/schemas/justificationTree/1.0" xmlns="http://aquima.com/schemas/justificationTree/1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="justificationTree"> <xs:complexType> <xs:sequence> <xs:element ref="attribute" minOccurs="1" maxOccurs="1"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="attribute" type="attributeType"/> <xs:complexType name="attributeType"> <xs:sequence> <xs:element name="value" minOccurs="0" maxOccurs="unbounded" type="xs:string"/> <xs:element name="justification" minOccurs="0" maxOccurs="1" type="xs:string"/> <xs:element ref="attribute" minOccurs="0" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:schema> |
You need to make this XSD part of the response of your AAAS. The easiest way is to save the justification XSD in a separate file and use the <import> statement in your own XSD. After importing your WSDL/XSD with the justification tree in it, go to the Schema Set Editor and open the justification tree element.
Note |
---|
You have to make the justification XSD really part of your own WSDL/XSD. This means referring to it with an <import> statement and supplying this file together with your own WSDL during the import. |
You will see the following window:
- Choose AQ_JustificationTree. If it is not in the list, there is probably something wrong with the namespaces in your XSD.
- Choose the name of the entity of which you want to justify an attribute
- The attribute you want to justify.
- If you want to use a different asset format, you can specify this here. The default is 'Text'.
Note |
---|
The context of the justification is the WSDL module. This means that no justification is given when using a data-mapping, as the value is not derived with logic, but the value is set by the mapping. To solve this, you can (1) work with only 1 module without datamapping; this can get messy with complicated WSDL's/applications; or (2) duplicate the logic in your WSDL module; by placing the logic in a parent module both modules can inherit from it. |