addedOutput schema / $defs
Added value: +{
+ "Div7aGate": {
+ "additionalProperties": true,
+ "properties": {
+ "benchmark_rate": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Benchmark Rate"
+ },
+ "benchmark_year_used": {
+ "anyOf": [
+ {
+ "description": "Income or dataset year in YYYY-YY form.",
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine benchmark year, YYYY-YY, if known.",
+ "title": "Benchmark Year Used"
+ },
+ "caveats": {
+ "description": "Limitations to retain when presenting the result.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Caveats",
+ "type": "array"
+ },
+ "loan_id": {
+ "description": "Operator loan reference.",
+ "title": "Loan Id",
+ "type": "string"
+ },
+ "maximum_term_years_allowed": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Maximum Term Years Allowed"
+ },
+ "reasons": {
+ "description": "Engine reasons for the reported verdict.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Reasons",
+ "type": "array"
+ },
+ "verdict": {
+ "description": "Reviewed s 109N gate only; UNKNOWN never means false or compliant.",
+ "enum": [
+ "COMPLYING",
+ "NOT_COMPLYING",
+ "UNKNOWN"
+ ],
+ "title": "Verdict",
+ "type": "string"
+ }
+ },
+ "required": [
+ "verdict",
+ "loan_id",
+ "benchmark_year_used",
+ "benchmark_rate",
+ "maximum_term_years_allowed",
+ "reasons",
+ "caveats"
+ ],
+ "title": "Div7aGate",
+ "type": "object"
+ },
+ "Div7aRepayment": {
+ "additionalProperties": true,
+ "properties": {
+ "amalgamated_loan_unpaid_at_end_of_previous_year": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Amalgamated Loan Unpaid At End Of Previous Year"
+ },
+ "benchmark_rate": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Benchmark Rate"
+ },
+ "caveats": {
+ "description": "Limitations to retain when presenting the result.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Caveats",
+ "type": "array"
+ },
+ "experimental_deemed_dividend_exposure": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Experimental AUD exposure only, not an assessed dividend; null if unknown.",
+ "title": "Experimental Deemed Dividend Exposure"
+ },
+ "gate_verdict": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "s 109N gate outcome used in the repayment review.",
+ "title": "Gate Verdict"
+ },
+ "loan_id": {
+ "description": "Operator loan reference.",
+ "title": "Loan Id",
+ "type": "string"
+ },
+ "myr_required": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Required repayment in AUD; null if not determined.",
+ "title": "Myr Required"
+ },
+ "payments_applied": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Payments Applied"
+ },
+ "reasons": {
+ "description": "Engine reasons for the reported verdict.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Reasons",
+ "type": "array"
+ },
+ "remaining_term_years_used": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Remaining Term Years Used"
+ },
+ "rounding": {
+ "description": "Rounding rule reported by the engine.",
+ "title": "Rounding",
+ "type": "string"
+ },
+ "shortfall": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Shortfall"
+ },
+ "verdict": {
+ "description": "Engine s 109E outcome, including MYR_MET, MYR_SHORT, UNKNOWN or REFUSED.",
+ "title": "Verdict",
+ "type": "string"
+ },
+ "year_of_income": {
+ "description": "Income or dataset year in YYYY-YY form.",
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
+ "title": "Year Of Income",
+ "type": "string"
+ }
+ },
+ "required": [
+ "verdict",
+ "loan_id",
+ "year_of_income",
+ "gate_verdict",
+ "benchmark_rate",
+ "amalgamated_loan_unpaid_at_end_of_previous_year",
+ "remaining_term_years_used",
+ "myr_required",
+ "payments_applied",
+ "shortfall",
+ "experimental_deemed_dividend_exposure",
+ "rounding",
+ "reasons",
+ "caveats"
+ ],
+ "title": "Div7aRepayment",
+ "type": "object"
+ },
+ "GateFull": {
+ "additionalProperties": true,
+ "properties": {
+ "benchmark_provenance": {
+ "anyOf": [
+ {
+ "additionalProperties": true,
+ "description": "Unmodified engine source metadata and review provenance.",
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Benchmark Provenance"
+ },
+ "benchmark_rate": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Benchmark Rate"
+ },
+ "benchmark_year_used": {
+ "anyOf": [
+ {
+ "description": "Income or dataset year in YYYY-YY form.",
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine benchmark year, YYYY-YY, if known.",
+ "title": "Benchmark Year Used"
+ },
+ "caveats": {
+ "description": "Limitations to retain when presenting the result.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Caveats",
+ "type": "array"
+ },
+ "limbs": {
+ "description": "Individual s 109N findings.",
+ "items": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object"
+ },
+ "title": "Limbs",
+ "type": "array"
+ },
+ "loan_id": {
+ "description": "Operator loan reference.",
+ "title": "Loan Id",
+ "type": "string"
+ },
+ "maximum_term_years_allowed": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Maximum Term Years Allowed"
+ },
+ "reasons": {
+ "description": "Engine reasons for the reported verdict.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Reasons",
+ "type": "array"
+ },
+ "statutory_trace": {
+ "description": "Engine statutory citations and audit trace; full only.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Statutory Trace",
+ "type": "array"
+ },
+ "verdict": {
+ "description": "Reviewed s 109N gate only; UNKNOWN never means false or compliant.",
+ "enum": [
+ "COMPLYING",
+ "NOT_COMPLYING",
+ "UNKNOWN"
+ ],
+ "title": "Verdict",
+ "type": "string"
+ }
+ },
+ "required": [
+ "verdict",
+ "loan_id",
+ "benchmark_year_used",
+ "benchmark_rate",
+ "maximum_term_years_allowed",
+ "reasons",
+ "caveats",
+ "benchmark_provenance",
+ "limbs",
+ "statutory_trace"
+ ],
+ "title": "GateFull",
+ "type": "object"
+ },
+ "RepaymentFull": {
+ "additionalProperties": true,
+ "properties": {
+ "amalgamated_loan_unpaid_at_end_of_previous_year": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Amalgamated Loan Unpaid At End Of Previous Year"
+ },
+ "benchmark_provenance": {
+ "anyOf": [
+ {
+ "additionalProperties": true,
+ "description": "Unmodified engine source metadata and review provenance.",
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "title": "Benchmark Provenance"
+ },
+ "benchmark_rate": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Benchmark Rate"
+ },
+ "caveats": {
+ "description": "Limitations to retain when presenting the result.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Caveats",
+ "type": "array"
+ },
+ "experimental_deemed_dividend_exposure": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Experimental AUD exposure only, not an assessed dividend; null if unknown.",
+ "title": "Experimental Deemed Dividend Exposure"
+ },
+ "gate_verdict": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "s 109N gate outcome used in the repayment review.",
+ "title": "Gate Verdict"
+ },
+ "loan_id": {
+ "description": "Operator loan reference.",
+ "title": "Loan Id",
+ "type": "string"
+ },
+ "myr_required": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Required repayment in AUD; null if not determined.",
+ "title": "Myr Required"
+ },
+ "payments_applied": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Payments Applied"
+ },
+ "reasons": {
+ "description": "Engine reasons for the reported verdict.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Reasons",
+ "type": "array"
+ },
+ "remaining_term_years_used": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Remaining Term Years Used"
+ },
+ "rounding": {
+ "description": "Rounding rule reported by the engine.",
+ "title": "Rounding",
+ "type": "string"
+ },
+ "shortfall": {
+ "anyOf": [
+ {
+ "description": "Finite engine decimal string, including exponent notation; retain its precision.",
+ "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+-]?[0-9]+)?$",
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine decimal string, or null when unavailable; null is not zero.",
+ "title": "Shortfall"
+ },
+ "statutory_trace": {
+ "description": "Engine statutory citations and audit trace; full only.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Statutory Trace",
+ "type": "array"
+ },
+ "verdict": {
+ "description": "Engine s 109E outcome, including MYR_MET, MYR_SHORT, UNKNOWN or REFUSED.",
+ "title": "Verdict",
+ "type": "string"
+ },
+ "year_of_income": {
+ "description": "Income or dataset year in YYYY-YY form.",
+ "pattern": "^[0-9]{4}-[0-9]{2}$",
+ "title": "Year Of Income",
+ "type": "string"
+ }
+ },
+ "required": [
+ "verdict",
+ "loan_id",
+ "year_of_income",
+ "gate_verdict",
+ "benchmark_rate",
+ "amalgamated_loan_unpaid_at_end_of_previous_year",
+ "remaining_term_years_used",
+ "myr_required",
+ "payments_applied",
+ "shortfall",
+ "experimental_deemed_dividend_exposure",
+ "rounding",
+ "reasons",
+ "caveats",
+ "benchmark_provenance",
+ "statutory_trace"
+ ],
+ "title": "RepaymentFull",
+ "type": "object"
+ },
+ "ReviewFull": {
+ "additionalProperties": true,
+ "not": {
+ "required": [
+ "response_detail"
+ ]
+ },
+ "properties": {
+ "disclaimer": {
+ "description": "Experimental scope and human-review requirements.",
+ "title": "Disclaimer",
+ "type": "string"
+ },
+ "engine": {
+ "description": "Delegated distribution that produced this result.",
+ "title": "Engine",
+ "type": "string"
+ },
+ "engine_version": {
+ "description": "Installed version of that engine.",
+ "title": "Engine Version",
+ "type": "string"
+ },
+ "gate": {
+ "$ref": "#/$defs/GateFull",
+ "description": "s 109N gate with full audit fields."
+ },
+ "law_compilation": {
+ "description": "Compiled law identified by the engine.",
+ "title": "Law Compilation",
+ "type": "string"
+ },
+ "law_content_date": {
+ "description": "Date in YYYY-MM-DD form.",
+ "format": "date",
+ "pattern": "^[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12][0-9]|3[01])$",
+ "title": "Law Content Date",
+ "type": "string"
+ },
+ "minimum_yearly_repayment": {
+ "$ref": "#/$defs/RepaymentFull",
+ "description": "s 109E review with full audit fields."
+ },
+ "ok": {
+ "const": true,
+ "description": "The review ran; this does not mean compliance or a known verdict.",
+ "title": "Ok",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "ok",
+ "engine",
+ "engine_version",
+ "law_content_date",
+ "law_compilation",
+ "disclaimer",
+ "gate",
+ "minimum_yearly_repayment"
+ ],
+ "title": "ReviewFull",
+ "type": "object"
+ },
+ "ReviewSummary": {
+ "additionalProperties": true,
+ "properties": {
+ "disclaimer": {
+ "description": "Experimental scope and human-review requirements.",
+ "title": "Disclaimer",
+ "type": "string"
+ },
+ "engine": {
+ "description": "Delegated distribution that produced this result.",
+ "title": "Engine",
+ "type": "string"
+ },
+ "engine_version": {
+ "description": "Installed version of that engine.",
+ "title": "Engine Version",
+ "type": "string"
+ },
+ "gate": {
+ "$ref": "#/$defs/Div7aGate",
+ "description": "s 109N gate outcome and reasons."
+ },
+ "law_compilation": {
+ "description": "Compiled law identified by the engine.",
+ "title": "Law Compilation",
+ "type": "string"
+ },
+ "law_content_date": {
+ "description": "Date in YYYY-MM-DD form.",
+ "format": "date",
+ "pattern": "^[0-9]{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12][0-9]|3[01])$",
+ "title": "Law Content Date",
+ "type": "string"
+ },
+ "minimum_yearly_repayment": {
+ "$ref": "#/$defs/Div7aRepayment",
+ "description": "s 109E review or refusal."
+ },
+ "ok": {
+ "const": true,
+ "description": "The review ran; this does not mean compliance or a known verdict.",
+ "title": "Ok",
+ "type": "boolean"
+ },
+ "response_detail": {
+ "const": "summary",
+ "description": "Summary response marker.",
+ "title": "Response Detail",
+ "type": "string"
+ },
+ "source": {
+ "$ref": "#/$defs/VerificationSource",
+ "description": "Concise verification source."
+ }
+ },
+ "required": [
+ "ok",
+ "engine",
+ "engine_version",
+ "law_content_date",
+ "law_compilation",
+ "disclaimer",
+ "response_detail",
+ "source",
+ "gate",
+ "minimum_yearly_repayment"
+ ],
+ "title": "ReviewSummary",
+ "type": "object"
+ },
+ "VerificationSource": {
+ "additionalProperties": true,
+ "properties": {
+ "verify_at": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Engine verification URL; empty or null when none is available.",
+ "title": "Verify At"
+ }
+ },
+ "required": [
+ "verify_at"
+ ],
+ "title": "VerificationSource",
+ "type": "object"
+ }
+}