Decisions time series events
The timeseries format flattens the JSON code of the event so that it is easier to use by data science tools.
Notation and example
The dot notation indicates nested fields.
Event part | Description | Optional or required | Type |
---|---|---|---|
version | The time series format version | Required | String Example: "1.0.1" |
id | The event identifier. It contains the decision ID of the ruleset execution. | Required | String |
timestamp | The time stamp of the event | Required | A string that contains an ISO8601 date |
odmType | The type of the ODM event | Required | String - Always "ruleset" |
type | The type of the event | Required | String - One of:
|
rulesetPath | The canonical ruleset path. Format:<ruleAppName>/<ruleAppVersion>/<rulesetName>/<rulesetVersion> |
Required | Integer |
duration | The total duration of the ruleset execution, in milliseconds | Required | String |
<ruleAppName>.<rulesetName>.in.<inputParameterField> | The ruleset input parameter | Optional | JSON primitive type (String, number, integer, boolean). Input parameters which are arrays in the Execution Object Model (XOM) are expanded in individual fields for each array element. For example, for an input parameter "children" which is an array of length 2: myRuleApp.myRuleset.in.0.children, myRuleApp.myRuleset.in.1.children Input parameters are only included if the ruleset property bai.emitter.input is set to true (default: false). |
<ruleAppName>.<rulesetName>.out.<outputParameterField> | The ruleset output parameter | Optional | JSON primitive type (String, number, integer, boolean). Output parameters which are arrays in the Execution Object Model (XOM) are expanded in individual fields for each array element. For example, for an output parameter "children" which is an array of length 2: myRuleApp.myRuleset.out.0.children, myRuleApp.myRuleset.out.1.children Output parameters are only included if the ruleset property bai.emitter.output is set to true (default: false). |
trace.rule.names | The names of the executed rules | Optional | JSON array of strings. The elements are the names of the executed rules. Present in the time series by default. Can be excluded by setting the ruleset property bai.emitter.trace to false (default: true). |
trace.task.names | The names of the executed tasks | Optional | JSON array of strings. The elements are the names of the executed tasks. Present in the time series by default. Can be excluded by setting the ruleset property bai.emitter.trace to false (default: true). |
trace.task.durations | The durations of the executed tasks, in milliseconds | Optional | JSON array object. The elements are the JSON serialization of the decisions events. Present in the time series by default. Can be excluded by setting the ruleset property bai.emitter.trace to false (default: true). |
Example of decisions time series event
{
"version":"1.0.1",
"id":"D052B561-0000-C0F4-B5AE-26C293E11327",
"timestamp":"2018-07-16T17:25:59.178Z",
"type":"EXECUTION_SUCCESS",
"odmType":"ruleset",
"rulesetPath":"/loanvalidation/1.0/loanvalidationrules/1.0",
"duration":725,
"data":{
"loanvalidation.loanvalidationrules.in.borrower.firstName":[
"John",
"Emilien"
],
"loanvalidation.loanvalidationrules.in.borrower.lastName":"Doe",
"loanvalidation.loanvalidationrules.in.borrower.yearlyIncome":100000,
"loanvalidation.loanvalidationrules.in.borrower.zipCode":"91320",
"loanvalidation.loanvalidationrules.in.borrower.creditScore":3,
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.firstName":[
"Maria",
"Christina"
],
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.lastName":"Doe",
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.yearlyIncome":0,
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.zipCode":null,
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.creditScore":0,
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.spouse":null,
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.ssn.0.areaNumber":"987",
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.ssn.0.groupCode":"6",
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.ssn.0.serialNumber":"1",
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.ssn.1.areaNumber":"987",
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.ssn.1.groupCode":"6",
"loanvalidation.loanvalidationrules.in.borrower.spouse.0.ssn.1.serialNumber":"2",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.firstName":[
"Alexandra",
"Sandra"
],
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.lastName":"Doe",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.yearlyIncome":0,
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.zipCode":null,
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.creditScore":0,
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.spouse":null,
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.ssn.0.areaNumber":"988",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.ssn.0.groupCode":"160",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.ssn.0.serialNumber":"1",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.ssn.1.areaNumber":"988",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.ssn.1.groupCode":"160",
"loanvalidation.loanvalidationrules.in.borrower.spouse.1.ssn.1.serialNumber":"2",
"loanvalidation.loanvalidationrules.in.borrower.ssn.0.areaNumber":"123",
"loanvalidation.loanvalidationrules.in.borrower.ssn.0.groupCode":"45",
"loanvalidation.loanvalidationrules.in.borrower.ssn.0.serialNumber":"6789",
"loanvalidation.loanvalidationrules.in.borrower.ssn.1.areaNumber":"123",
"loanvalidation.loanvalidationrules.in.borrower.ssn.1.groupCode":"45",
"loanvalidation.loanvalidationrules.in.borrower.ssn.1.serialNumber":"6790",
"loanvalidation.loanvalidationrules.in.loan.numberOfMonthlyPayments":72,
"loanvalidation.loanvalidationrules.in.loan.startDate":1117576800000,
"loanvalidation.loanvalidationrules.in.loan.amount":100000,
"loanvalidation.loanvalidationrules.in.loan.loanToValue":0.7,
"loanvalidation.loanvalidationrules.out.report.borrower.firstName":"John",
"loanvalidation.loanvalidationrules.out.report.borrower.lastName":"Doe",
"loanvalidation.loanvalidationrules.out.report.borrower.yearlyIncome":100000,
"loanvalidation.loanvalidationrules.out.report.borrower.zipCode":"91320",
"loanvalidation.loanvalidationrules.out.report.borrower.creditScore":3,
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.firstName":"Maria",
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.lastName":"Doe",
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.yearlyIncome":0,
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.zipCode":null,
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.creditScore":0,
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.spouse":null,
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.ssn.areaNumber":"987",
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.ssn.groupCode":"6",
"loanvalidation.loanvalidationrules.out.report.borrower.spouse.ssn.serialNumber":"",
"loanvalidation.loanvalidationrules.out.report.borrower.ssn.areaNumber":"123",
"loanvalidation.loanvalidationrules.out.report.borrower.ssn.groupCode":"45",
"loanvalidation.loanvalidationrules.out.report.borrower.ssn.serialNumber":"6789",
"loanvalidation.loanvalidationrules.out.report.loan.numberOfMonthlyPayments":72,
"loanvalidation.loanvalidationrules.out.report.loan.startDate":1117576800000,
"loanvalidation.loanvalidationrules.out.report.loan.amount":100000,
"loanvalidation.loanvalidationrules.out.report.loan.loanToValue":0.7,
"loanvalidation.loanvalidationrules.out.report.validData":true,
"loanvalidation.loanvalidationrules.out.report.insuranceRequired":false,
"loanvalidation.loanvalidationrules.out.report.insuranceRate":0.0,
"loanvalidation.loanvalidationrules.out.report.approved":false,
"loanvalidation.loanvalidationrules.out.report.messages":[
" The loan amount is under the maximum authorized",
"Credit score below 200",
"We are sorry. Your loan has not been approved"
],
"loanvalidation.loanvalidationrules.out.report.yearlyInterestRate":0.057,
"loanvalidation.loanvalidationrules.out.report.monthlyRepayment":1643.16421407779,
"loanvalidation.loanvalidationrules.out.report.message":" The loan amount is under the maximum authorized\\nCredit score below 200\\nWe are sorry. Your loan has not been approved",
"loanvalidation.loanvalidationrules.out.report.insurance":"none",
"loanvalidation.loanvalidationrules.out.report.yearlyRepayment":19717.97056893348,
"loanvalidation.loanvalidationrules.out.score":"3",
"loanvalidation.loanvalidationrules.out.grade":"null"
},
"trace.task.names":[
"loanvalidation",
"loanvalidation#initResult",
"loanvalidation#validation",
"loanvalidation#computation",
"loanvalidation#eligibility"
],
"trace.task.durations":[
75,
0,
32,
15,
5
],
"trace.rule.names":[
"validation.borrower.checkSSNareanumber",
"validation.borrower.checkSSNdigits",
"validation.borrower.checkZipcode",
"validation.borrower.checkName",
"validation.borrower.checkAge",
"validation.loan.checkAmount",
"validation.test.checkTest",
"computation.initialCorporateScore",
"computation.bankruptcyScore_0",
"computation.salary2score_5",
"computation.rate_5",
"computation.repayment",
"eligibility.checkCreditScore",
"eligibility.approval"
]
}