The WSDL for the Generic Interface remains the same regardless of which particular rulebase service is being called.
The data model is completely generic and does not allow for design time inspection of the inputs and outputs of each rulebase. Instead, the client application queries the Oracle Determinations Server at runtime for required inputs, allowing the client application to be completely loosely coupled as rulebase specific information is discovered at runtime. Note that changes to rules do not change the interface.
<xsd:complexType
name="Attribute">
<xsd:sequence>
<xsd:choice minOccurs="0">
<xsd:element name="val" type="xsd:string" />
<xsd:element name="boolean-val" type="xsd:boolean" />
<xsd:element name="currency-val" type="xsd:decimal" />
<xsd:element name="date-val" type="xsd:date" />
<xsd:element name="number-val" type="xsd:decimal" />
<xsd:element name="text-val" type="xsd:string" />
</xsd:choice>
<xsd:element name="properties" type="ListCustomProperties" minOccurs="0"/>
<xsd:element name="user-data" type="UserData" minOccurs="0" />
<xsd:element name="decision-report" type="DecisionReport" minOccurs="0" />
<xsd:element name="screen" type="ScreenDefinition" minOccurs="0" />
</xsd:sequence>
<xsd:attribute
name="id" type="xsd:string" use="required"/>
<xsd:attribute
name="state" type="AttributeStateEnum"/>
<xsd:attribute
name="inferencing-type" type="InferencingTypeEnum"/>
</xsd:complexType>
<typ:attribute id="household_location">
<typ:text-val>Alabama</typ:text-val>
</typ:attribute>
<typ:attribute id="household_earned_income_deduction">
<typ:currency-val>450.00</typ:currency-val>
</typ:attribute>