@frontlinesystems/rason-mcp-server 2026.5.0 → 2026.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/LICENSE +35 -35
  2. package/README.md +1 -1
  3. package/examples/EXAMPLES_REFERENCE.md +128 -128
  4. package/examples/calculation/DMNExamples/DMN Box Fun with typeDef result.json +53 -53
  5. package/examples/calculation/DMNExamples/DMN Context example.json +69 -69
  6. package/examples/calculation/DMNExamples/DMN DT with typeDef result.json +43 -43
  7. package/examples/calculation/DMNExamples/FEEL Date Time example.json +28 -28
  8. package/examples/calculation/DMNExamples/FEEL For iteration example.json +66 -66
  9. package/examples/calculation/DMNExamples/FEEL For with two indices.json +15 -15
  10. package/examples/calculation/DMNExamples/FEEL For with typeDef result.json +88 -88
  11. package/examples/calculation/DMNExamples/FEEL If Then Else example.json +25 -25
  12. package/examples/calculation/DMNExamples/FEEL List example.json +37 -37
  13. package/examples/calculation/DMNExamples/FEEL List operator.json +17 -17
  14. package/examples/calculation/DMNExamples/FEEL List with typeDef collection.json +36 -36
  15. package/examples/calculation/DMNExamples/FEEL Some or Every example.json +65 -65
  16. package/examples/calculation/DecisionTables/DT Datasource example.json +52 -52
  17. package/examples/calculation/DecisionTables/DT Date and Time examples.json +91 -91
  18. package/examples/calculation/DecisionTables/DT Expression example.json +32 -32
  19. package/examples/calculation/DecisionTables/DT Hit Policy examples.json +136 -136
  20. package/examples/calculation/DecisionTables/DT Loan Recommend model.json +81 -81
  21. package/examples/calculation/DecisionTables/DT Loan Strategy Model and Predictive CSV-XML.json +218 -218
  22. package/examples/calculation/DecisionTables/DT Loan Strategy model and Datasource.json +286 -286
  23. package/examples/calculation/DecisionTables/DT Loan Strategy model and Predictive.json +203 -203
  24. package/examples/calculation/DecisionTables/DT Loan Strategy model by scratch.json +214 -214
  25. package/examples/calculation/DecisionTables/DT Output Order example.json +39 -39
  26. package/examples/calculation/DecisionTables/DT Unique example.json +38 -38
  27. package/examples/calculation/TypeDefinitions/TypeDefCF.json +64 -64
  28. package/examples/calculation/TypeDefinitions/TypeDefDT.json +57 -57
  29. package/examples/datamining/AffinityAnalysis/AssociationRules.json +51 -51
  30. package/examples/datamining/Classification/DecisionTree.json +90 -90
  31. package/examples/datamining/Classification/DiscriminantAnalysis.json +81 -81
  32. package/examples/datamining/Classification/Ensembles/Bagging.json +66 -66
  33. package/examples/datamining/Classification/Ensembles/Boosting.json +67 -67
  34. package/examples/datamining/Classification/Ensembles/RandomTrees.json +91 -91
  35. package/examples/datamining/Classification/FindBestModel.json +86 -86
  36. package/examples/datamining/Classification/LogisticRegression.json +82 -82
  37. package/examples/datamining/Classification/NaiveBayes.json +78 -78
  38. package/examples/datamining/Classification/NearestNeighbors.json +84 -84
  39. package/examples/datamining/Classification/NeuralNetwork.json +92 -92
  40. package/examples/datamining/Clustering/Hierarchical.json +54 -54
  41. package/examples/datamining/Clustering/KMeans.json +71 -71
  42. package/examples/datamining/DataSources/DelimitedFile.json +49 -49
  43. package/examples/datamining/DataSources/JSONFile.json +49 -49
  44. package/examples/datamining/DataSources/MSAccessDatabase.json +49 -49
  45. package/examples/datamining/DataSources/MSExcelTable.json +50 -50
  46. package/examples/datamining/DataSources/MSSQLDatabase.json +49 -49
  47. package/examples/datamining/DataSources/ODATATable.json +49 -49
  48. package/examples/datamining/DataSources/ODBCDatabase.json +49 -49
  49. package/examples/datamining/FeatureSelection/LinearWrapping.json +53 -53
  50. package/examples/datamining/FeatureSelection/LogisticWrapping.json +56 -56
  51. package/examples/datamining/FeatureSelection/Univariate.json +78 -78
  52. package/examples/datamining/Regression/DecisionTree.json +82 -82
  53. package/examples/datamining/Regression/Ensembles/Bagging.json +62 -62
  54. package/examples/datamining/Regression/Ensembles/Boosting.json +62 -62
  55. package/examples/datamining/Regression/Ensembles/RandomTrees.json +78 -78
  56. package/examples/datamining/Regression/FindBestModel.json +86 -86
  57. package/examples/datamining/Regression/LinearRegression.json +124 -124
  58. package/examples/datamining/Regression/NearestNeighbors.json +77 -77
  59. package/examples/datamining/Regression/NeuralNetwork.json +82 -82
  60. package/examples/datamining/Scoring/JSONClassifier.json +62 -62
  61. package/examples/datamining/Scoring/JSONClassifierNN.json +62 -62
  62. package/examples/datamining/Scoring/JSONClusterizer.json +37 -37
  63. package/examples/datamining/Scoring/JSONForecaster.json +49 -49
  64. package/examples/datamining/Scoring/JSONLinearRegression.json +56 -56
  65. package/examples/datamining/Scoring/JSONPCA.json +41 -41
  66. package/examples/datamining/Scoring/JSONRegressor.json +56 -56
  67. package/examples/datamining/Scoring/JSONTransformer.json +38 -38
  68. package/examples/datamining/Scoring/PMMLClassifier.json +42 -42
  69. package/examples/datamining/Scoring/PMMLForecaster.json +43 -43
  70. package/examples/datamining/Scoring/PMMLRegressor.json +38 -38
  71. package/examples/datamining/Scoring/PMMLTransformer.json +38 -38
  72. package/examples/datamining/Simulation/LinearRegressionSimulation.json +117 -117
  73. package/examples/datamining/Simulation/SyntheticDataGeneration.json +108 -108
  74. package/examples/datamining/Simulation/pmml-risk-scoring.json +62 -62
  75. package/examples/datamining/Summarizer/Summarization.json +54 -54
  76. package/examples/datamining/TextMining/LatentSemanticAnalysis.json +51 -51
  77. package/examples/datamining/TextMining/TfIdf-FileData.json +65 -65
  78. package/examples/datamining/TextMining/TfIdf-InlineData.json +55 -55
  79. package/examples/datamining/TimeSeries/AddHoltWinters.json +79 -79
  80. package/examples/datamining/TimeSeries/Arima.json +74 -74
  81. package/examples/datamining/TimeSeries/DoubleExponential.json +65 -65
  82. package/examples/datamining/TimeSeries/Exponential.json +64 -64
  83. package/examples/datamining/TimeSeries/LagAnalysis.json +48 -48
  84. package/examples/datamining/TimeSeries/MovingAverage.json +65 -65
  85. package/examples/datamining/TimeSeries/MulHoltWinters.json +65 -65
  86. package/examples/datamining/TimeSeries/NoTrendHoltWinters.json +65 -65
  87. package/examples/datamining/Transformation/Binning.json +69 -69
  88. package/examples/datamining/Transformation/CanonicalVariateAnalysis.json +47 -47
  89. package/examples/datamining/Transformation/CategoryReduction.json +51 -51
  90. package/examples/datamining/Transformation/Factorization.json +50 -50
  91. package/examples/datamining/Transformation/MissingDataHandling.json +83 -83
  92. package/examples/datamining/Transformation/OneHotEncoding-DataInline.json +54 -54
  93. package/examples/datamining/Transformation/OneHotEncoding-DatainFile.json +48 -48
  94. package/examples/datamining/Transformation/PartitionTimeSeries.json +48 -48
  95. package/examples/datamining/Transformation/Partitioning-DF.json +72 -72
  96. package/examples/datamining/Transformation/Partitioning.json +46 -46
  97. package/examples/datamining/Transformation/PartitioningWithOversampling-DF.json +65 -65
  98. package/examples/datamining/Transformation/PartitioningWithOversampling.json +44 -44
  99. package/examples/datamining/Transformation/PrincipalComponentsAnalysis.json +52 -52
  100. package/examples/datamining/Transformation/Rescaling.json +67 -67
  101. package/examples/datamining/Transformation/Sampling.json +43 -43
  102. package/examples/datamining/Transformation/StratifiedSampling.json +46 -46
  103. package/examples/flow/SQLServerTransform.json +260 -260
  104. package/examples/flow/dm-calc-pipeline.json +277 -277
  105. package/examples/flow/dm-pipeline-simulation.json +113 -113
  106. package/examples/flow/opt-sim-pipeline.json +159 -159
  107. package/examples/flow/sim-dm-pipeline.json +106 -106
  108. package/examples/flow/sim-sim-pipeline.json +136 -136
  109. package/examples/index.json +4678 -4678
  110. package/examples/{Optimization → optimization}/Conic/AirlineHubConic.json +111 -111
  111. package/examples/{Optimization → optimization}/Conic/AirlineHubConic2.json +108 -108
  112. package/examples/{Optimization → optimization}/Conic/AirlineHubConic3.json +111 -111
  113. package/examples/{Optimization → optimization}/Conic/AirlineHubConic4.json +99 -99
  114. package/examples/{Optimization → optimization}/Conic/AirlineHubConic5.json +101 -101
  115. package/examples/{Optimization → optimization}/DataBinding/ProductMixCsv.json +81 -81
  116. package/examples/{Optimization → optimization}/DataBinding/ProductMixCsv4.json +96 -96
  117. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel.json +73 -73
  118. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel1.json +86 -86
  119. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel11.json +108 -108
  120. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel2.json +77 -77
  121. package/examples/{Optimization → optimization}/DataBinding/ProductMixTab.json +89 -89
  122. package/examples/{Optimization → optimization}/DataBinding/ProductMixTab1.json +73 -73
  123. package/examples/{Optimization → optimization}/DataBinding/ProductMixTab2.json +77 -77
  124. package/examples/{Optimization → optimization}/Linear/Inventory.json +199 -199
  125. package/examples/{Optimization → optimization}/Linear/Matop.json +119 -119
  126. package/examples/{Optimization → optimization}/Linear/ProductMix.json +97 -97
  127. package/examples/{Optimization → optimization}/Linear/ProductMix2.json +72 -72
  128. package/examples/{Optimization → optimization}/Linear/ProductMix3.json +49 -49
  129. package/examples/{Optimization → optimization}/Linear/ProductMix4.json +56 -56
  130. package/examples/{Optimization → optimization}/Linear/ProductMixCsv1.json +106 -106
  131. package/examples/{Optimization → optimization}/Linear/ProductMixCsv2.json +106 -106
  132. package/examples/{Optimization → optimization}/Linear/ProductMixSQL11.json +82 -82
  133. package/examples/{Optimization → optimization}/Linear/Rowop.json +126 -126
  134. package/examples/{Optimization → optimization}/NonLinear/AirlineHub.json +63 -63
  135. package/examples/{Optimization → optimization}/NonLinear/AirlineHub2.json +47 -47
  136. package/examples/{Optimization → optimization}/NonLinear/AirlineHub3.json +47 -47
  137. package/examples/{Optimization → optimization}/NonSmooth/Inventory2.json +159 -159
  138. package/examples/{Optimization → optimization}/Quadratic/PortfolioOpt.json +55 -55
  139. package/examples/{Optimization → optimization}/Quadratic/PortfolioOpt2.json +65 -65
  140. package/examples/{Optimization → optimization}/WithUncertainty/GasCompanyChance.json +78 -78
  141. package/examples/{Optimization → optimization}/WithUncertainty/GasCompanyRecourse.json +78 -78
  142. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect.json +77 -77
  143. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect2.json +81 -81
  144. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect3.json +84 -84
  145. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect4.json +74 -74
  146. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/DataFiltering/ListwithFilter.json +52 -52
  147. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/ProductMix5.json +57 -57
  148. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/compoundWhileStatement.json +35 -35
  149. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/ifThenElseStatement.json +33 -33
  150. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/nestedLoop.json +25 -25
  151. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/ParallelArray.json +47 -47
  152. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/indexedArray.json +69 -69
  153. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/nonParallelArray.json +49 -49
  154. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/sumAggregateExample.json +337 -337
  155. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/tsp.json +61 -61
  156. package/examples/rason-features/BoxIterators/Box_Fun_Loop_Iter_Sim_RASON.json +190 -190
  157. package/examples/rason-features/BoxIterators/Box_Fun_Loop_Sim_RASON.json +75 -75
  158. package/examples/rason-features/BoxIterators/Box_Fun_Sim_RASON.json +108 -108
  159. package/examples/rason-features/BoxIterators/Box_Iter_SIM_RASON.json +68 -68
  160. package/examples/rason-features/BoxIterators/Box_Iterator_Calc_Loop.json +183 -183
  161. package/examples/rason-features/BoxIterators/Box_Iterator_with_typeDef_partial.json +79 -79
  162. package/examples/rason-features/BoxLambdaExamples/BoxFunOptimize.json +154 -154
  163. package/examples/rason-features/BoxLambdaExamples/BoxFunSimulate.json +118 -118
  164. package/examples/rason-features/BoxLambdaExamples/LambdaFunOptimize.json +142 -142
  165. package/examples/rason-features/BoxLambdaExamples/LambdaFunSimulate.json +81 -81
  166. package/examples/rason-features/ReferenceGuide/RGFirehouseLocation.json +69 -69
  167. package/examples/rason-features/ReferenceGuide/RGFirehouseLocationConic.json +113 -113
  168. package/examples/rason-features/ReferenceGuide/RGProductMixCsv1.json +107 -107
  169. package/examples/rason-features/ReferenceGuide/RGProductMixExcel11.json +117 -117
  170. package/examples/rason-features/ReferenceGuide/RGProductMixSQL11.json +108 -108
  171. package/examples/rason-features/UserGuide/UGAirlineHubCSV.json +67 -67
  172. package/examples/rason-features/UserGuide/UGForecast.json +50 -50
  173. package/examples/rason-features/UserGuide/UGProductMix1.json +48 -48
  174. package/examples/rason-features/UserGuide/UGProductMix2.json +48 -48
  175. package/examples/rason-features/UserGuide/UGProductMixTab1.json +67 -67
  176. package/examples/rason-features/UserGuide/UGProductMixTab2.json +76 -76
  177. package/examples/rason-features/UserGuide/UGProductMixTab3.json +66 -66
  178. package/examples/rason-features/UserGuide/UGProductMixTab4.json +70 -70
  179. package/examples/rason-features/UserGuide/UGProductMixTab5.json +67 -67
  180. package/examples/rason-features/UserGuide/UGProjectSelect0.json +91 -91
  181. package/examples/rason-features/UserGuide/UGProjectSelect1.json +74 -74
  182. package/examples/rason-features/UserGuide/UGProjectSelect2.json +74 -74
  183. package/examples/rason-features/UserGuide/UGYieldManagement1.json +61 -61
  184. package/examples/rason-features/UserGuide/UGYieldManagement2.json +61 -61
  185. package/examples/rason-features/UserGuide/UGYieldManagement3.json +63 -63
  186. package/examples/{Simulation → simulation}/CandyStoreSalesUsingSIP.json +147 -147
  187. package/examples/{Simulation → simulation}/CollegeFundGrowth1.json +423 -423
  188. package/examples/{Simulation → simulation}/CollegeFundGrowth1SIPModel.json +27 -27
  189. package/examples/{Simulation → simulation}/CollegeFundGrowth2.json +415 -415
  190. package/examples/{Simulation → simulation}/CollegeFundGrowthSIP.json +401 -401
  191. package/examples/{Simulation → simulation}/GBMSimulationModel.json +236 -236
  192. package/examples/{Simulation → simulation}/YieldManagement(Sim).json +69 -69
  193. package/examples/{Simulation → simulation}/YieldManagement2(Sim).json +72 -72
  194. package/out/index.cjs +38 -38
  195. package/package.json +2 -2
@@ -1,69 +1,69 @@
1
- {
2
- "modelName": "DMN_Context_Example",
3
- "modelDescription": "Example of Context in Excel",
4
- "modelType": "calculation",
5
- "typeDefs": {
6
- "tLoan": {
7
- "language": "Feel",
8
- "components": {
9
- "principal": {
10
- "type": "number",
11
- "allowedValues": [ ">0" ]
12
- },
13
- "rate": {
14
- "type": "number",
15
- "allowedValues": [ "[0..1]" ]
16
- },
17
- "termMonths": {
18
- "type": "number",
19
- "allowedValues": [ ">0" ]
20
- }
21
- }
22
- }
23
- },
24
- "data": {
25
- "loan": {
26
- "type": "tLoan",
27
- "value": [ 600000, 0.0375, 360 ],
28
- "binding": "get"
29
- }
30
- },
31
- "contexts": {
32
- "cPmt": {
33
- "language": "Feel",
34
- "components": {
35
- "payment": {
36
- "type": "number",
37
- "formula": "(loan.principal*loan.rate/12) / (1 - (1 + loan.rate/12)**-loan.termMonths)"
38
- },
39
- "fee": {
40
- "type": "number",
41
- "value": 10
42
- },
43
- "total": {
44
- "type": "number",
45
- "formula": "payment + fee"
46
- }
47
- }
48
- }
49
- },
50
- "formulas": {
51
- "MonthPayment1": {
52
- "feelFormula": "cPmt.payment",
53
- "finalValue": []
54
- },
55
- "MonthPayment2": {
56
- "feelFormula": "getValue(cPmt, 'payment')",
57
- "finalValue": []
58
- },
59
- "TotalPayment1": {
60
- "feelFormula": "cPmt.payment + cPmt.fee",
61
- "finalValue": []
62
- },
63
- "TotalPayment2": {
64
- "feelFormula": "cPmt",
65
- "finalValue": [],
66
- "comment": "assume all components when '.' is missing"
67
- }
68
- }
69
- }
1
+ {
2
+ "modelName": "DMN_Context_Example",
3
+ "modelDescription": "Example of Context in Excel",
4
+ "modelType": "calculation",
5
+ "typeDefs": {
6
+ "tLoan": {
7
+ "language": "Feel",
8
+ "components": {
9
+ "principal": {
10
+ "type": "number",
11
+ "allowedValues": [ ">0" ]
12
+ },
13
+ "rate": {
14
+ "type": "number",
15
+ "allowedValues": [ "[0..1]" ]
16
+ },
17
+ "termMonths": {
18
+ "type": "number",
19
+ "allowedValues": [ ">0" ]
20
+ }
21
+ }
22
+ }
23
+ },
24
+ "data": {
25
+ "loan": {
26
+ "type": "tLoan",
27
+ "value": [ 600000, 0.0375, 360 ],
28
+ "binding": "get"
29
+ }
30
+ },
31
+ "contexts": {
32
+ "cPmt": {
33
+ "language": "Feel",
34
+ "components": {
35
+ "payment": {
36
+ "type": "number",
37
+ "formula": "(loan.principal*loan.rate/12) / (1 - (1 + loan.rate/12)**-loan.termMonths)"
38
+ },
39
+ "fee": {
40
+ "type": "number",
41
+ "value": 10
42
+ },
43
+ "total": {
44
+ "type": "number",
45
+ "formula": "payment + fee"
46
+ }
47
+ }
48
+ }
49
+ },
50
+ "formulas": {
51
+ "MonthPayment1": {
52
+ "feelFormula": "cPmt.payment",
53
+ "finalValue": []
54
+ },
55
+ "MonthPayment2": {
56
+ "feelFormula": "getValue(cPmt, 'payment')",
57
+ "finalValue": []
58
+ },
59
+ "TotalPayment1": {
60
+ "feelFormula": "cPmt.payment + cPmt.fee",
61
+ "finalValue": []
62
+ },
63
+ "TotalPayment2": {
64
+ "feelFormula": "cPmt",
65
+ "finalValue": [],
66
+ "comment": "assume all components when '.' is missing"
67
+ }
68
+ }
69
+ }
@@ -1,43 +1,43 @@
1
- {
2
- "modelName": "DMN_DT_with_TypeDef_Result",
3
- "modelDescription": "Decision Table model uses TypeDefs for all inputs/outputs.",
4
- "modelType": "calculation",
5
- "typeDefs": {
6
- "tParkingFee": {
7
- "language": "FEEL",
8
- "components": [ "parkingFee", "durVal" ],
9
- "types": [ "number", "duration" ]
10
- }
11
- },
12
- "decisionTables": {
13
- "tblParkingFee": {
14
- "inputs": [ "dtDuration" ],
15
- "outputs": [ "durVal", "parkingFee" ],
16
- "refTypes": [ "duration", "duration", "number" ],
17
- "rules": [
18
- [ "<'PT20M'", "duration(dtDuration)", 0 ],
19
- [ "['PT20M'..'PT1H')", "duration(dtDuration)", "2 *ceiling(duration(dtDuration)/duration('PT20M'))" ],
20
- [ "['PT1H'..'PT4H')", "duration(dtDuration)", "6 *ceiling(duration(dtDuration)/duration('PT1H'))" ],
21
- [ ">='PT4H'", "duration(dtDuration)", "30*ceiling(duration(dtDuration)/duration('P1D'))" ]
22
- ],
23
- "hitPolicy": "U",
24
- "resultType": "tParkingFee"
25
- }
26
- },
27
- "data": {
28
- "dur": {
29
- "value": "PT25M",
30
- "comment": "period"
31
- }
32
- },
33
- "formulas": {
34
- "fee": {
35
- "feelFormula": "tblParkingFee(,,dur)",
36
- "finalValue": []
37
- },
38
- "res": {
39
- "feelFormula": "fee.durVal.minutes",
40
- "finalValue": []
41
- }
42
- }
43
- }
1
+ {
2
+ "modelName": "DMN_DT_with_TypeDef_Result",
3
+ "modelDescription": "Decision Table model uses TypeDefs for all inputs/outputs.",
4
+ "modelType": "calculation",
5
+ "typeDefs": {
6
+ "tParkingFee": {
7
+ "language": "FEEL",
8
+ "components": [ "parkingFee", "durVal" ],
9
+ "types": [ "number", "duration" ]
10
+ }
11
+ },
12
+ "decisionTables": {
13
+ "tblParkingFee": {
14
+ "inputs": [ "dtDuration" ],
15
+ "outputs": [ "durVal", "parkingFee" ],
16
+ "refTypes": [ "duration", "duration", "number" ],
17
+ "rules": [
18
+ [ "<'PT20M'", "duration(dtDuration)", 0 ],
19
+ [ "['PT20M'..'PT1H')", "duration(dtDuration)", "2 *ceiling(duration(dtDuration)/duration('PT20M'))" ],
20
+ [ "['PT1H'..'PT4H')", "duration(dtDuration)", "6 *ceiling(duration(dtDuration)/duration('PT1H'))" ],
21
+ [ ">='PT4H'", "duration(dtDuration)", "30*ceiling(duration(dtDuration)/duration('P1D'))" ]
22
+ ],
23
+ "hitPolicy": "U",
24
+ "resultType": "tParkingFee"
25
+ }
26
+ },
27
+ "data": {
28
+ "dur": {
29
+ "value": "PT25M",
30
+ "comment": "period"
31
+ }
32
+ },
33
+ "formulas": {
34
+ "fee": {
35
+ "feelFormula": "tblParkingFee(,,dur)",
36
+ "finalValue": []
37
+ },
38
+ "res": {
39
+ "feelFormula": "fee.durVal.minutes",
40
+ "finalValue": []
41
+ }
42
+ }
43
+ }
@@ -1,28 +1,28 @@
1
- {
2
- "modelName": "FEEL_Date_Time_Example",
3
- "modelDescription": "Example of specific Date/Time FEEL operations",
4
- "modelType": "calculation",
5
- "data": {
6
- "D": {
7
- "value": "'2021-05-31'"
8
- }
9
- },
10
- "formulas": {
11
- "dow": {
12
- "feelFormula": "dayOfWeek(D)",
13
- "finalValue": []
14
- },
15
- "doy": {
16
- "feelFormula": "dayOfYear(D)",
17
- "finalValue": []
18
- },
19
- "moy": {
20
- "feelFormula": "monthOfYear(D)",
21
- "finalValue": []
22
- },
23
- "woy": {
24
- "feelFormula": "weekOfYear(D)",
25
- "finalValue": []
26
- }
27
- }
28
- }
1
+ {
2
+ "modelName": "FEEL_Date_Time_Example",
3
+ "modelDescription": "Example of specific Date/Time FEEL operations",
4
+ "modelType": "calculation",
5
+ "data": {
6
+ "D": {
7
+ "value": "'2021-05-31'"
8
+ }
9
+ },
10
+ "formulas": {
11
+ "dow": {
12
+ "feelFormula": "dayOfWeek(D)",
13
+ "finalValue": []
14
+ },
15
+ "doy": {
16
+ "feelFormula": "dayOfYear(D)",
17
+ "finalValue": []
18
+ },
19
+ "moy": {
20
+ "feelFormula": "monthOfYear(D)",
21
+ "finalValue": []
22
+ },
23
+ "woy": {
24
+ "feelFormula": "weekOfYear(D)",
25
+ "finalValue": []
26
+ }
27
+ }
28
+ }
@@ -1,66 +1,66 @@
1
- {
2
- "modelName": "FEEL_For_Iteration_Example",
3
- "comment": "Example of 'for' iteration in FEEL",
4
- "modelType": "calculation",
5
- "typeDefs": {
6
- "tLoan": {
7
- "components": {
8
- "principal": {
9
- "type": "number",
10
- "allowedValues": [ ">0" ]
11
- },
12
- "rate": {
13
- "type": "number",
14
- "allowedValues": [ "[0..1]" ]
15
- },
16
- "termMonths": {
17
- "type": "number",
18
- "allowedValues": [ ">0" ]
19
- }
20
- },
21
- "language": "Feel"
22
- },
23
- "tLoanList": {
24
- "language": "Feel",
25
- "typeRef": "tLoan",
26
- "isCollection": true
27
- }
28
- },
29
- "boxFunctions": {
30
- "funPMT": {
31
- "inputs": [ "loan" ],
32
- "inputTypes": [ "tLoan" ],
33
- "language": "Feel",
34
- "resultType": "number",
35
- "body": {
36
- "payment": {
37
- "formula": "(loan.principal*loan.rate/12) / (1 - (1 + loan.rate/12)**-loan.termMonths)"
38
- },
39
- "fee": {
40
- "formula": "0.01 * payment"
41
- }
42
- },
43
- "result": "payment + fee"
44
- }
45
- },
46
- "data": {
47
- "loans": {
48
- "type": "tLoanList",
49
- "value": [
50
- [ 600000, 0.0375, 360 ],
51
- [ 100000, 0.0375, 360 ]
52
- ],
53
- "binding": "get"
54
- }
55
- },
56
- "formulas": {
57
- "MonthlyPayment": {
58
- "feelFormula": "for i in loans return funPMT(i)",
59
- "finalValue": []
60
- },
61
- "LimitedPayment": {
62
- "feelFormula": "for i in loans return if (i.principal <= 100000) then 0 else funPMT(i)",
63
- "finalValue": []
64
- }
65
- }
66
- }
1
+ {
2
+ "modelName": "FEEL_For_Iteration_Example",
3
+ "comment": "Example of 'for' iteration in FEEL",
4
+ "modelType": "calculation",
5
+ "typeDefs": {
6
+ "tLoan": {
7
+ "components": {
8
+ "principal": {
9
+ "type": "number",
10
+ "allowedValues": [ ">0" ]
11
+ },
12
+ "rate": {
13
+ "type": "number",
14
+ "allowedValues": [ "[0..1]" ]
15
+ },
16
+ "termMonths": {
17
+ "type": "number",
18
+ "allowedValues": [ ">0" ]
19
+ }
20
+ },
21
+ "language": "Feel"
22
+ },
23
+ "tLoanList": {
24
+ "language": "Feel",
25
+ "typeRef": "tLoan",
26
+ "isCollection": true
27
+ }
28
+ },
29
+ "boxFunctions": {
30
+ "funPMT": {
31
+ "inputs": [ "loan" ],
32
+ "inputTypes": [ "tLoan" ],
33
+ "language": "Feel",
34
+ "resultType": "number",
35
+ "body": {
36
+ "payment": {
37
+ "formula": "(loan.principal*loan.rate/12) / (1 - (1 + loan.rate/12)**-loan.termMonths)"
38
+ },
39
+ "fee": {
40
+ "formula": "0.01 * payment"
41
+ }
42
+ },
43
+ "result": "payment + fee"
44
+ }
45
+ },
46
+ "data": {
47
+ "loans": {
48
+ "type": "tLoanList",
49
+ "value": [
50
+ [ 600000, 0.0375, 360 ],
51
+ [ 100000, 0.0375, 360 ]
52
+ ],
53
+ "binding": "get"
54
+ }
55
+ },
56
+ "formulas": {
57
+ "MonthlyPayment": {
58
+ "feelFormula": "for i in loans return funPMT(i)",
59
+ "finalValue": []
60
+ },
61
+ "LimitedPayment": {
62
+ "feelFormula": "for i in loans return if (i.principal <= 100000) then 0 else funPMT(i)",
63
+ "finalValue": []
64
+ }
65
+ }
66
+ }
@@ -1,16 +1,16 @@
1
- {
2
- "modelName": "FEEL_for_with_two_indices",
3
- "modelDescription": "FEEL 'for' iteration example with two indices",
4
- "modelType": "calculation",
5
- "data": {
6
- "myList": {
7
- "value": [ 3, 2, 1 ]
8
- }
9
- },
10
- "formulas": {
11
- "res": {
12
- "feelFormula": "for i in 1..count(myList), j in myList return i + j",
13
- "finalValue": []
14
- }
15
- }
1
+ {
2
+ "modelName": "FEEL_for_with_two_indices",
3
+ "modelDescription": "FEEL 'for' iteration example with two indices",
4
+ "modelType": "calculation",
5
+ "data": {
6
+ "myList": {
7
+ "value": [ 3, 2, 1 ]
8
+ }
9
+ },
10
+ "formulas": {
11
+ "res": {
12
+ "feelFormula": "for i in 1..count(myList), j in myList return i + j",
13
+ "finalValue": []
14
+ }
15
+ }
16
16
  }
@@ -1,88 +1,88 @@
1
- {
2
- "modelName": "FEEL_For_with_TypeDef_result",
3
- "modelDescription": "Example of 'for' iteration in FEEL",
4
- "modelType": "calculation",
5
- "typeDefs": {
6
- "tLoan": {
7
- "components": {
8
- "principal": {
9
- "type": "number",
10
- "allowedValues": [ ">0" ]
11
- },
12
- "rate": {
13
- "type": "number",
14
- "allowedValues": [ "[0..1]" ]
15
- },
16
- "termMonths": {
17
- "type": "number",
18
- "allowedValues": [ ">0" ]
19
- }
20
- },
21
- "language": "Feel"
22
- },
23
- "tLoanList": {
24
- "language": "Feel",
25
- "typeRef": "tLoan",
26
- "isCollection": true
27
- },
28
- "tPayment": {
29
- "components": {
30
- "payment": {
31
- "type": "number"
32
- },
33
- "fee": {
34
- "type": "number"
35
- },
36
- "total": {
37
- "type": "number"
38
- }
39
- },
40
- "language": "Feel"
41
- },
42
- "tPaymentList": {
43
- "language": "Feel",
44
- "typeRef": "tPayment",
45
- "isCollection": true
46
- }
47
- },
48
- "boxFunctions": {
49
- "funPMT": {
50
- "inputs": [ "loan" ],
51
- "inputTypes": [ "tLoan" ],
52
- "language": "Feel",
53
- "resultType": "tPayment",
54
- "body": {
55
- "payment": {
56
- "formula": "(loan.principal*loan.rate/12) / (1 - (1 + loan.rate/12)**-loan.termMonths)"
57
- },
58
- "fee": {
59
- "formula": "0.01 * payment"
60
- },
61
- "total": {
62
- "formula": "payment + fee"
63
- }
64
- },
65
- "result": "0"
66
- }
67
- },
68
- "data": {
69
- "loans": {
70
- "type": "tLoanList",
71
- "value": [
72
- [ 600000, 0.0375, 360 ],
73
- [ 100000, 0.0375, 360 ]
74
- ],
75
- "binding": "get"
76
- }
77
- },
78
- "formulas": {
79
- "MonthlyPayment": {
80
- "feelFormula": "for i in loans return funPMT(i)",
81
- "finalValue": []
82
- },
83
- "MonthlyTotal": {
84
- "feelFormula": "MonthlyPayment.total",
85
- "finalValue": []
86
- }
87
- }
88
- }
1
+ {
2
+ "modelName": "FEEL_For_with_TypeDef_result",
3
+ "modelDescription": "Example of 'for' iteration in FEEL",
4
+ "modelType": "calculation",
5
+ "typeDefs": {
6
+ "tLoan": {
7
+ "components": {
8
+ "principal": {
9
+ "type": "number",
10
+ "allowedValues": [ ">0" ]
11
+ },
12
+ "rate": {
13
+ "type": "number",
14
+ "allowedValues": [ "[0..1]" ]
15
+ },
16
+ "termMonths": {
17
+ "type": "number",
18
+ "allowedValues": [ ">0" ]
19
+ }
20
+ },
21
+ "language": "Feel"
22
+ },
23
+ "tLoanList": {
24
+ "language": "Feel",
25
+ "typeRef": "tLoan",
26
+ "isCollection": true
27
+ },
28
+ "tPayment": {
29
+ "components": {
30
+ "payment": {
31
+ "type": "number"
32
+ },
33
+ "fee": {
34
+ "type": "number"
35
+ },
36
+ "total": {
37
+ "type": "number"
38
+ }
39
+ },
40
+ "language": "Feel"
41
+ },
42
+ "tPaymentList": {
43
+ "language": "Feel",
44
+ "typeRef": "tPayment",
45
+ "isCollection": true
46
+ }
47
+ },
48
+ "boxFunctions": {
49
+ "funPMT": {
50
+ "inputs": [ "loan" ],
51
+ "inputTypes": [ "tLoan" ],
52
+ "language": "Feel",
53
+ "resultType": "tPayment",
54
+ "body": {
55
+ "payment": {
56
+ "formula": "(loan.principal*loan.rate/12) / (1 - (1 + loan.rate/12)**-loan.termMonths)"
57
+ },
58
+ "fee": {
59
+ "formula": "0.01 * payment"
60
+ },
61
+ "total": {
62
+ "formula": "payment + fee"
63
+ }
64
+ },
65
+ "result": "0"
66
+ }
67
+ },
68
+ "data": {
69
+ "loans": {
70
+ "type": "tLoanList",
71
+ "value": [
72
+ [ 600000, 0.0375, 360 ],
73
+ [ 100000, 0.0375, 360 ]
74
+ ],
75
+ "binding": "get"
76
+ }
77
+ },
78
+ "formulas": {
79
+ "MonthlyPayment": {
80
+ "feelFormula": "for i in loans return funPMT(i)",
81
+ "finalValue": []
82
+ },
83
+ "MonthlyTotal": {
84
+ "feelFormula": "MonthlyPayment.total",
85
+ "finalValue": []
86
+ }
87
+ }
88
+ }