@sapui5/sap.rules.ui 1.94.0 → 1.98.0

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 (69) hide show
  1. package/package.json +1 -1
  2. package/src/sap/rules/ui/.library +1 -1
  3. package/src/sap/rules/ui/AstExpressionBasic.js +1 -1
  4. package/src/sap/rules/ui/AstExpressionBasicRenderer.js +4 -2
  5. package/src/sap/rules/ui/AutoCompleteSuggestionContentRenderer.js +4 -2
  6. package/src/sap/rules/ui/BindingSpy.js +5 -3
  7. package/src/sap/rules/ui/Constants.js +4 -2
  8. package/src/sap/rules/ui/DecisionTable.js +9 -7
  9. package/src/sap/rules/ui/DecisionTableCell.js +5 -3
  10. package/src/sap/rules/ui/DecisionTableCellAstExpressionBasic.js +5 -3
  11. package/src/sap/rules/ui/DecisionTableCellAstExpressionBasicRenderer.js +4 -2
  12. package/src/sap/rules/ui/DecisionTableCellExpressionAdvanced.js +5 -3
  13. package/src/sap/rules/ui/DecisionTableCellExpressionAdvancedRenderer.js +4 -2
  14. package/src/sap/rules/ui/DecisionTableCellExpressionBasic.js +5 -3
  15. package/src/sap/rules/ui/DecisionTableCellExpressionBasicRenderer.js +4 -2
  16. package/src/sap/rules/ui/DecisionTableCellRenderer.js +4 -2
  17. package/src/sap/rules/ui/DecisionTableConfiguration.js +5 -3
  18. package/src/sap/rules/ui/DecisionTableRenderer.js +4 -2
  19. package/src/sap/rules/ui/DecisionTableSettings.js +5 -3
  20. package/src/sap/rules/ui/DecisionTableSettingsOld.js +5 -3
  21. package/src/sap/rules/ui/DecisionTableSettingsOldRenderer.js +4 -2
  22. package/src/sap/rules/ui/DecisionTableSettingsRenderer.js +4 -2
  23. package/src/sap/rules/ui/ExpressionAdvanced.js +4 -2
  24. package/src/sap/rules/ui/ExpressionAdvancedRenderer.js +4 -2
  25. package/src/sap/rules/ui/ExpressionBase.js +5 -3
  26. package/src/sap/rules/ui/ExpressionBasic.js +5 -3
  27. package/src/sap/rules/ui/ExpressionBasicRenderer.js +4 -2
  28. package/src/sap/rules/ui/RuleBase.js +5 -3
  29. package/src/sap/rules/ui/RuleBuilder.js +5 -3
  30. package/src/sap/rules/ui/RuleBuilderRenderer.js +4 -2
  31. package/src/sap/rules/ui/TextRule.js +5 -3
  32. package/src/sap/rules/ui/TextRuleConfiguration.js +5 -3
  33. package/src/sap/rules/ui/TextRuleRenderer.js +4 -2
  34. package/src/sap/rules/ui/TextRuleSettings.js +5 -3
  35. package/src/sap/rules/ui/TextRuleSettingsRenderer.js +4 -2
  36. package/src/sap/rules/ui/Utils.js +4 -2
  37. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionAdvancedFunctionPanelRenderer.js +4 -2
  38. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionAggregateFunctionPanelRenderer.js +4 -2
  39. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionArrayOperatorPanelRenderer.js +4 -2
  40. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionComparisionOperatorPanelRenderer.js +4 -2
  41. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionDateAndTimePanelRenderer.js +4 -2
  42. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionFixedValuePanelRenderer.js +4 -2
  43. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionFunctionalOperatorPanelRenderer.js +4 -2
  44. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionLogicalOperatorPanelRenderer.js +4 -2
  45. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionLoopFunctionPanelRenderer.js +4 -2
  46. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionMathematicalOperatorPanelRenderer.js +4 -2
  47. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionMiscellaneousOperatorPanelRenderer.js +4 -2
  48. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionOperationsPanelRenderer.js +4 -2
  49. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionRangeOperatorPanelRenderer.js +4 -2
  50. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionSelectFunctionPanelRenderer.js +4 -2
  51. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionTimeAndDurationFunctionPanelRenderer.js +4 -2
  52. package/src/sap/rules/ui/ast/autoCompleteContent/AutoSuggestionVocabularyPanelRenderer.js +4 -2
  53. package/src/sap/rules/ui/ast/builder/TermsBuilder.js +36 -2
  54. package/src/sap/rules/ui/ast/parser/bundle.js +2973 -1471
  55. package/src/sap/rules/ui/ast/util/AggregateFunctionDialog.js +1 -1
  56. package/src/sap/rules/ui/library.js +8 -5
  57. package/src/sap/rules/ui/oldast/lib/AstYamlConverter.js +4 -2
  58. package/src/sap/rules/ui/oldast/lib/Constants.js +4 -2
  59. package/src/sap/rules/ui/providers/ValueHelpDialogProvider.js +4 -2
  60. package/src/sap/rules/ui/services/AstExpressionLanguage.js +4 -2
  61. package/src/sap/rules/ui/services/ExpressionLanguage.js +4 -2
  62. package/src/sap/rules/ui/themes/base/library.source.less +4 -2
  63. package/src/sap/rules/ui/themes/sap_horizon/ExpressionAdvanced.less +20 -0
  64. package/src/sap/rules/ui/themes/sap_horizon/library.source.less +5 -0
  65. package/src/sap/rules/ui/type/DecisionTableCell.js +4 -2
  66. package/src/sap/rules/ui/type/DecisionTableHeader.js +4 -2
  67. package/src/sap/rules/ui/type/Expression.js +4 -2
  68. package/src/sap/rules/ui/type/ExpressionAbs.js +5 -3
  69. package/ui5.yaml +2 -3
@@ -10494,798 +10494,798 @@ exports.IDPListener = IDPListener;
10494
10494
  /* 33 */
10495
10495
  /***/ (function(module, exports, __webpack_require__) {
10496
10496
 
10497
- var ASTConstants = __webpack_require__(19);
10498
- ASTConstants = ASTConstants.ASTConstants;
10499
- var ASTUtil = (function () {
10500
- var nodes = [];
10501
-
10502
- var getFunctionKey = function (functionName, functionSet) {
10503
- for (var func in functionSet) {
10504
- if (functionSet[func] === functionName) {
10505
- return func;
10506
- }
10507
- }
10508
- };
10509
-
10510
- var getNodeFunc = function(functionName, functionSet){
10511
- var func;
10512
- if(functionName && functionSet){
10513
- func = getFunctionKey(functionName, functionSet);
10514
- }
10515
- return func;
10516
- };
10517
-
10518
- var getNodeValue = function (node) {
10519
- if (node) {
10520
- if (node.Reference) {
10521
- return node.Reference;
10522
- } else if (node.Value) {
10523
- return node.Value;
10524
- }
10525
- }
10526
- return "";
10527
- };
10528
-
10529
- var getDataObjectId = function (node){
10530
- if (node) {
10531
- if (node.Reference) {
10532
- return ("/"+((node.Reference.split("/"))[1]));
10533
- } else if (node.Value) {
10534
- return node.Value;
10535
- }
10536
- }
10537
- return "";
10538
- }
10539
-
10540
- var getGroupByDataForAggrFunc = function (childNodes, index) {
10541
- var groupByData = [];
10542
- for (var childIterator = index; childIterator < childNodes.length; childIterator++) {
10543
- groupByData.push(getNodeValue(childNodes[childIterator]));
10544
- }
10545
- return groupByData;
10546
- };
10547
-
10548
- var setDataForAggregateFuncs = function(data, func, funcLabel, dataObjectId, children, vocabulary, groupByIndex){
10549
-
10550
- if(func){
10551
- data[ASTConstants.FUNCTION] = func;
10552
- }
10553
-
10554
- if(dataObjectId){
10555
- data[ASTConstants.DATAOBJECT] = dataObjectId;
10556
- }
10557
-
10558
- if(!data[ASTConstants.DATA_PARAM_FILTER]){
10559
- data[ASTConstants.DATA_PARAM_FILTER] = "";
10560
- }
10561
-
10562
- if(vocabulary && vocabulary[ASTConstants.VOCABULARY]){
10563
- data[ASTConstants.VOCABULARY] = vocabulary[ASTConstants.VOCABULARY];
10564
- if(!data[ASTConstants.VOCABULARY][ASTConstants.DATA_PARAM_FILTER]){
10565
- data[ASTConstants.VOCABULARY][ASTConstants.DATA_PARAM_FILTER] = "";
10566
- }
10567
- if(!data[ASTConstants.VOCABULARY][ASTConstants.DATAOBJECT]){
10568
- data[ASTConstants.VOCABULARY][ASTConstants.DATAOBJECT] = dataObjectId;
10569
- }
10570
- if(data[ASTConstants.DO_VOCABID]){
10571
- data[ASTConstants.VOCABULARY][ASTConstants.DO_VOCABID] = data[ASTConstants.DO_VOCABID];
10572
- }
10573
- }
10574
- else{
10575
- var childValue = getNodeValue(children[1]);
10576
- if(childValue) {
10577
- data[ASTConstants.ATTRIBUTE] = childValue;
10578
- } else {
10579
- data[ASTConstants.ATTRIBUTE] = "";
10580
- }
10581
- data[ASTConstants.VOCABULARY] = data[ASTConstants.DO_VOCABID];
10582
- }
10583
-
10584
- if(vocabulary && vocabulary[ASTConstants.VOCABULARY] && vocabulary[ASTConstants.VOCABULARY][ASTConstants.FUNCTION_LABEL]){
10585
- data[ASTConstants.FUNCTION_LABEL] = func + "(" + vocabulary[ASTConstants.VOCABULARY][ASTConstants.FUNCTION_LABEL] + ")";
10586
- }
10587
- else if(vocabulary && vocabulary[ASTConstants.FUNCTION_LABEL]){
10588
- data[ASTConstants.FUNCTION_LABEL] = func + "(" + vocabulary[ASTConstants.FUNCTION_LABEL] + ")";
10589
- }
10590
- else{
10591
- data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10592
- }
10593
-
10594
- if(groupByIndex){
10595
- //"Group By" - id1, id2, id3 - ideally gets set only for avg, min, max, sum, count
10596
- var groupByData = getGroupByDataForAggrFunc(children, groupByIndex);
10597
- if (groupByData && groupByData.length > 0) {
10598
- data[ASTConstants.GROUPBY] = groupByData;
10599
- }else{
10600
- data[ASTConstants.GROUPBY] = [];
10601
- }
10602
- }else{
10603
- data[ASTConstants.GROUPBY] = [];
10604
- }
10605
- };
10606
-
10607
- var setDataForSelectFuncs = function(data, func, funcLabel, children){
10608
- data[ASTConstants.FUNCTION] = func;
10609
- if(children){
10610
- data[ASTConstants.DATA_PARAM_COUNT] = getNodeValue(children[1]); //it is the 2nd child value, ideally a literal
10611
- }
10612
- data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10613
- if(!data[ASTConstants.DATA_PARAM_FILTER]){
10614
- data[ASTConstants.DATA_PARAM_FILTER] = "";
10615
- }
10616
- if(!data[ASTConstants.ATTRIBUTES]){
10617
- data[ASTConstants.ATTRIBUTES] = {};
10618
- }
10619
- };
10620
-
10621
- var setDataForFuncFirst = function(data, func, funcLabel){
10622
- data[ASTConstants.FUNCTION] = func;
10623
- data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10624
- if(!data[ASTConstants.DATA_PARAM_FILTER]){
10625
- data[ASTConstants.DATA_PARAM_FILTER] = "";
10626
- }
10627
- if(!data[ASTConstants.ATTRIBUTES]){
10628
- data[ASTConstants.ATTRIBUTES] = {};
10629
- }
10630
- };
10631
-
10632
- var setDataForFuncForEach = function(data, func, funcLabel, childrenData){
10633
- data[ASTConstants.FUNCTION] = func;
10634
- data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10635
- if(!data[ASTConstants.DATA_PARAM_FILTER]){
10636
- data[ASTConstants.DATA_PARAM_FILTER] = "";
10637
- }
10638
-
10639
- if(!data[ASTConstants.ACTIONS]){
10640
- data[ASTConstants.ACTIONS] = [];
10641
- }
10642
-
10643
- for(var childrenIterator = 1 ; childrenIterator < childrenData.length ; childrenIterator++){
10644
- data[ASTConstants.ACTIONS].push(childrenData[childrenIterator].relString);
10645
- }
10646
- };
10647
-
10648
-
10649
- var setAttributes = function(existingAttributes, children){
10650
- var attributes = {};
10651
- for(var paramIterator=1; paramIterator<children.length ; paramIterator++){
10652
- var nodeValue = getNodeValue(children[paramIterator]);
10653
- if(!existingAttributes[nodeValue]){
10654
- attributes[nodeValue] = ASTConstants.NOSORT;
10655
- }else{
10656
- attributes[nodeValue] = existingAttributes[nodeValue];
10657
- }
10658
- }
10659
- return attributes;
10660
- };
10661
-
10662
- var setAttributesForSelect = function(data, children){
10663
- var existingAttr = data[ASTConstants.ATTRIBUTES];
10664
- if(!existingAttr){
10665
- existingAttr = {};
10666
- }
10667
- var attributes = setAttributes(existingAttr, children);
10668
- data[ASTConstants.ATTRIBUTES] = attributes;
10669
- };
10670
-
10671
- var setAttributesForSort = function(data, func, children){
10672
- var existingAttr = data[ASTConstants.ATTRIBUTES];
10673
- if(!existingAttr){
10674
- existingAttr = {};
10675
- }
10676
- existingAttr[getNodeValue(children[1])] = func;
10677
- data[ASTConstants.ATTRIBUTES] = existingAttr;
10678
- };
10679
-
10680
- var getVocabularyDataFromSelectFuncs = function(selectFuncData){
10681
- var vocab = {};
10682
- if(selectFuncData[ASTConstants.DATA_PARAM_COUNT]){
10683
- vocab[ASTConstants.DATA_PARAM_COUNT] = selectFuncData[ASTConstants.DATA_PARAM_COUNT];
10684
- }
10685
- if(selectFuncData[ASTConstants.FUNCTION]){
10686
- vocab[ASTConstants.FUNCTION] = selectFuncData[ASTConstants.FUNCTION];
10687
- }
10688
- if(selectFuncData[ASTConstants.FUNCTION_LABEL]){
10689
- vocab[ASTConstants.FUNCTION_LABEL] = selectFuncData[ASTConstants.FUNCTION_LABEL];
10690
- }
10691
- if(selectFuncData[ASTConstants.DATA_PARAM_FILTER]){
10692
- vocab[ASTConstants.DATA_PARAM_FILTER] = selectFuncData[ASTConstants.DATA_PARAM_FILTER];
10693
- }
10694
- if(selectFuncData[ASTConstants.ATTRIBUTES]){
10695
- vocab[ASTConstants.ATTRIBUTES] = selectFuncData[ASTConstants.ATTRIBUTES]; //for nested sorts
10696
- }
10697
- return vocab;
10698
- };
10699
-
10700
- var getEmptyResponse = function(){
10701
- var json = {};
10702
- json[ASTConstants.SHORT_REL_STRING] = "";
10703
- json[ASTConstants.REL_STRING] = "";
10704
- json[ASTConstants.DISPLAY_STRING] = "";
10705
- json[ASTConstants.JSON] = [];
10706
- return json;
10707
- };
10708
-
10709
- var updateStringValue = function(string, value){
10710
- string = string || "";
10711
- string = string + value;
10712
- return string;
10713
- };
10714
-
10715
- return {
10716
- getNodes: function () {
10717
- return this.nodes
10718
- },
10719
- addNode: function (node) {
10720
-
10721
- if (!this.nodes) {
10722
- this.nodes = [];
10723
- }
10724
-
10725
- this.nodes.push(node);
10726
- },
10727
- getNode: function (id) {
10728
- if (id) {
10729
- var length = this.nodes.length;
10730
- for (var i = 0; i < length; i++) {
10731
- if (this.nodes[i].getId() === id) {
10732
- return nodes[i];
10733
- }
10734
- }
10735
- } else {
10736
- throw "id is null or undefined";
10737
- }
10738
- return null;
10739
- },
10740
- getRootNode: function () {
10741
- var length = this.nodes.length;
10742
- for (var i = 0; i < length; i++) {
10743
- if (this.nodes[i].Root) {
10744
- return this.nodes[i];
10745
- }
10746
- }
10747
- },
10748
-
10749
- toRELString: function (jsonResponse) {
10750
- return this.toAstExpressionString(JSON.parse(jsonResponse));
10751
- },
10752
-
10753
- toAstExpressionString: function (jsonObjects) {
10754
- this.nodes = [];
10755
- if(jsonObjects ){
10756
- for (var node in jsonObjects) {
10757
- this.newNode = this.createNode(jsonObjects[node]);
10758
- }
10759
- var rootNode = this.getRootNode();
10760
- if (rootNode) {
10761
- rootNode.setNodes(this.nodes);
10762
- var response = this.toStringForAggregateAndSelect(rootNode);
10763
- //make the "JSON" array if it is not coming as array
10764
- //it is possible when the expression has only aggregate or select function
10765
- if(response["JSON"] && !(response["JSON"].constructor===Array)){
10766
- var responseArray = [];
10767
- responseArray.push(response["JSON"]);
10768
- response["JSON"] = responseArray;
10769
- }
10770
- if(response[ASTConstants.SHORT_REL_STRING]){
10771
- response[ASTConstants.SHORT_REL_STRING] = response[ASTConstants.SHORT_REL_STRING].trim();
10772
- }
10773
- if(response[ASTConstants.DISPLAY_STRING]){
10774
- response[ASTConstants.DISPLAY_STRING] = response[ASTConstants.DISPLAY_STRING].trim();
10775
- }
10776
- if(response[ASTConstants.REL_STRING]){
10777
- response[ASTConstants.REL_STRING] = response[ASTConstants.REL_STRING].trim();
10778
- }
10779
- return response;
10780
- }
10781
- }
10782
- return getEmptyResponse();
10783
- },
10784
-
10785
- toAstExpressionStringForDt: function (jsonObjects, dateFormat, timeFormat) {
10786
- this.nodes = [];
10787
- if(jsonObjects){
10788
- for (var node in jsonObjects) {
10789
- var businessDataType = jsonObjects[node].Output ? jsonObjects[node].Output.BusinessDataType : null;
10790
- if(businessDataType === "D"){
10791
- jsonObjects[node].formattedValue = "'" + dateFormat.format(new Date(jsonObjects[node].Value.replace(/\'/g, "")), true) + "'";
10792
- }
10793
- if(businessDataType === "U"){
10794
- jsonObjects[node].formattedValue = "'" + timeFormat.format(new Date(jsonObjects[node].Value.replace(/\'/g, "")), true) + "'";
10795
- }
10796
- this.newNode = this.createNode(jsonObjects[node]);
10797
- }
10798
- var rootNode = this.getRootNode();
10799
- if (rootNode) {
10800
- rootNode.setNodes(this.nodes);
10801
- var response = this.toStringForAggregateAndSelect(rootNode);
10802
- //make the "JSON" array if it is not coming as array
10803
- //it is possible when the expression has only aggregate or select function
10804
- if(response["JSON"] && !(response["JSON"].constructor===Array)){
10805
- var responseArray = [];
10806
- responseArray.push(response["JSON"]);
10807
- response["JSON"] = responseArray;
10808
- }
10809
- if(response[ASTConstants.SHORT_REL_STRING]){
10810
- response[ASTConstants.SHORT_REL_STRING] = response[ASTConstants.SHORT_REL_STRING].trim();
10811
- }
10812
- if(response[ASTConstants.DISPLAY_STRING]){
10813
- response[ASTConstants.DISPLAY_STRING] = response[ASTConstants.DISPLAY_STRING].trim();
10814
- }
10815
- if(response[ASTConstants.REL_STRING]){
10816
- response[ASTConstants.REL_STRING] = response[ASTConstants.REL_STRING].trim();
10817
- }
10818
- return response;
10819
- }
10820
- }
10821
- return getEmptyResponse();
10822
- },
10823
-
10824
- toString: function (node) {
10825
- var stringValue = "";
10826
- var tokenString = node.formatString();
10827
-
10828
- if (node.Type === "P") {
10829
- stringValue = stringValue || "";
10830
- stringValue = stringValue + '(';
10831
- }
10832
-
10833
- if (node.Function === ASTConstants.ARRAY) {
10834
- stringValue = stringValue || "";
10835
- stringValue = stringValue + "[";
10836
- }
10837
-
10838
- if (node.Function === ASTConstants.RANGEINCLUSIVE) {
10839
- stringValue = stringValue || "";
10840
- stringValue = stringValue + "[";
10841
- }
10842
-
10843
- var children = this.getChildren(node.Id);
10844
-
10845
- // if no child, it is a leaf node - return string
10846
- if (children.length === 0) {
10847
- return tokenString;
10848
- }
10849
-
10850
- // if it has children, iterate over each child to find the leaf
10851
- for (var child in children) {
10852
- /* Add space only if the string already contains some text
10853
- loop through every child until you reach the leaf*/
10854
- if (stringValue != "") {
10855
- stringValue = stringValue + " " + this.toString(children[child]);
10856
- } else {
10857
- stringValue = this.toString(children[child]);
10858
- }
10859
-
10860
- // add current node to the string (itself ex: a+b adding + here)
10861
- if (child != children.length - 1) {
10862
- stringValue = stringValue + " " + tokenString;
10863
- }
10864
-
10865
- }
10866
-
10867
- if (node.Type === "P") {
10868
- stringValue = stringValue + ' )';
10869
- }
10870
-
10871
- if (node.Function === ASTConstants.ARRAY) {
10872
- stringValue = stringValue || "";
10873
- stringValue = stringValue + "]";
10874
- }
10875
-
10876
- if (node.Function === ASTConstants.RANGEINCLUSIVE) {
10877
- stringValue = stringValue || "";
10878
- stringValue = stringValue + "]";
10879
- }
10880
-
10881
- return stringValue;
10882
- },
10883
-
10884
-
10885
- toStringForAggregateAndSelect: function (node) {
10886
- var relString = "";
10887
- var shortRelString = "";
10888
- var displayString = "";
10889
- var tokenString = node.formatString();
10890
- var formattedTokenString = tokenString;
10891
- if(node.Output && node.Output.BusinessDataType && (node.Output.BusinessDataType === "D" || node.Output.BusinessDataType === "U")){
10892
- formattedTokenString = node.formatString(true);//getting the formatted value
10893
- }
10894
- var jsonToReturn = {};
10895
- var childrenVisited = false;
10896
-
10897
- var aggrFunc = getNodeFunc(node.Function, ASTConstants.AggregateFunctions);
10898
- var selectFunc = getNodeFunc(node.Function, ASTConstants.SelectFunctions);
10899
- var foreachFunc = (node.Function === ASTConstants.FOREACH)? ASTConstants.FOREACH_FUNC : null ;
10900
- var func = aggrFunc || selectFunc || foreachFunc;
10901
- var properFunc;
10902
-
10903
- if(!func){//if it's not select/aggregate func check if it's proper func
10904
- properFunc = getNodeFunc(node.Function, ASTConstants.ProperFunctions);
10905
- }
10906
-
10907
- if(properFunc){
10908
- relString = updateStringValue(relString, properFunc+"(");
10909
- shortRelString = updateStringValue(shortRelString, properFunc+"(");
10910
- displayString = updateStringValue(displayString, properFunc+"(");
10911
- tokenString = ", ";
10912
- formattedTokenString = ", ";
10913
- }
10914
-
10915
- /* for the following functions the name is being changed -
10916
- ContainsPattern to MATCHES
10917
- NotContainsPattern to NOTMATCHES
10918
- ContainsString to CONTAINS
10919
- NotContainsString to NOTCONTAINS
10920
- */
10921
- var patternFuncName = getNodeFunc(node.Function, ASTConstants.PatternFunctions);
10922
- if(patternFuncName){
10923
- tokenString = patternFuncName;
10924
- formattedTokenString = patternFuncName;
10925
- }
10926
-
10927
- if (node.Type === "P" || node.Function === ASTConstants.RANGETOINCLUSIVE || node.Function === ASTConstants.RANGEEXCLUSIVE) {
10928
- relString = updateStringValue(relString, "(");
10929
- shortRelString = updateStringValue(shortRelString, "(");
10930
- displayString = updateStringValue(displayString, "(");
10931
- }
10932
-
10933
- if (node.Function === ASTConstants.ARRAY || node.Function === ASTConstants.RANGEINCLUSIVE ||
10934
- node.Function === ASTConstants.RANGEFROMINCLUSIVE) {
10935
- relString = updateStringValue(relString, "[");
10936
- shortRelString = updateStringValue(shortRelString, "[");
10937
- displayString = updateStringValue(displayString, "[");
10938
- }
10939
-
10940
- var children = this.getChildren(node.Id);
10941
- // if no child, it is a leaf node - return string
10942
- if (children.length === 0) {
10943
- if(properFunc){
10944
- //it's for functions like today(), tomorrow() which don't have children
10945
- tokenString = relString+" )";
10946
- formattedTokenString = displayString+" )";
10947
- }
10948
- jsonToReturn[ASTConstants.REL_STRING] = tokenString;
10949
- jsonToReturn[ASTConstants.SHORT_REL_STRING] = tokenString;
10950
- jsonToReturn[ASTConstants.DISPLAY_STRING] = formattedTokenString;
10951
- jsonToReturn[ASTConstants.JSON] = [];
10952
- return jsonToReturn;
10953
- }
10954
-
10955
- if(func){
10956
- var data = {};
10957
- var dataObjectId;
10958
- var dataObjectVocabId;
10959
- var funcLabel;
10960
- var vocabulary = {}; //for aggregate function to have vocabulary data of select
10961
-
10962
- relString = updateStringValue(relString, func + "(");
10963
-
10964
- tokenString = ", ";
10965
- formattedTokenString = ", ";
10966
-
10967
- var childrenData = [];
10968
- for (var child = 0; child < children.length ; child++) {
10969
- childrenVisited = true;
10970
- var childData = this.toStringForAggregateAndSelect(children[child]);
10971
- childrenData.push(childData);
10972
- var conditionExpression; // for storing 'where' for filter func
10973
-
10974
- //child data has both string value & some json
10975
- //compute string value for expanded REL string
10976
- relString = (relString != "") ? relString + " "+childData[ASTConstants.REL_STRING] : childData[ASTConstants.REL_STRING];
10977
-
10978
- // add current node to the string (itself ex: a+b adding + here)
10979
- if (child != children.length - 1) {
10980
- relString = relString + " " + tokenString;
10981
- }
10982
-
10983
- // check function only for 1st param
10984
- if(child === 0){
10985
- if(children[child].Function){
10986
- var childFuncData = childData[ASTConstants.JSON];
10987
-
10988
- //passing the filter data to parent node
10989
- if(!(aggrFunc && getNodeFunc(children[child].Function, ASTConstants.SelectFunctions)) && childFuncData[ASTConstants.DATA_PARAM_FILTER]){
10990
- data[ASTConstants.DATA_PARAM_FILTER] = childFuncData[ASTConstants.DATA_PARAM_FILTER];
10991
- }
10992
-
10993
- if(selectFunc && childFuncData[ASTConstants.ATTRIBUTES]){
10994
- data[ASTConstants.ATTRIBUTES] = childFuncData[ASTConstants.ATTRIBUTES]; //for nested sorts
10995
- }else if(selectFunc && childFuncData[ASTConstants.VOCABULARY] && childFuncData[ASTConstants.VOCABULARY][ASTConstants.ATTRIBUTES]){
10996
- data[ASTConstants.ATTRIBUTES] = childFuncData[ASTConstants.VOCABULARY][ASTConstants.ATTRIBUTES]; //for nested sorts
10997
- }
10998
-
10999
- if(childFuncData[ASTConstants.DO_VOCABID]){
11000
- data[ASTConstants.DO_VOCABID] = childFuncData[ASTConstants.DO_VOCABID];
11001
- }
11002
-
11003
- dataObjectId = childFuncData[ASTConstants.DATAOBJECT];
11004
- dataObjectVocabId = childFuncData[ASTConstants.DO_VOCABID];
11005
- funcLabel = func + "(" + childFuncData[ASTConstants.DATAOBJECT];
11006
- if(func === ASTConstants.FUNC_TOP || func === ASTConstants.FUNC_BOTTOM){
11007
- //add count too which is the 2nd parameter
11008
- funcLabel += "," + getNodeValue(children[1]);
11009
- }
11010
- funcLabel += ")";
11011
-
11012
- //if current func is aggregate & child is select then vocabulary json has to be computed
11013
- if(aggrFunc && getNodeFunc(children[child].Function, ASTConstants.SelectFunctions)){
11014
- vocabulary[ASTConstants.VOCABULARY] = getVocabularyDataFromSelectFuncs(childFuncData);
11015
-
11016
- }else if(childFuncData[ASTConstants.ATTRIBUTES]){
11017
- data[ASTConstants.ATTRIBUTES] = childFuncData[ASTConstants.ATTRIBUTES]; //for nested sorts
11018
- }
11019
- if(childFuncData[ASTConstants.VOCABULARY]){
11020
- vocabulary[ASTConstants.VOCABULARY] = childFuncData[ASTConstants.VOCABULARY]
11021
- }
11022
- }else{
11023
- dataObjectId = getDataObjectId(children[0]);
11024
- dataObjectVocabId = getNodeValue(children[0]);
11025
- funcLabel = func + "(" + dataObjectId;
11026
- if(func === ASTConstants.FUNC_TOP || func === ASTConstants.FUNC_BOTTOM){
11027
- //add count too which is the 2nd parameter
11028
- funcLabel += "," + getNodeValue(children[1]);
11029
- }
11030
- funcLabel += ")";
11031
- }
11032
- data[ASTConstants.DATAOBJECT] = dataObjectId; //set again to pass to it's parent
11033
- data[ASTConstants.DO_VOCABID] = dataObjectVocabId;
11034
- }
11035
- //store the string value of 2nd child if func is filter
11036
- if(child === 1){
11037
- conditionExpression = childData[ASTConstants.REL_STRING];
11038
- }
11039
-
11040
- } //end of loopong over child data
11041
-
11042
- //populate json on the basis of function type
11043
- if(func === ASTConstants.FUNC_AVG || func === ASTConstants.FUNC_SUM || func === ASTConstants.FUNC_MIN || func === ASTConstants.FUNC_MAX){
11044
- setDataForAggregateFuncs(data, func, funcLabel, dataObjectId, children, vocabulary, 2);
11045
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11046
- displayString = data[ASTConstants.FUNCTION_LABEL];
11047
- }else if(func === ASTConstants.FUNC_COUNTDISTINCT || func === ASTConstants.FUNC_DISTINCT){
11048
- setDataForAggregateFuncs(data, func, funcLabel, dataObjectId, children, vocabulary);//doesn't have group by
11049
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11050
- displayString = data[ASTConstants.FUNCTION_LABEL];
11051
- }else if(func === ASTConstants.FUNC_COUNT){
11052
- setDataForAggregateFuncs(data, func, funcLabel, dataObjectId, children, vocabulary, 1);
11053
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11054
- displayString = data[ASTConstants.FUNCTION_LABEL];
11055
- }else if(func === ASTConstants.FUNC_FILTER){
11056
- data[ASTConstants.DATA_PARAM_FILTER] = conditionExpression;
11057
- data[ASTConstants.VOCABULARY] = vocabulary[ASTConstants.VOCABULARY];
11058
- }else if(func === ASTConstants.FUNC_TOP || func === ASTConstants.FUNC_BOTTOM){
11059
- setDataForSelectFuncs(data, func, funcLabel, children);
11060
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11061
- displayString = data[ASTConstants.FUNCTION_LABEL];
11062
- }else if(func === ASTConstants.FUNC_SELECT){
11063
- setDataForSelectFuncs(data, func, funcLabel); // not passing children as this doesn't have count
11064
- setAttributesForSelect(data, children);
11065
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11066
- displayString = data[ASTConstants.FUNCTION_LABEL];
11067
- }else if(func === ASTConstants.FUNC_SORTASC || func === ASTConstants.FUNC_SORTDESC){//these can be n number of sorts nested inside one another
11068
- setAttributesForSort(data, func, children);
11069
- } else if(func === ASTConstants.FUNC_FIRST) {
11070
- setDataForFuncFirst(data, func, funcLabel);
11071
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11072
- displayString = data[ASTConstants.FUNCTION_LABEL];
11073
- }else if(func === ASTConstants.FOREACH_FUNC){
11074
- setDataForFuncForEach(data, func, funcLabel, childrenData);
11075
- shortRelString = data[ASTConstants.FUNCTION_LABEL];
11076
- displayString = data[ASTConstants.FUNCTION_LABEL];
11077
- }
11078
- jsonToReturn[ASTConstants.JSON] = data;
11079
- }
11080
-
11081
- if(!childrenVisited){
11082
- // if it has children, iterate over each child to find the leaf
11083
- for (var child in children) {
11084
- /* Add space only if the string already contains some text
11085
- loop through every child until you reach the leaf*/
11086
-
11087
- var childData = this.toStringForAggregateAndSelect(children[child]);
11088
- if(childData[ASTConstants.JSON]){
11089
- if(!jsonToReturn[ASTConstants.JSON]){
11090
- jsonToReturn[ASTConstants.JSON] = [];
11091
-
11092
- }
11093
- jsonToReturn[ASTConstants.JSON] = jsonToReturn[ASTConstants.JSON].concat(childData[ASTConstants.JSON]);
11094
- }
11095
-
11096
- relString = (relString != "") ? relString + " "+ childData[ASTConstants.REL_STRING] : childData[ASTConstants.REL_STRING];
11097
- shortRelString = (shortRelString != "") ? shortRelString + " "+childData[ASTConstants.SHORT_REL_STRING] : childData[ASTConstants.SHORT_REL_STRING];
11098
- displayString = (displayString != "") ? displayString + " "+childData[ASTConstants.DISPLAY_STRING] : childData[ASTConstants.DISPLAY_STRING];
11099
-
11100
- // add current node to the string (itself ex: a+b adding + here)
11101
- if (child != children.length - 1) {
11102
- relString = relString + " " + tokenString;
11103
- shortRelString = shortRelString + " " + tokenString;
11104
- displayString = displayString + " " + formattedTokenString;
11105
- }
11106
- }
11107
- }
11108
-
11109
- if(func){
11110
- relString = updateStringValue(relString, " )");
11111
- }
11112
-
11113
- if (node.Type === "P" || properFunc || node.Function === ASTConstants.RANGEFROMINCLUSIVE
11114
- || node.Function === ASTConstants.RANGEEXCLUSIVE) {
11115
- relString = updateStringValue(relString, " )");
11116
- shortRelString = updateStringValue(shortRelString, " )");
11117
- displayString = updateStringValue(displayString, " )");
11118
- }
11119
-
11120
- if (node.Function === ASTConstants.ARRAY || node.Function === ASTConstants.RANGEINCLUSIVE ||
11121
- node.Function === ASTConstants.RANGETOINCLUSIVE) {
11122
- relString = updateStringValue(relString, " ]");
11123
- shortRelString = updateStringValue(shortRelString, " ]");
11124
- displayString = updateStringValue(displayString, " ]");
11125
- }
11126
-
11127
- jsonToReturn[ASTConstants.REL_STRING] = relString;
11128
- jsonToReturn[ASTConstants.SHORT_REL_STRING] = shortRelString;
11129
- jsonToReturn[ASTConstants.DISPLAY_STRING] = displayString;
11130
- if(!jsonToReturn[ASTConstants.JSON]){
11131
- jsonToReturn[ASTConstants.JSON] = [];
11132
- }
11133
- return jsonToReturn;
11134
- },
11135
-
11136
- getChildren: function (parentId) {
11137
- astNodes = this.getNodes();
11138
- childNodes = [];
11139
- for (var subNode in astNodes) {
11140
- if (astNodes[subNode].ParentId === parentId) {
11141
- childNodes.push(astNodes[subNode]);
11142
- }
11143
-
11144
- }
11145
- childNodes = childNodes.sort(this.getSortOrder(ASTConstants.SequenceNumber));
11146
- return childNodes;
11147
-
11148
- },
11149
-
11150
- getSortOrder: function (sequenceProperty) {
11151
- return function (a, b) {
11152
- if (a[sequenceProperty] > b[sequenceProperty]) {
11153
- return 1;
11154
- } else if (a[sequenceProperty] < b[sequenceProperty]) {
11155
- return -1;
11156
- }
11157
- return 0;
11158
- }
11159
- },
11160
-
11161
- createNode: function (responseNode) {
11162
- var idpNode = __webpack_require__(21);
11163
- var node = new idpNode.Node();
11164
- node.setId(responseNode[ASTConstants.Id]);
11165
- var addQuotes = false;
11166
- var addBackslashForString = false;
11167
-
11168
- if (responseNode.Function) {
11169
- node.setFunctionValue(responseNode.Function);
11170
- }
11171
-
11172
- if(responseNode.formattedValue){
11173
- node.setFormattedValue(responseNode.formattedValue);
11174
- }
11175
-
11176
- if (responseNode.Type) {
11177
- node.setType(responseNode[ASTConstants.Type]);
11178
- if (responseNode.Type === "L") {
11179
- node.setBusinessDataType(responseNode.Output[ASTConstants.BusinessDataType]);
11180
- node.setDataObjectType(responseNode.Output[ASTConstants.DataObjectType]);
11181
- if(responseNode.Output[ASTConstants.BusinessDataType] === "S" ||
11182
- responseNode.Output[ASTConstants.BusinessDataType] === "D" ||
11183
- responseNode.Output[ASTConstants.BusinessDataType] === "Q" ||
11184
- responseNode.Output[ASTConstants.BusinessDataType] === "T" ||
11185
- responseNode.Output[ASTConstants.BusinessDataType] === "U" ||
11186
- responseNode.Output[ASTConstants.BusinessDataType] === "G" ||
11187
- responseNode.Output[ASTConstants.BusinessDataType] === "A"){
11188
- addQuotes = true;
11189
- }
11190
- if(responseNode.Output[ASTConstants.BusinessDataType] === "S"){
11191
- addBackslashForString = true;
11192
- }
11193
- }
11194
- if (responseNode.Type === "O") {
11195
- node.setReference(responseNode.Reference);
11196
- }
11197
- }
11198
-
11199
- if (responseNode.Value || responseNode.Value === "") {
11200
-
11201
- //for literalfor string, timestamp, date, time, quantity or Geometry add quotes
11202
- if(addQuotes){
11203
- //if it has quotes already then don't add again
11204
- var val = responseNode[ASTConstants.Value];
11205
- var finalVal = responseNode[ASTConstants.Value];
11206
- if(!val.startsWith(ASTConstants.SINGLE_QUOTE)){
11207
- //CSN - 2080090688
11208
- //add \ before ' while dislaying to UI
11209
- if(addBackslashForString){
11210
- finalVal = val.replace(/\'/g,"\\'");
11211
- }
11212
- finalVal = ASTConstants.SINGLE_QUOTE + finalVal;
11213
- }
11214
- if(!val.endsWith(ASTConstants.SINGLE_QUOTE)){
11215
- finalVal = finalVal + ASTConstants.SINGLE_QUOTE;
11216
- }
11217
- node.setValue(finalVal);
11218
- }else{
11219
- node.setValue(responseNode[ASTConstants.Value]);
11220
- }
11221
- }
11222
-
11223
- node.setSequenceNumber(responseNode[ASTConstants.SequenceNumber]);
11224
-
11225
- if (responseNode[ASTConstants.ParentId]) {
11226
- node.setParentId(responseNode[ASTConstants.ParentId]);
11227
- }
11228
- if (responseNode.Root) {
11229
- node.Root = responseNode.Root
11230
- }
11231
- return node;
11232
- },
11233
-
11234
-
11235
- toASTObject: function () {
11236
- return JSON.stringify(this.nodes);
11237
- },
11238
-
11239
- clearNodes: function () {
11240
- this.nodes = [];
11241
- }
11242
- };
11243
-
11244
- })();
11245
- exports.ASTUtil = ASTUtil;
11246
-
10497
+ var ASTConstants = __webpack_require__(19);
10498
+ ASTConstants = ASTConstants.ASTConstants;
10499
+ var ASTUtil = (function () {
10500
+ var nodes = [];
11247
10501
 
11248
- /***/ }),
11249
- /* 34 */
11250
- /***/ (function(module, exports, __webpack_require__) {
10502
+ var getFunctionKey = function (functionName, functionSet) {
10503
+ for (var func in functionSet) {
10504
+ if (functionSet[func] === functionName) {
10505
+ return func;
10506
+ }
10507
+ }
10508
+ };
11251
10509
 
11252
- var TermsProvider = (function() {
11253
-
11254
- var Term = __webpack_require__(57);
11255
- var constants = __webpack_require__(35).Constants;
11256
-
11257
- var termObj = Term.Term;
11258
- var _vocabId = ''; //to be populated by TermsBuilder
11259
- var _termsIdMap = {};
11260
- var _termsNameMap = {};
11261
- this._termsLabelMap = {};
10510
+ var getNodeFunc = function(functionName, functionSet){
10511
+ var func;
10512
+ if(functionName && functionSet){
10513
+ func = getFunctionKey(functionName, functionSet);
10514
+ }
10515
+ return func;
10516
+ };
11262
10517
 
11263
- /* used by the TermBuilder to set the vocabulary ID while constructing the terms */
10518
+ var getNodeValue = function (node) {
10519
+ if (node) {
10520
+ if (node.Reference) {
10521
+ return node.Reference;
10522
+ } else if (node.Value) {
10523
+ return node.Value;
10524
+ }
10525
+ }
10526
+ return "";
10527
+ };
11264
10528
 
11265
- var getLabelValue = function(astNodeReference, term){
11266
- var astNodeRefLen = (astNodeReference.split(".")).length;
11267
- var termLabels = term ? term.getLabel().split(".") : ""; //TODO: should return id if no label/name present
11268
- var termLabelLength = termLabels.length;
11269
- var labelVal = "";
11270
-
11271
- var referencesCount = 0;
11272
- /*in case of multiple associations (do.assoc1.assoc2.attr) if assoc2.attr is looked upon
11273
- then below logic is to return label corresponding to assoc2.attr */
11274
- for(var i=termLabelLength-1 ; i>=0 ; i--){
11275
- labelVal = termLabels[i] + labelVal;
11276
- referencesCount++;
11277
- if(referencesCount === astNodeRefLen){
11278
- return labelVal;
10529
+ var getDataObjectId = function (node){
10530
+ if (node) {
10531
+ if (node.Reference) {
10532
+ return ("/"+((node.Reference.split("/"))[1]));
10533
+ } else if (node.Value) {
10534
+ return node.Value;
11279
10535
  }
11280
- labelVal = "." + labelVal;
11281
10536
  }
11282
- return labelVal;
10537
+ return "";
11283
10538
  }
11284
-
11285
- return {
11286
10539
 
11287
- getTermsIdMap: function(){
11288
- return _termsIdMap;
10540
+ var getGroupByDataForAggrFunc = function (childNodes, index) {
10541
+ var groupByData = [];
10542
+ for (var childIterator = index; childIterator < childNodes.length; childIterator++) {
10543
+ groupByData.push(getNodeValue(childNodes[childIterator]));
10544
+ }
10545
+ return groupByData;
10546
+ };
10547
+
10548
+ var setDataForAggregateFuncs = function(data, func, funcLabel, dataObjectId, children, vocabulary, groupByIndex){
10549
+
10550
+ if(func){
10551
+ data[ASTConstants.FUNCTION] = func;
10552
+ }
10553
+
10554
+ if(dataObjectId){
10555
+ data[ASTConstants.DATAOBJECT] = dataObjectId;
10556
+ }
10557
+
10558
+ if(!data[ASTConstants.DATA_PARAM_FILTER]){
10559
+ data[ASTConstants.DATA_PARAM_FILTER] = "";
10560
+ }
10561
+
10562
+ if(vocabulary && vocabulary[ASTConstants.VOCABULARY]){
10563
+ data[ASTConstants.VOCABULARY] = vocabulary[ASTConstants.VOCABULARY];
10564
+ if(!data[ASTConstants.VOCABULARY][ASTConstants.DATA_PARAM_FILTER]){
10565
+ data[ASTConstants.VOCABULARY][ASTConstants.DATA_PARAM_FILTER] = "";
10566
+ }
10567
+ if(!data[ASTConstants.VOCABULARY][ASTConstants.DATAOBJECT]){
10568
+ data[ASTConstants.VOCABULARY][ASTConstants.DATAOBJECT] = dataObjectId;
10569
+ }
10570
+ if(data[ASTConstants.DO_VOCABID]){
10571
+ data[ASTConstants.VOCABULARY][ASTConstants.DO_VOCABID] = data[ASTConstants.DO_VOCABID];
10572
+ }
10573
+ }
10574
+ else{
10575
+ var childValue = getNodeValue(children[1]);
10576
+ if(childValue) {
10577
+ data[ASTConstants.ATTRIBUTE] = childValue;
10578
+ } else {
10579
+ data[ASTConstants.ATTRIBUTE] = "";
10580
+ }
10581
+ data[ASTConstants.VOCABULARY] = data[ASTConstants.DO_VOCABID];
10582
+ }
10583
+
10584
+ if(vocabulary && vocabulary[ASTConstants.VOCABULARY] && vocabulary[ASTConstants.VOCABULARY][ASTConstants.FUNCTION_LABEL]){
10585
+ data[ASTConstants.FUNCTION_LABEL] = func + "(" + vocabulary[ASTConstants.VOCABULARY][ASTConstants.FUNCTION_LABEL] + ")";
10586
+ }
10587
+ else if(vocabulary && vocabulary[ASTConstants.FUNCTION_LABEL]){
10588
+ data[ASTConstants.FUNCTION_LABEL] = func + "(" + vocabulary[ASTConstants.FUNCTION_LABEL] + ")";
10589
+ }
10590
+ else{
10591
+ data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10592
+ }
10593
+
10594
+ if(groupByIndex){
10595
+ //"Group By" - id1, id2, id3 - ideally gets set only for avg, min, max, sum, count
10596
+ var groupByData = getGroupByDataForAggrFunc(children, groupByIndex);
10597
+ if (groupByData && groupByData.length > 0) {
10598
+ data[ASTConstants.GROUPBY] = groupByData;
10599
+ }else{
10600
+ data[ASTConstants.GROUPBY] = [];
10601
+ }
10602
+ }else{
10603
+ data[ASTConstants.GROUPBY] = [];
10604
+ }
10605
+ };
10606
+
10607
+ var setDataForSelectFuncs = function(data, func, funcLabel, children){
10608
+ data[ASTConstants.FUNCTION] = func;
10609
+ if(children){
10610
+ data[ASTConstants.DATA_PARAM_COUNT] = getNodeValue(children[1]); //it is the 2nd child value, ideally a literal
10611
+ }
10612
+ data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10613
+ if(!data[ASTConstants.DATA_PARAM_FILTER]){
10614
+ data[ASTConstants.DATA_PARAM_FILTER] = "";
10615
+ }
10616
+ if(!data[ASTConstants.ATTRIBUTES]){
10617
+ data[ASTConstants.ATTRIBUTES] = {};
10618
+ }
10619
+ };
10620
+
10621
+ var setDataForFuncFirst = function(data, func, funcLabel){
10622
+ data[ASTConstants.FUNCTION] = func;
10623
+ data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10624
+ if(!data[ASTConstants.DATA_PARAM_FILTER]){
10625
+ data[ASTConstants.DATA_PARAM_FILTER] = "";
10626
+ }
10627
+ if(!data[ASTConstants.ATTRIBUTES]){
10628
+ data[ASTConstants.ATTRIBUTES] = {};
10629
+ }
10630
+ };
10631
+
10632
+ var setDataForFuncForEach = function(data, func, funcLabel, childrenData){
10633
+ data[ASTConstants.FUNCTION] = func;
10634
+ data[ASTConstants.FUNCTION_LABEL] = funcLabel;
10635
+ if(!data[ASTConstants.DATA_PARAM_FILTER]){
10636
+ data[ASTConstants.DATA_PARAM_FILTER] = "";
10637
+ }
10638
+
10639
+ if(!data[ASTConstants.ACTIONS]){
10640
+ data[ASTConstants.ACTIONS] = [];
10641
+ }
10642
+
10643
+ for(var childrenIterator = 1 ; childrenIterator < childrenData.length ; childrenIterator++){
10644
+ data[ASTConstants.ACTIONS].push(childrenData[childrenIterator].relString);
10645
+ }
10646
+ };
10647
+
10648
+
10649
+ var setAttributes = function(existingAttributes, children){
10650
+ var attributes = {};
10651
+ for(var paramIterator=1; paramIterator<children.length ; paramIterator++){
10652
+ var nodeValue = getNodeValue(children[paramIterator]);
10653
+ if(!existingAttributes[nodeValue]){
10654
+ attributes[nodeValue] = ASTConstants.NOSORT;
10655
+ }else{
10656
+ attributes[nodeValue] = existingAttributes[nodeValue];
10657
+ }
10658
+ }
10659
+ return attributes;
10660
+ };
10661
+
10662
+ var setAttributesForSelect = function(data, children){
10663
+ var existingAttr = data[ASTConstants.ATTRIBUTES];
10664
+ if(!existingAttr){
10665
+ existingAttr = {};
10666
+ }
10667
+ var attributes = setAttributes(existingAttr, children);
10668
+ data[ASTConstants.ATTRIBUTES] = attributes;
10669
+ };
10670
+
10671
+ var setAttributesForSort = function(data, func, children){
10672
+ var existingAttr = data[ASTConstants.ATTRIBUTES];
10673
+ if(!existingAttr){
10674
+ existingAttr = {};
10675
+ }
10676
+ existingAttr[getNodeValue(children[1])] = func;
10677
+ data[ASTConstants.ATTRIBUTES] = existingAttr;
10678
+ };
10679
+
10680
+ var getVocabularyDataFromSelectFuncs = function(selectFuncData){
10681
+ var vocab = {};
10682
+ if(selectFuncData[ASTConstants.DATA_PARAM_COUNT]){
10683
+ vocab[ASTConstants.DATA_PARAM_COUNT] = selectFuncData[ASTConstants.DATA_PARAM_COUNT];
10684
+ }
10685
+ if(selectFuncData[ASTConstants.FUNCTION]){
10686
+ vocab[ASTConstants.FUNCTION] = selectFuncData[ASTConstants.FUNCTION];
10687
+ }
10688
+ if(selectFuncData[ASTConstants.FUNCTION_LABEL]){
10689
+ vocab[ASTConstants.FUNCTION_LABEL] = selectFuncData[ASTConstants.FUNCTION_LABEL];
10690
+ }
10691
+ if(selectFuncData[ASTConstants.DATA_PARAM_FILTER]){
10692
+ vocab[ASTConstants.DATA_PARAM_FILTER] = selectFuncData[ASTConstants.DATA_PARAM_FILTER];
10693
+ }
10694
+ if(selectFuncData[ASTConstants.ATTRIBUTES]){
10695
+ vocab[ASTConstants.ATTRIBUTES] = selectFuncData[ASTConstants.ATTRIBUTES]; //for nested sorts
10696
+ }
10697
+ return vocab;
10698
+ };
10699
+
10700
+ var getEmptyResponse = function(){
10701
+ var json = {};
10702
+ json[ASTConstants.SHORT_REL_STRING] = "";
10703
+ json[ASTConstants.REL_STRING] = "";
10704
+ json[ASTConstants.DISPLAY_STRING] = "";
10705
+ json[ASTConstants.JSON] = [];
10706
+ return json;
10707
+ };
10708
+
10709
+ var updateStringValue = function(string, value){
10710
+ string = string || "";
10711
+ string = string + value;
10712
+ return string;
10713
+ };
10714
+
10715
+ return {
10716
+ getNodes: function () {
10717
+ return this.nodes
10718
+ },
10719
+ addNode: function (node) {
10720
+
10721
+ if (!this.nodes) {
10722
+ this.nodes = [];
10723
+ }
10724
+
10725
+ this.nodes.push(node);
10726
+ },
10727
+ getNode: function (id) {
10728
+ if (id) {
10729
+ var length = this.nodes.length;
10730
+ for (var i = 0; i < length; i++) {
10731
+ if (this.nodes[i].getId() === id) {
10732
+ return nodes[i];
10733
+ }
10734
+ }
10735
+ } else {
10736
+ throw "id is null or undefined";
10737
+ }
10738
+ return null;
10739
+ },
10740
+ getRootNode: function () {
10741
+ var length = this.nodes.length;
10742
+ for (var i = 0; i < length; i++) {
10743
+ if (this.nodes[i].Root) {
10744
+ return this.nodes[i];
10745
+ }
10746
+ }
10747
+ },
10748
+
10749
+ toRELString: function (jsonResponse) {
10750
+ return this.toAstExpressionString(JSON.parse(jsonResponse));
10751
+ },
10752
+
10753
+ toAstExpressionString: function (jsonObjects) {
10754
+ this.nodes = [];
10755
+ if(jsonObjects ){
10756
+ for (var node in jsonObjects) {
10757
+ this.newNode = this.createNode(jsonObjects[node]);
10758
+ }
10759
+ var rootNode = this.getRootNode();
10760
+ if (rootNode) {
10761
+ rootNode.setNodes(this.nodes);
10762
+ var response = this.toStringForAggregateAndSelect(rootNode);
10763
+ //make the "JSON" array if it is not coming as array
10764
+ //it is possible when the expression has only aggregate or select function
10765
+ if(response["JSON"] && !(response["JSON"].constructor===Array)){
10766
+ var responseArray = [];
10767
+ responseArray.push(response["JSON"]);
10768
+ response["JSON"] = responseArray;
10769
+ }
10770
+ if(response[ASTConstants.SHORT_REL_STRING]){
10771
+ response[ASTConstants.SHORT_REL_STRING] = response[ASTConstants.SHORT_REL_STRING].trim();
10772
+ }
10773
+ if(response[ASTConstants.DISPLAY_STRING]){
10774
+ response[ASTConstants.DISPLAY_STRING] = response[ASTConstants.DISPLAY_STRING].trim();
10775
+ }
10776
+ if(response[ASTConstants.REL_STRING]){
10777
+ response[ASTConstants.REL_STRING] = response[ASTConstants.REL_STRING].trim();
10778
+ }
10779
+ return response;
10780
+ }
10781
+ }
10782
+ return getEmptyResponse();
10783
+ },
10784
+
10785
+ toAstExpressionStringForDt: function (jsonObjects, dateFormat, timeFormat) {
10786
+ this.nodes = [];
10787
+ if(jsonObjects){
10788
+ for (var node in jsonObjects) {
10789
+ var businessDataType = jsonObjects[node].Output ? jsonObjects[node].Output.BusinessDataType : null;
10790
+ if(businessDataType === "D"){
10791
+ jsonObjects[node].formattedValue = "'" + dateFormat.format(new Date(jsonObjects[node].Value.replace(/\'/g, "")), true) + "'";
10792
+ }
10793
+ if(businessDataType === "U"){
10794
+ jsonObjects[node].formattedValue = "'" + timeFormat.format(new Date(jsonObjects[node].Value.replace(/\'/g, "")), true) + "'";
10795
+ }
10796
+ this.newNode = this.createNode(jsonObjects[node]);
10797
+ }
10798
+ var rootNode = this.getRootNode();
10799
+ if (rootNode) {
10800
+ rootNode.setNodes(this.nodes);
10801
+ var response = this.toStringForAggregateAndSelect(rootNode);
10802
+ //make the "JSON" array if it is not coming as array
10803
+ //it is possible when the expression has only aggregate or select function
10804
+ if(response["JSON"] && !(response["JSON"].constructor===Array)){
10805
+ var responseArray = [];
10806
+ responseArray.push(response["JSON"]);
10807
+ response["JSON"] = responseArray;
10808
+ }
10809
+ if(response[ASTConstants.SHORT_REL_STRING]){
10810
+ response[ASTConstants.SHORT_REL_STRING] = response[ASTConstants.SHORT_REL_STRING].trim();
10811
+ }
10812
+ if(response[ASTConstants.DISPLAY_STRING]){
10813
+ response[ASTConstants.DISPLAY_STRING] = response[ASTConstants.DISPLAY_STRING].trim();
10814
+ }
10815
+ if(response[ASTConstants.REL_STRING]){
10816
+ response[ASTConstants.REL_STRING] = response[ASTConstants.REL_STRING].trim();
10817
+ }
10818
+ return response;
10819
+ }
10820
+ }
10821
+ return getEmptyResponse();
10822
+ },
10823
+
10824
+ toString: function (node) {
10825
+ var stringValue = "";
10826
+ var tokenString = node.formatString();
10827
+
10828
+ if (node.Type === "P") {
10829
+ stringValue = stringValue || "";
10830
+ stringValue = stringValue + '(';
10831
+ }
10832
+
10833
+ if (node.Function === ASTConstants.ARRAY) {
10834
+ stringValue = stringValue || "";
10835
+ stringValue = stringValue + "[";
10836
+ }
10837
+
10838
+ if (node.Function === ASTConstants.RANGEINCLUSIVE) {
10839
+ stringValue = stringValue || "";
10840
+ stringValue = stringValue + "[";
10841
+ }
10842
+
10843
+ var children = this.getChildren(node.Id);
10844
+
10845
+ // if no child, it is a leaf node - return string
10846
+ if (children.length === 0) {
10847
+ return tokenString;
10848
+ }
10849
+
10850
+ // if it has children, iterate over each child to find the leaf
10851
+ for (var child in children) {
10852
+ /* Add space only if the string already contains some text
10853
+ loop through every child until you reach the leaf*/
10854
+ if (stringValue != "") {
10855
+ stringValue = stringValue + " " + this.toString(children[child]);
10856
+ } else {
10857
+ stringValue = this.toString(children[child]);
10858
+ }
10859
+
10860
+ // add current node to the string (itself ex: a+b adding + here)
10861
+ if (child != children.length - 1) {
10862
+ stringValue = stringValue + " " + tokenString;
10863
+ }
10864
+
10865
+ }
10866
+
10867
+ if (node.Type === "P") {
10868
+ stringValue = stringValue + ' )';
10869
+ }
10870
+
10871
+ if (node.Function === ASTConstants.ARRAY) {
10872
+ stringValue = stringValue || "";
10873
+ stringValue = stringValue + "]";
10874
+ }
10875
+
10876
+ if (node.Function === ASTConstants.RANGEINCLUSIVE) {
10877
+ stringValue = stringValue || "";
10878
+ stringValue = stringValue + "]";
10879
+ }
10880
+
10881
+ return stringValue;
10882
+ },
10883
+
10884
+
10885
+ toStringForAggregateAndSelect: function (node) {
10886
+ var relString = "";
10887
+ var shortRelString = "";
10888
+ var displayString = "";
10889
+ var tokenString = node.formatString();
10890
+ var formattedTokenString = tokenString;
10891
+ if(node.Output && node.Output.BusinessDataType && (node.Output.BusinessDataType === "D" || node.Output.BusinessDataType === "U")){
10892
+ formattedTokenString = node.formatString(true);//getting the formatted value
10893
+ }
10894
+ var jsonToReturn = {};
10895
+ var childrenVisited = false;
10896
+
10897
+ var aggrFunc = getNodeFunc(node.Function, ASTConstants.AggregateFunctions);
10898
+ var selectFunc = getNodeFunc(node.Function, ASTConstants.SelectFunctions);
10899
+ var foreachFunc = (node.Function === ASTConstants.FOREACH)? ASTConstants.FOREACH_FUNC : null ;
10900
+ var func = aggrFunc || selectFunc || foreachFunc;
10901
+ var properFunc;
10902
+
10903
+ if(!func){//if it's not select/aggregate func check if it's proper func
10904
+ properFunc = getNodeFunc(node.Function, ASTConstants.ProperFunctions);
10905
+ }
10906
+
10907
+ if(properFunc){
10908
+ relString = updateStringValue(relString, properFunc+"(");
10909
+ shortRelString = updateStringValue(shortRelString, properFunc+"(");
10910
+ displayString = updateStringValue(displayString, properFunc+"(");
10911
+ tokenString = ", ";
10912
+ formattedTokenString = ", ";
10913
+ }
10914
+
10915
+ /* for the following functions the name is being changed -
10916
+ ContainsPattern to MATCHES
10917
+ NotContainsPattern to NOTMATCHES
10918
+ ContainsString to CONTAINS
10919
+ NotContainsString to NOTCONTAINS
10920
+ */
10921
+ var patternFuncName = getNodeFunc(node.Function, ASTConstants.PatternFunctions);
10922
+ if(patternFuncName){
10923
+ tokenString = patternFuncName;
10924
+ formattedTokenString = patternFuncName;
10925
+ }
10926
+
10927
+ if (node.Type === "P" || node.Function === ASTConstants.RANGETOINCLUSIVE || node.Function === ASTConstants.RANGEEXCLUSIVE) {
10928
+ relString = updateStringValue(relString, "(");
10929
+ shortRelString = updateStringValue(shortRelString, "(");
10930
+ displayString = updateStringValue(displayString, "(");
10931
+ }
10932
+
10933
+ if (node.Function === ASTConstants.ARRAY || node.Function === ASTConstants.RANGEINCLUSIVE ||
10934
+ node.Function === ASTConstants.RANGEFROMINCLUSIVE) {
10935
+ relString = updateStringValue(relString, "[");
10936
+ shortRelString = updateStringValue(shortRelString, "[");
10937
+ displayString = updateStringValue(displayString, "[");
10938
+ }
10939
+
10940
+ var children = this.getChildren(node.Id);
10941
+ // if no child, it is a leaf node - return string
10942
+ if (children.length === 0) {
10943
+ if(properFunc){
10944
+ //it's for functions like today(), tomorrow() which don't have children
10945
+ tokenString = relString+" )";
10946
+ formattedTokenString = displayString+" )";
10947
+ }
10948
+ jsonToReturn[ASTConstants.REL_STRING] = tokenString;
10949
+ jsonToReturn[ASTConstants.SHORT_REL_STRING] = tokenString;
10950
+ jsonToReturn[ASTConstants.DISPLAY_STRING] = formattedTokenString;
10951
+ jsonToReturn[ASTConstants.JSON] = [];
10952
+ return jsonToReturn;
10953
+ }
10954
+
10955
+ if(func){
10956
+ var data = {};
10957
+ var dataObjectId;
10958
+ var dataObjectVocabId;
10959
+ var funcLabel;
10960
+ var vocabulary = {}; //for aggregate function to have vocabulary data of select
10961
+
10962
+ relString = updateStringValue(relString, func + "(");
10963
+
10964
+ tokenString = ", ";
10965
+ formattedTokenString = ", ";
10966
+
10967
+ var childrenData = [];
10968
+ for (var child = 0; child < children.length ; child++) {
10969
+ childrenVisited = true;
10970
+ var childData = this.toStringForAggregateAndSelect(children[child]);
10971
+ childrenData.push(childData);
10972
+ var conditionExpression; // for storing 'where' for filter func
10973
+
10974
+ //child data has both string value & some json
10975
+ //compute string value for expanded REL string
10976
+ relString = (relString != "") ? relString + " "+childData[ASTConstants.REL_STRING] : childData[ASTConstants.REL_STRING];
10977
+
10978
+ // add current node to the string (itself ex: a+b adding + here)
10979
+ if (child != children.length - 1) {
10980
+ relString = relString + " " + tokenString;
10981
+ }
10982
+
10983
+ // check function only for 1st param
10984
+ if(child === 0){
10985
+ if(children[child].Function){
10986
+ var childFuncData = childData[ASTConstants.JSON];
10987
+
10988
+ //passing the filter data to parent node
10989
+ if(!(aggrFunc && getNodeFunc(children[child].Function, ASTConstants.SelectFunctions)) && childFuncData[ASTConstants.DATA_PARAM_FILTER]){
10990
+ data[ASTConstants.DATA_PARAM_FILTER] = childFuncData[ASTConstants.DATA_PARAM_FILTER];
10991
+ }
10992
+
10993
+ if(selectFunc && childFuncData[ASTConstants.ATTRIBUTES]){
10994
+ data[ASTConstants.ATTRIBUTES] = childFuncData[ASTConstants.ATTRIBUTES]; //for nested sorts
10995
+ }else if(selectFunc && childFuncData[ASTConstants.VOCABULARY] && childFuncData[ASTConstants.VOCABULARY][ASTConstants.ATTRIBUTES]){
10996
+ data[ASTConstants.ATTRIBUTES] = childFuncData[ASTConstants.VOCABULARY][ASTConstants.ATTRIBUTES]; //for nested sorts
10997
+ }
10998
+
10999
+ if(childFuncData[ASTConstants.DO_VOCABID]){
11000
+ data[ASTConstants.DO_VOCABID] = childFuncData[ASTConstants.DO_VOCABID];
11001
+ }
11002
+
11003
+ dataObjectId = childFuncData[ASTConstants.DATAOBJECT];
11004
+ dataObjectVocabId = childFuncData[ASTConstants.DO_VOCABID];
11005
+ funcLabel = func + "(" + childFuncData[ASTConstants.DATAOBJECT];
11006
+ if(func === ASTConstants.FUNC_TOP || func === ASTConstants.FUNC_BOTTOM){
11007
+ //add count too which is the 2nd parameter
11008
+ funcLabel += "," + getNodeValue(children[1]);
11009
+ }
11010
+ funcLabel += ")";
11011
+
11012
+ //if current func is aggregate & child is select then vocabulary json has to be computed
11013
+ if(aggrFunc && getNodeFunc(children[child].Function, ASTConstants.SelectFunctions)){
11014
+ vocabulary[ASTConstants.VOCABULARY] = getVocabularyDataFromSelectFuncs(childFuncData);
11015
+
11016
+ }else if(childFuncData[ASTConstants.ATTRIBUTES]){
11017
+ data[ASTConstants.ATTRIBUTES] = childFuncData[ASTConstants.ATTRIBUTES]; //for nested sorts
11018
+ }
11019
+ if(childFuncData[ASTConstants.VOCABULARY]){
11020
+ vocabulary[ASTConstants.VOCABULARY] = childFuncData[ASTConstants.VOCABULARY]
11021
+ }
11022
+ }else{
11023
+ dataObjectId = getDataObjectId(children[0]);
11024
+ dataObjectVocabId = getNodeValue(children[0]);
11025
+ funcLabel = func + "(" + dataObjectId;
11026
+ if(func === ASTConstants.FUNC_TOP || func === ASTConstants.FUNC_BOTTOM){
11027
+ //add count too which is the 2nd parameter
11028
+ funcLabel += "," + getNodeValue(children[1]);
11029
+ }
11030
+ funcLabel += ")";
11031
+ }
11032
+ data[ASTConstants.DATAOBJECT] = dataObjectId; //set again to pass to it's parent
11033
+ data[ASTConstants.DO_VOCABID] = dataObjectVocabId;
11034
+ }
11035
+ //store the string value of 2nd child if func is filter
11036
+ if(child === 1){
11037
+ conditionExpression = childData[ASTConstants.REL_STRING];
11038
+ }
11039
+
11040
+ } //end of loopong over child data
11041
+
11042
+ //populate json on the basis of function type
11043
+ if(func === ASTConstants.FUNC_AVG || func === ASTConstants.FUNC_SUM || func === ASTConstants.FUNC_MIN || func === ASTConstants.FUNC_MAX){
11044
+ setDataForAggregateFuncs(data, func, funcLabel, dataObjectId, children, vocabulary, 2);
11045
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11046
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11047
+ }else if(func === ASTConstants.FUNC_COUNTDISTINCT || func === ASTConstants.FUNC_DISTINCT){
11048
+ setDataForAggregateFuncs(data, func, funcLabel, dataObjectId, children, vocabulary);//doesn't have group by
11049
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11050
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11051
+ }else if(func === ASTConstants.FUNC_COUNT){
11052
+ setDataForAggregateFuncs(data, func, funcLabel, dataObjectId, children, vocabulary, 1);
11053
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11054
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11055
+ }else if(func === ASTConstants.FUNC_FILTER){
11056
+ data[ASTConstants.DATA_PARAM_FILTER] = conditionExpression;
11057
+ data[ASTConstants.VOCABULARY] = vocabulary[ASTConstants.VOCABULARY];
11058
+ }else if(func === ASTConstants.FUNC_TOP || func === ASTConstants.FUNC_BOTTOM){
11059
+ setDataForSelectFuncs(data, func, funcLabel, children);
11060
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11061
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11062
+ }else if(func === ASTConstants.FUNC_SELECT){
11063
+ setDataForSelectFuncs(data, func, funcLabel); // not passing children as this doesn't have count
11064
+ setAttributesForSelect(data, children);
11065
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11066
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11067
+ }else if(func === ASTConstants.FUNC_SORTASC || func === ASTConstants.FUNC_SORTDESC){//these can be n number of sorts nested inside one another
11068
+ setAttributesForSort(data, func, children);
11069
+ } else if(func === ASTConstants.FUNC_FIRST) {
11070
+ setDataForFuncFirst(data, func, funcLabel);
11071
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11072
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11073
+ }else if(func === ASTConstants.FOREACH_FUNC){
11074
+ setDataForFuncForEach(data, func, funcLabel, childrenData);
11075
+ shortRelString = data[ASTConstants.FUNCTION_LABEL];
11076
+ displayString = data[ASTConstants.FUNCTION_LABEL];
11077
+ }
11078
+ jsonToReturn[ASTConstants.JSON] = data;
11079
+ }
11080
+
11081
+ if(!childrenVisited){
11082
+ // if it has children, iterate over each child to find the leaf
11083
+ for (var child in children) {
11084
+ /* Add space only if the string already contains some text
11085
+ loop through every child until you reach the leaf*/
11086
+
11087
+ var childData = this.toStringForAggregateAndSelect(children[child]);
11088
+ if(childData[ASTConstants.JSON]){
11089
+ if(!jsonToReturn[ASTConstants.JSON]){
11090
+ jsonToReturn[ASTConstants.JSON] = [];
11091
+
11092
+ }
11093
+ jsonToReturn[ASTConstants.JSON] = jsonToReturn[ASTConstants.JSON].concat(childData[ASTConstants.JSON]);
11094
+ }
11095
+
11096
+ relString = (relString != "") ? relString + " "+ childData[ASTConstants.REL_STRING] : childData[ASTConstants.REL_STRING];
11097
+ shortRelString = (shortRelString != "") ? shortRelString + " "+childData[ASTConstants.SHORT_REL_STRING] : childData[ASTConstants.SHORT_REL_STRING];
11098
+ displayString = (displayString != "") ? displayString + " "+childData[ASTConstants.DISPLAY_STRING] : childData[ASTConstants.DISPLAY_STRING];
11099
+
11100
+ // add current node to the string (itself ex: a+b adding + here)
11101
+ if (child != children.length - 1) {
11102
+ relString = relString + " " + tokenString;
11103
+ shortRelString = shortRelString + " " + tokenString;
11104
+ displayString = displayString + " " + formattedTokenString;
11105
+ }
11106
+ }
11107
+ }
11108
+
11109
+ if(func){
11110
+ relString = updateStringValue(relString, " )");
11111
+ }
11112
+
11113
+ if (node.Type === "P" || properFunc || node.Function === ASTConstants.RANGEFROMINCLUSIVE
11114
+ || node.Function === ASTConstants.RANGEEXCLUSIVE) {
11115
+ relString = updateStringValue(relString, " )");
11116
+ shortRelString = updateStringValue(shortRelString, " )");
11117
+ displayString = updateStringValue(displayString, " )");
11118
+ }
11119
+
11120
+ if (node.Function === ASTConstants.ARRAY || node.Function === ASTConstants.RANGEINCLUSIVE ||
11121
+ node.Function === ASTConstants.RANGETOINCLUSIVE) {
11122
+ relString = updateStringValue(relString, " ]");
11123
+ shortRelString = updateStringValue(shortRelString, " ]");
11124
+ displayString = updateStringValue(displayString, " ]");
11125
+ }
11126
+
11127
+ jsonToReturn[ASTConstants.REL_STRING] = relString;
11128
+ jsonToReturn[ASTConstants.SHORT_REL_STRING] = shortRelString;
11129
+ jsonToReturn[ASTConstants.DISPLAY_STRING] = displayString;
11130
+ if(!jsonToReturn[ASTConstants.JSON]){
11131
+ jsonToReturn[ASTConstants.JSON] = [];
11132
+ }
11133
+ return jsonToReturn;
11134
+ },
11135
+
11136
+ getChildren: function (parentId) {
11137
+ astNodes = this.getNodes();
11138
+ childNodes = [];
11139
+ for (var subNode in astNodes) {
11140
+ if (astNodes[subNode].ParentId === parentId) {
11141
+ childNodes.push(astNodes[subNode]);
11142
+ }
11143
+
11144
+ }
11145
+ childNodes = childNodes.sort(this.getSortOrder(ASTConstants.SequenceNumber));
11146
+ return childNodes;
11147
+
11148
+ },
11149
+
11150
+ getSortOrder: function (sequenceProperty) {
11151
+ return function (a, b) {
11152
+ if (a[sequenceProperty] > b[sequenceProperty]) {
11153
+ return 1;
11154
+ } else if (a[sequenceProperty] < b[sequenceProperty]) {
11155
+ return -1;
11156
+ }
11157
+ return 0;
11158
+ }
11159
+ },
11160
+
11161
+ createNode: function (responseNode) {
11162
+ var idpNode = __webpack_require__(21);
11163
+ var node = new idpNode.Node();
11164
+ node.setId(responseNode[ASTConstants.Id]);
11165
+ var addQuotes = false;
11166
+ var addBackslashForString = false;
11167
+
11168
+ if (responseNode.Function) {
11169
+ node.setFunctionValue(responseNode.Function);
11170
+ }
11171
+
11172
+ if(responseNode.formattedValue){
11173
+ node.setFormattedValue(responseNode.formattedValue);
11174
+ }
11175
+
11176
+ if (responseNode.Type) {
11177
+ node.setType(responseNode[ASTConstants.Type]);
11178
+ if (responseNode.Type === "L") {
11179
+ node.setBusinessDataType(responseNode.Output[ASTConstants.BusinessDataType]);
11180
+ node.setDataObjectType(responseNode.Output[ASTConstants.DataObjectType]);
11181
+ if(responseNode.Output[ASTConstants.BusinessDataType] === "S" ||
11182
+ responseNode.Output[ASTConstants.BusinessDataType] === "D" ||
11183
+ responseNode.Output[ASTConstants.BusinessDataType] === "Q" ||
11184
+ responseNode.Output[ASTConstants.BusinessDataType] === "T" ||
11185
+ responseNode.Output[ASTConstants.BusinessDataType] === "U" ||
11186
+ responseNode.Output[ASTConstants.BusinessDataType] === "G" ||
11187
+ responseNode.Output[ASTConstants.BusinessDataType] === "A"){
11188
+ addQuotes = true;
11189
+ }
11190
+ if(responseNode.Output[ASTConstants.BusinessDataType] === "S"){
11191
+ addBackslashForString = true;
11192
+ }
11193
+ }
11194
+ if (responseNode.Type === "O") {
11195
+ node.setReference(responseNode.Reference);
11196
+ }
11197
+ }
11198
+
11199
+ if (responseNode.Value || responseNode.Value === "") {
11200
+
11201
+ //for literalfor string, timestamp, date, time, quantity or Geometry add quotes
11202
+ if(addQuotes){
11203
+ //if it has quotes already then don't add again
11204
+ var val = responseNode[ASTConstants.Value];
11205
+ var finalVal = responseNode[ASTConstants.Value];
11206
+ if(!val.startsWith(ASTConstants.SINGLE_QUOTE)){
11207
+ //CSN - 2080090688
11208
+ //add \ before ' while dislaying to UI
11209
+ if(addBackslashForString){
11210
+ finalVal = val.replace(/\'/g,"\\'");
11211
+ }
11212
+ finalVal = ASTConstants.SINGLE_QUOTE + finalVal;
11213
+ }
11214
+ if(!val.endsWith(ASTConstants.SINGLE_QUOTE)){
11215
+ finalVal = finalVal + ASTConstants.SINGLE_QUOTE;
11216
+ }
11217
+ node.setValue(finalVal);
11218
+ }else{
11219
+ node.setValue(responseNode[ASTConstants.Value]);
11220
+ }
11221
+ }
11222
+
11223
+ node.setSequenceNumber(responseNode[ASTConstants.SequenceNumber]);
11224
+
11225
+ if (responseNode[ASTConstants.ParentId]) {
11226
+ node.setParentId(responseNode[ASTConstants.ParentId]);
11227
+ }
11228
+ if (responseNode.Root) {
11229
+ node.Root = responseNode.Root
11230
+ }
11231
+ return node;
11232
+ },
11233
+
11234
+
11235
+ toASTObject: function () {
11236
+ return JSON.stringify(this.nodes);
11237
+ },
11238
+
11239
+ clearNodes: function () {
11240
+ this.nodes = [];
11241
+ }
11242
+ };
11243
+
11244
+ })();
11245
+ exports.ASTUtil = ASTUtil;
11246
+
11247
+
11248
+ /***/ }),
11249
+ /* 34 */
11250
+ /***/ (function(module, exports, __webpack_require__) {
11251
+
11252
+ var TermsProvider = (function() {
11253
+
11254
+ var Term = __webpack_require__(57);
11255
+ var constants = __webpack_require__(35).Constants;
11256
+
11257
+ var termObj = Term.Term;
11258
+ var _vocabId = ''; //to be populated by TermsBuilder
11259
+ var _termsIdMap = {};
11260
+ var _termsNameMap = {};
11261
+ this._termsLabelMap = {};
11262
+
11263
+ /* used by the TermBuilder to set the vocabulary ID while constructing the terms */
11264
+
11265
+ var getLabelValue = function(astNodeReference, term){
11266
+ var astNodeRefLen = (astNodeReference.split(".")).length;
11267
+ var termLabels = term ? term.getLabel().split(".") : ""; //TODO: should return id if no label/name present
11268
+ var termLabelLength = termLabels.length;
11269
+ var labelVal = "";
11270
+
11271
+ var referencesCount = 0;
11272
+ /*in case of multiple associations (do.assoc1.assoc2.attr) if assoc2.attr is looked upon
11273
+ then below logic is to return label corresponding to assoc2.attr */
11274
+ for(var i=termLabelLength-1 ; i>=0 ; i--){
11275
+ labelVal = termLabels[i] + labelVal;
11276
+ referencesCount++;
11277
+ if(referencesCount === astNodeRefLen){
11278
+ return labelVal;
11279
+ }
11280
+ labelVal = "." + labelVal;
11281
+ }
11282
+ return labelVal;
11283
+ }
11284
+
11285
+ return {
11286
+
11287
+ getTermsIdMap: function(){
11288
+ return _termsIdMap;
11289
11289
  },
11290
11290
 
11291
11291
  getTermsNameMap: function(){
@@ -11578,7 +11578,7 @@ exports.refVocabDataRuleService = __webpack_require__(64);
11578
11578
  exports.refVocabDataRuleset = __webpack_require__(65);
11579
11579
  exports.refVocabDataWithIncludedDO = __webpack_require__(66);
11580
11580
  exports.termsAstUtil = __webpack_require__(67);
11581
-
11581
+ exports.doRefProjectVocabData = __webpack_require__(68);
11582
11582
 
11583
11583
  /***/ }),
11584
11584
  /* 37 */
@@ -17780,8 +17780,8 @@ var TermsBuilder = (function() {
17780
17780
  return businessDataType;
17781
17781
  };
17782
17782
 
17783
- var _generateTermsFromAssociations = function (association, sourceDO, vocaId, prefix, prefixId, prefixLabel, doVisited) {
17784
- var targetDO, attributes, attribute, associations, term, doLabel, associationLabel, attrLabel;
17783
+ var _generateTermsFromAssociations = function (association, vocaId, prefix, prefixId, prefixLabel, doVisited) {
17784
+ var targetDO, attributes, attribute, associations, term, associationLabel, attrLabel;
17785
17785
  if (association) {
17786
17786
 
17787
17787
  if(doVisited.indexOf(association.TargetDataObjectId) === -1){
@@ -17792,11 +17792,6 @@ var TermsBuilder = (function() {
17792
17792
  return;
17793
17793
  }
17794
17794
 
17795
- //if label is undefined then name will be used for label map
17796
- doLabel = sourceDO.Name;
17797
- if(sourceDO.Label && sourceDO.Label != ""){
17798
- doLabel = sourceDO.Label;
17799
- }
17800
17795
  associationLabel = association.Name;
17801
17796
  if(association.Label && association.Label != ""){
17802
17797
  associationLabel = association.Label;
@@ -17809,7 +17804,6 @@ var TermsBuilder = (function() {
17809
17804
  termsProviderInstance.addToTermsNameMap(prefix + constants.DOT + association.Name, term);
17810
17805
  termsProviderInstance.addToTermsLabelMap(prefixLabel + constants.DOT + associationLabel, term);
17811
17806
 
17812
-
17813
17807
  if (targetDO) {
17814
17808
  attributes = targetDO.Attributes;
17815
17809
  for (var attrIterator = 0; attrIterator < attributes.length; attrIterator++) {
@@ -17836,7 +17830,7 @@ var TermsBuilder = (function() {
17836
17830
  var refer;
17837
17831
  for (var refIterator = 0; refIterator < references.length; refIterator++) {
17838
17832
  refer = references[refIterator];
17839
- _generateTermsFromReferences(refer, targetDO, vocaId, prefix + constants.DOT + association.Name, prefixId + constants.DOT +
17833
+ _generateTermsFromReferences(refer, vocaId, prefix + constants.DOT + association.Name, prefixId + constants.DOT +
17840
17834
  association.Id, prefixLabel + constants.DOT + associationLabel, doVisited);
17841
17835
  doVisited.pop();
17842
17836
  }
@@ -17845,7 +17839,7 @@ var TermsBuilder = (function() {
17845
17839
  var assoc;
17846
17840
  for (var assocIterator = 0; assocIterator < associations.length; assocIterator++) {
17847
17841
  assoc = associations[assocIterator];
17848
- _generateTermsFromAssociations(assoc, targetDO, vocaId, prefix + constants.DOT + association.Name, prefixId + constants.DOT +
17842
+ _generateTermsFromAssociations(assoc, vocaId, prefix + constants.DOT + association.Name, prefixId + constants.DOT +
17849
17843
  association.Id, prefixLabel + constants.DOT + associationLabel, doVisited);
17850
17844
  doVisited.pop();
17851
17845
  }
@@ -17853,8 +17847,8 @@ var TermsBuilder = (function() {
17853
17847
  }
17854
17848
  };
17855
17849
 
17856
- var _generateTermsFromReferences = function (reference, sourceDO, vocaId, prefix, prefixId, prefixLabel, doVisited) {
17857
- var targetDO, attributes, attribute, references, term, doLabel, referenceLabel, attrLabel, associations;
17850
+ var _generateTermsFromReferences = function (reference, vocaId, prefix, prefixId, prefixLabel, doVisited) {
17851
+ var targetDO, attributes, attribute, references, term, referenceLabel, attrLabel, associations;
17858
17852
  if (reference) {
17859
17853
 
17860
17854
  if(doVisited.indexOf(reference.TargetDataObjectId) === -1){
@@ -17865,11 +17859,6 @@ var TermsBuilder = (function() {
17865
17859
  return;
17866
17860
  }
17867
17861
 
17868
- //if label is undefined then name will be used for label map
17869
- doLabel = sourceDO.Name;
17870
- if(sourceDO.Label && sourceDO.Label != ""){
17871
- doLabel = sourceDO.Label;
17872
- }
17873
17862
  referenceLabel = reference.Name;
17874
17863
  if(reference.Label && reference.Label != ""){
17875
17864
  referenceLabel = reference.Label;
@@ -17886,7 +17875,6 @@ var TermsBuilder = (function() {
17886
17875
  termsProviderInstance.addToTermsNameMap(prefix + constants.DOT + reference.Name, term);
17887
17876
  termsProviderInstance.addToTermsLabelMap(prefixLabel + constants.DOT + referenceLabel, term);
17888
17877
 
17889
-
17890
17878
  if (targetDO) {
17891
17879
  attributes = targetDO.Attributes;
17892
17880
  for (var attrIterator = 0; attrIterator < attributes.length; attrIterator++) {
@@ -17909,7 +17897,7 @@ var TermsBuilder = (function() {
17909
17897
  associations = targetDO.Associations;
17910
17898
  for (var assocIterator = 0; assocIterator < associations.length; assocIterator++) {
17911
17899
  association = associations[assocIterator];
17912
- _generateTermsFromAssociations(association, targetDO, vocaId, prefix + constants.DOT + reference.Name, prefixId + constants.DOT +
17900
+ _generateTermsFromAssociations(association, vocaId, prefix + constants.DOT + reference.Name, prefixId + constants.DOT +
17913
17901
  reference.Id, prefixLabel + constants.DOT + referenceLabel , doVisited);
17914
17902
  doVisited.pop();
17915
17903
  }
@@ -17921,7 +17909,7 @@ var TermsBuilder = (function() {
17921
17909
  var refer;
17922
17910
  for (var refIterator = 0; refIterator < references.length; refIterator++) {
17923
17911
  refer = references[refIterator];
17924
- _generateTermsFromReferences(refer, targetDO, vocaId, prefix + constants.DOT + reference.Name, prefixId + constants.DOT +
17912
+ _generateTermsFromReferences(refer, vocaId, prefix + constants.DOT + reference.Name, prefixId + constants.DOT +
17925
17913
  reference.Id, prefixLabel + constants.DOT + referenceLabel, doVisited);
17926
17914
  doVisited.pop();
17927
17915
  }
@@ -17938,11 +17926,15 @@ var TermsBuilder = (function() {
17938
17926
  }
17939
17927
  };
17940
17928
 
17941
- /* returns all the dataObjects */
17929
+ /* returns the nested DO */
17942
17930
  var _getNestedDataObject = function (id) {
17943
17931
  for (var doIterator = 0; doIterator < _nestedDataObjects.length; doIterator++) {
17944
17932
  if (id === _nestedDataObjects[doIterator].Id) {
17945
- return _nestedDataObjects[doIterator];
17933
+ var nestedDO = _nestedDataObjects[doIterator];
17934
+ if(nestedDO.DataObjectReference && nestedDO.DataObjectReference.TargetDataObjectId){
17935
+ return _getNestedDataObject(nestedDO.DataObjectReference.TargetDataObjectId);
17936
+ }
17937
+ return nestedDO;
17946
17938
  }
17947
17939
  }
17948
17940
  };
@@ -17988,7 +17980,15 @@ var TermsBuilder = (function() {
17988
17980
  dataObject = _dataObjects[doIterator];
17989
17981
  if(dataObject.Id === term.ResultDataObjectId) {
17990
17982
  var doVisited = [];
17983
+ //check if DO reference
17984
+ var referencedDO = null;
17985
+ if(dataObject.DataObjectReference && dataObject.DataObjectReference.TargetDataObjectId){
17986
+ referencedDO = _getNestedDataObject(dataObject.DataObjectReference.TargetDataObjectId);
17987
+ }
17991
17988
  attributes = dataObject.Attributes;
17989
+ if(referencedDO){
17990
+ attributes = referencedDO.Attributes;
17991
+ }
17992
17992
  for (var attrIterator = 0; attrIterator < attributes.length; attrIterator++) {
17993
17993
  attribute = attributes[attrIterator];
17994
17994
  //if label is undefined then name will be used for label map
@@ -18005,10 +18005,13 @@ var TermsBuilder = (function() {
18005
18005
  }
18006
18006
 
18007
18007
  associations = dataObject.Associations;
18008
+ if(referencedDO){
18009
+ associations = referencedDO.Associations;
18010
+ }
18008
18011
  for (var assocIterator = 0; assocIterator < associations.length; assocIterator++) {
18009
18012
  association = associations[assocIterator];
18010
18013
  doVisited.push(dataObject.Id);
18011
- _generateTermsFromAssociations(association, dataObject, vocaId, rule.Name, rule.Id, ruleLabel, doVisited);
18014
+ _generateTermsFromAssociations(association, vocaId, rule.Name, rule.Id, ruleLabel, doVisited);
18012
18015
  doVisited.pop();
18013
18016
  doVisited.pop();
18014
18017
  }
@@ -18017,10 +18020,13 @@ var TermsBuilder = (function() {
18017
18020
  if(dataObject && dataObject.References) {
18018
18021
  references = dataObject.References;
18019
18022
  }
18023
+ if(referencedDO){
18024
+ references = referencedDO.References;
18025
+ }
18020
18026
  for (var refIterator = 0; refIterator < references.length; refIterator++) {
18021
18027
  reference = references[refIterator];
18022
18028
  doVisited.push(dataObject.Id);
18023
- _generateTermsFromReferences(reference, dataObject, vocaId, rule.Name, rule.Id, ruleLabel, doVisited);
18029
+ _generateTermsFromReferences(reference, vocaId, rule.Name, rule.Id, ruleLabel, doVisited);
18024
18030
  doVisited.pop();
18025
18031
  doVisited.pop();
18026
18032
  }
@@ -18081,8 +18087,17 @@ var TermsBuilder = (function() {
18081
18087
  termsProviderInstance.addToTermsIdMap(dataObject.Id, term);
18082
18088
  termsProviderInstance.addToTermsNameMap(dataObject.Name, term);
18083
18089
  termsProviderInstance.addToTermsLabelMap(doLabel, term);
18090
+
18091
+ //check if DO reference
18092
+ var referencedDO = null;
18093
+ if(dataObject.DataObjectReference && dataObject.DataObjectReference.TargetDataObjectId){
18094
+ referencedDO = _getNestedDataObject(dataObject.DataObjectReference.TargetDataObjectId);
18095
+ }
18084
18096
 
18085
18097
  attributes = dataObject.Attributes;
18098
+ if(referencedDO){
18099
+ attributes = referencedDO.Attributes;
18100
+ }
18086
18101
  for (var attrIterator = 0; attrIterator < attributes.length; attrIterator++) {
18087
18102
  attribute = attributes[attrIterator];
18088
18103
  //if label is undefined then name will be used for label map
@@ -18100,10 +18115,13 @@ var TermsBuilder = (function() {
18100
18115
 
18101
18116
  var doVisited = [];
18102
18117
  associations = dataObject.Associations;
18118
+ if(referencedDO){
18119
+ associations = referencedDO.Associations;
18120
+ }
18103
18121
  for (var assocIterator = 0; assocIterator < associations.length; assocIterator++) {
18104
18122
  association = associations[assocIterator];
18105
18123
  doVisited.push(dataObject.Id);
18106
- _generateTermsFromAssociations(association, dataObject, vocaId, dataObject.Name, dataObject.Id, doLabel, doVisited);
18124
+ _generateTermsFromAssociations(association, vocaId, dataObject.Name, dataObject.Id, doLabel, doVisited);
18107
18125
  doVisited.pop();
18108
18126
  doVisited.pop();
18109
18127
  }
@@ -18112,10 +18130,13 @@ var TermsBuilder = (function() {
18112
18130
  if(dataObject && dataObject.References) {
18113
18131
  references = dataObject.References;
18114
18132
  }
18133
+ if(referencedDO){
18134
+ references = referencedDO.References;
18135
+ }
18115
18136
  for (var refIterator = 0; refIterator < references.length; refIterator++) {
18116
18137
  reference = references[refIterator];
18117
18138
  doVisited.push(dataObject.Id);
18118
- _generateTermsFromReferences(reference, dataObject, vocaId, dataObject.Name, dataObject.Id, doLabel, doVisited);
18139
+ _generateTermsFromReferences(reference, vocaId, dataObject.Name, dataObject.Id, doLabel, doVisited);
18119
18140
  doVisited.pop();
18120
18141
  doVisited.pop();
18121
18142
  }
@@ -18248,675 +18269,675 @@ exports.Term = Term;
18248
18269
  /***/ (function(module, exports, __webpack_require__) {
18249
18270
 
18250
18271
  "use strict";
18251
-
18252
- var __extends = (this && this.__extends) || function (d, b) {
18253
- for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
18254
- function __() { this.constructor = d; }
18255
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
18256
- };
18257
- var idpVisitor = __webpack_require__(20);
18258
- var IDPParser = __webpack_require__(31);
18259
- var IDPCustomVisitor = (function (_super, IDPParser) {
18260
- __extends(IDPCustomVisitor, _super);
18261
-
18262
- var idpNode = __webpack_require__(21);
18263
- var ASTConstants = __webpack_require__(19);
18264
- ASTConstants = ASTConstants.ASTConstants;
18265
- var sequence = 1;
18266
-
18267
- function IDPCustomVisitor() {
18268
- _super.apply(this, arguments);
18269
- sequence = 1;
18270
- }
18271
-
18272
- IDPCustomVisitor.prototype.getIDPParser = function () {
18273
- return IDPParser.IDPParser;
18274
- };
18275
-
18276
- IDPCustomVisitor.prototype.visitRules = function (context) {
18277
- var a = context;
18278
- var nodes = [];
18279
- a = returnNodeTree(context.children[0], [], null, null, this);
18280
- var node = null;
18281
-
18282
- for (var i = 0; i < a.length; i++) {
18283
- var terminalNode = returnTerminalNode(a[i]);
18284
-
18285
- if (terminalNode.symbol.type === this.getIDPParser().AND) {
18286
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.AND);
18287
- nodes[i] = node;
18288
- } else if (terminalNode.symbol.type === this.getIDPParser().OR) {
18289
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.OR);
18290
- nodes[i] = node;
18291
- } else if (terminalNode.symbol.type === this.getIDPParser().EQUAL) {
18292
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISEQUAL);
18293
- nodes[i] = node;
18294
- } else if (terminalNode.symbol.type === this.getIDPParser().LESS_THAN) {
18295
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISLESS);
18296
- nodes[i] = node;
18297
- } else if (terminalNode.symbol.type === this.getIDPParser().GREATER_THAN) {
18298
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISGREATER);
18299
- nodes[i] = node;
18300
- } else if (terminalNode.symbol.type === this.getIDPParser().LESS_THAN_EQUAL) {
18301
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISLESSEQUAL);
18302
- nodes[i] = node;
18303
- } else if (terminalNode.symbol.type === this.getIDPParser().GREATER_THAN_EQUAL) {
18304
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISGREATEREQUAL);
18305
- nodes[i] = node;
18306
- } else if (terminalNode.symbol.type === this.getIDPParser().NOT_EQUAL) {
18307
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISNOTEQUAL);
18308
- nodes[i] = node;
18309
- } else if (terminalNode.symbol.type === this.getIDPParser().DIV) {
18310
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.DIVIDE);
18311
- nodes[i] = node;
18312
- } else if (terminalNode.symbol.type === this.getIDPParser().MULT) {
18313
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.MULTIPLY);
18314
- nodes[i] = node;
18315
- } else if (terminalNode.symbol.type === this.getIDPParser().ADD) {
18316
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ADD);
18317
- nodes[i] = node;
18318
- } else if (terminalNode.symbol.type === this.getIDPParser().MINUS) {
18319
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.SUBTRACT);
18320
- nodes[i] = node;
18321
- }
18322
- else if (terminalNode.symbol.type === this.getIDPParser().NUMERIC_LITERAL) {
18323
- node = null;
18324
- if (terminalNode.symbol.__inputType === this.getIDPParser().MINUS) {
18325
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.NUMBER,
18326
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.__inputText);
18327
- } else {
18328
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.NUMBER,
18329
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18330
- }
18331
- nodes[i] = node;
18332
- }
18333
- else if (terminalNode.symbol.type === this.getIDPParser().NUMERIC_LITERAL_UNIT) {
18334
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.QUANTITY,
18335
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18336
- nodes[i] = node;
18337
- }
18338
- else if (terminalNode.symbol.type === this.getIDPParser().STRING) {
18339
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.STRING,
18340
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18341
- nodes[i] = node;
18342
- }
18343
- else if ((terminalNode.symbol.type === this.getIDPParser().GEOJSON_POINT) || (terminalNode.symbol.type === this.getIDPParser().GEOJSON_POLYGON)) {
18344
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.GEOJSON,
18345
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18346
- nodes[i] = node;
18347
- }
18348
- else if ((terminalNode.symbol.type === this.getIDPParser().FULLTIME) || (terminalNode.symbol.type === this.getIDPParser().PARTIALTIME)) {
18349
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.TIME,
18350
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18351
- nodes[i] = node;
18352
- }
18353
- else if (terminalNode.symbol.type === this.getIDPParser().DATETIME) {
18354
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.UTC_TIMESTAMP,
18355
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18356
- nodes[i] = node;
18357
- }
18358
- else if (terminalNode.symbol.type === this.getIDPParser().FULLDATE) {
18359
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.DATE,
18360
- ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18361
- nodes[i] = node;
18362
- }
18363
- else if (terminalNode.symbol.type === this.getIDPParser().LROUNDB) {
18364
- node = createParenthesisNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.PARENTHESIS);
18365
- nodes[i] = node;
18366
- }
18367
- else if (terminalNode.symbol.type === this.getIDPParser().BOOL) {
18368
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.BOOLEAN, ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18369
- nodes[i] = node;
18370
- }
18371
- else if (terminalNode.symbol.type === this.getIDPParser().NUMERIC_LITERAL_AMOUNT) {
18372
- node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.AMOUNT, ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18373
- nodes[i] = node;
18374
- }
18375
- else if (terminalNode.symbol.type === this.getIDPParser().FUNCTION_NAME) {
18376
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18377
- nodes[i] = node;
18378
- }
18379
- else if (terminalNode.symbol.type === this.getIDPParser().ADVANCED_FUNCTION_NAME) {
18380
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18381
- nodes[i] = node;
18382
- }
18383
- else if (terminalNode.symbol.type === this.getIDPParser().WINDOW_FUNCTION_NAME) {
18384
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18385
- nodes[i] = node;
18386
- } else if (terminalNode.symbol.type === this.getIDPParser().OPERATION_FUNCTION_NAME) {
18387
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18388
- nodes[i] = node;
18389
- } else if (terminalNode.symbol.type === this.getIDPParser().LOOP_FUNCTION_NAME) {
18390
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18391
- nodes[i] = node;
18392
- }
18393
- else if (terminalNode.symbol.type === this.getIDPParser().DATE_TIME_FUNCTION_NAME) {
18394
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18395
- nodes[i] = node;
18396
- }
18397
- else if (terminalNode.symbol.type === this.getIDPParser().FUNCTIONAL_OPERATOR) {
18398
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18399
- nodes[i] = node;
18400
- }
18401
- else if (terminalNode.symbol.type === this.getIDPParser().ARRAY_OPERATOR) {
18402
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18403
- nodes[i] = node;
18404
- }
18405
- else if (terminalNode.symbol.type === this.getIDPParser().RANGE_OPERATOR) {
18406
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18407
- nodes[i] = node;
18408
- }
18409
- else if (terminalNode.symbol.type === this.getIDPParser().RANGE_DOTS) {
18410
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode._functionName);
18411
- nodes[i] = node;
18412
- }
18413
- else if (terminalNode.symbol.type === ASTConstants.ARRAY) {
18414
- node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18415
- nodes[i] = node;
18416
- }
18417
- else if (terminalNode.symbol.type === this.getIDPParser().ID) {
18418
- nodes[i] = createReferenceNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18419
- }
18420
- else if (terminalNode.symbol.type === this.getIDPParser().PLACEHOLDER_ID || terminalNode.symbol.type === this.getIDPParser().PLACEHOLDER_OPERATOR) {
18421
- nodes[i] = createPlaceholderNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber);
18422
- }
18423
- }
18424
- nodes[0].setRoot(true);
18425
- nodes[0].setSequenceNumber(1);
18426
- return nodes;
18427
- }
18428
-
18429
- function returnNodeTree(context, nodes, parentId, sequenceNumber, that) {
18430
-
18431
- //Single Expression
18432
- if (context.children.length === 1) {
18433
- var singleNode = context.children[0];
18434
- if ((singleNode.start && singleNode.start.text === "{") && (singleNode.stop && singleNode.stop.text === "}")) {
18435
- if (singleNode.children[0].children[1].children[5].symbol.type === that.getIDPParser().POINT) {
18436
- var arrayOfValues = singleNode.children[0].children[3].children[2].children[0].children;
18437
- }
18438
- if (singleNode.children[0].children[1].children[5].symbol.type === that.getIDPParser().POLYGON) {
18439
-
18440
- }
18441
- }
18442
- singleNode.Id = uuidv4();
18443
- nodes.push(singleNode);
18444
- return nodes;
18445
- }
18446
-
18447
- //Multiple Expressions
18448
- if (context.children.length > 1) {
18449
- var left = context.children[0];
18450
- var right = context.children[2];
18451
- var node = context.children[1];
18452
- var thirdNode = null;
18453
- var fourthNode = null;
18454
- var parNode = null;
18455
- var exprList = [];
18456
-
18457
- if (node) {
18458
- node.Id = uuidv4();
18459
- }
18460
-
18461
- if (left) {
18462
- left.Id = uuidv4();
18463
- }
18464
-
18465
- if (right) {
18466
- right.Id = uuidv4();
18467
- }
18468
-
18469
- if (node && node.children && node.children[0] && node.children[0].symbol && node.children[0].symbol.type == that.getIDPParser().ARRAY_OPERATOR && right && right.children && right.children[0] && right.children[0].symbol && right.children[0].symbol.type == that.getIDPParser().FUNCTION_NAME) {
18470
-
18471
- expressionNodes = context.children[4];
18472
- if (context && expressionNodes.children && expressionNodes.children.length >= 1) {
18473
- var j = 1;
18474
- for (var i = 0; i < expressionNodes.children.length; i = i + 2) {
18475
- expressionNodes.children[i].Id = uuidv4();
18476
- expressionNodes.children[i].ParentId = right.Id;
18477
- expressionNodes.children[i].SequenceNumber = j;
18478
- exprList.push(expressionNodes.children[i]);
18479
- j++;
18480
- }
18481
- }
18482
- //right = null;
18483
-
18484
- }
18485
-
18486
- //Parantesis node
18487
- else if ((left && left.symbol && left.symbol.type === that.getIDPParser().LROUNDB) && (right && right.symbol && right.symbol.type === that.getIDPParser().RROUNDB)) {
18488
-
18489
- parNode = {
18490
- Id: left.Id,
18491
- };
18492
-
18493
- if (parentId) {
18494
- parNode.ParentId = parentId;
18495
- }
18496
-
18497
- if (sequenceNumber) {
18498
- parNode.SequenceNumber = sequenceNumber;
18499
- }
18500
-
18501
- parNode.children = [left];
18502
- node.ParentId = parNode.Id;
18503
-
18504
- }
18505
-
18506
- //Unary Minus expression
18507
- else if (!right && left && node) {
18508
- if (left.children[0].symbol.type === that.getIDPParser().MINUS && node.children[0].children[0].symbol.type === that.getIDPParser().NUMERIC_LITERAL) {
18509
- node.children[0].children[0].symbol.__inputText = left.children[0].symbol.text + node.children[0].children[0].symbol.text;
18510
- node.children[0].children[0].symbol.__inputType = that.getIDPParser().MINUS;
18511
- }
18512
- left = null;
18513
- }
18514
-
18515
- //Functional expression
18516
- else if (left && left.children && left.children[0].symbol && (left.children[0].symbol.type === that.getIDPParser().FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().ADVANCED_FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().WINDOW_FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().OPERATION_FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().DATE_TIME_FUNCTION_NAME
18517
- || left.children[0].symbol.type === that.getIDPParser().LOOP_FUNCTION_NAME)) {
18518
- node = {};
18519
- node.Id = left.Id;
18520
- node.children = [left.children[0]];
18521
-
18522
- if (right && right.children && right.children.length >= 1) {
18523
- var j = 1;
18524
- for (var i = 0; i < right.children.length; i = i + 2) {
18525
- right.children[i].Id = uuidv4();
18526
- right.children[i].ParentId = node.Id;
18527
- right.children[i].SequenceNumber = j;
18528
- exprList.push(right.children[i]);
18529
- j++;
18530
- }
18531
- }
18532
- right = null;
18533
- left = null;
18534
-
18535
- }
18536
- //Range Operator
18537
- if ((node && node.symbol && node.symbol.type === that.getIDPParser().PLACEHOLDER_OPERATOR) || (node && node.children && node.children.length === 1 && node.children[0].symbol
18538
- && node.children[0].symbol.type === that.getIDPParser().RANGE_OPERATOR)) {
18539
- var rangeNode = context.children[4];
18540
- if (rangeNode && rangeNode.symbol && rangeNode.symbol.type === that.getIDPParser().RANGE_DOTS) {
18541
- var leftBracket = context.children[2];
18542
- var rightBracket = context.children[6];
18543
- if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LSQUAREB) &&
18544
- (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RSQUAREB)) {
18545
- rangeNode.Id = right.Id;
18546
- rangeNode._functionName = ASTConstants.RANGEINCLUSIVE;
18547
- right.children = [rangeNode];
18548
- }
18549
-
18550
- if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LROUNDB) &&
18551
- (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RSQUAREB)) {
18552
- rangeNode.Id = right.Id;
18553
- rangeNode._functionName = ASTConstants.RANGETOINCLUSIVE;
18554
- right.children = [rangeNode];
18555
- }
18556
-
18557
- if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LSQUAREB) &&
18558
- (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RROUNDB)) {
18559
- rangeNode.Id = right.Id;
18560
- rangeNode._functionName = ASTConstants.RANGEFROMINCLUSIVE;
18561
- right.children = [rangeNode];
18562
- }
18563
-
18564
- if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LROUNDB) &&
18565
- (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RROUNDB)) {
18566
- rangeNode.Id = right.Id;
18567
- rangeNode._functionName = ASTConstants.RANGEEXCLUSIVE;
18568
- right.children = [rangeNode];
18569
- }
18570
-
18571
- thirdNode = context.children[3];
18572
- fourthNode = context.children[5];
18573
- thirdNode.SequenceNumber = 1;
18574
- fourthNode.SequenceNumber = 2;
18575
- thirdNode.Id = uuidv4();
18576
- fourthNode.Id = uuidv4();
18577
- thirdNode.ParentId = rangeNode.Id;
18578
- fourthNode.ParentId = rangeNode.Id;
18579
- }
18580
-
18581
-
18582
- }
18583
-
18584
- //Functional Operator expression like 1 IN [1..2]
18585
- if ((node && node.symbol && node.symbol.type === that.getIDPParser().PLACEHOLDER_OPERATOR &&
18586
- right && right.symbol && right.symbol.type === that.getIDPParser().LSQUAREB)
18587
- ||
18588
- (node && node.children && node.children.length === 1 && node.children[0].symbol
18589
- && node.children[0].symbol.type === that.getIDPParser().ARRAY_OPERATOR
18590
- && right && right.symbol && right.symbol.type === that.getIDPParser().LSQUAREB)) {
18591
- var rangeNode = context.children[4];
18592
- if (rangeNode && rangeNode.symbol && rangeNode.symbol.type === that.getIDPParser().RANGE_DOTS) {
18593
- rangeNode.Id = right.Id;
18594
- right.children = [rangeNode];
18595
- thirdNode = context.children[3];
18596
- fourthNode = context.children[5];
18597
- thirdNode.SequenceNumber = 1;
18598
- fourthNode.SequenceNumber = 2;
18599
- thirdNode.Id = uuidv4();
18600
- fourthNode.Id = uuidv4();
18601
- thirdNode.ParentId = rangeNode.Id;
18602
- fourthNode.ParentId = rangeNode.Id;
18603
- } else if (rangeNode && rangeNode.symbol && rangeNode.symbol.type === that.getIDPParser().RSQUAREB) {
18604
- var arrayNode = {};
18605
- arrayNode.Id = uuidv4();
18606
- arrayNode.ParentId = node.Id;
18607
- arrayNode.symbol = {};
18608
- arrayNode.symbol.type = ASTConstants.ARRAY;
18609
- arrayNode.symbol.text = ASTConstants.ARRAY;
18610
- right.Id = arrayNode.Id;
18611
- right.ParentId = arrayNode.ParentId;
18612
- right.children = [arrayNode];
18613
- var expressionNodes = context.children[3];
18614
- var j = 1;
18615
- for (var i = 0; i < expressionNodes.children.length; i = i + 2) {
18616
- expressionNodes.children[i].Id = uuidv4();
18617
- expressionNodes.children[i].ParentId = right.Id;
18618
- expressionNodes.children[i].SequenceNumber = j;
18619
- exprList.push(expressionNodes.children[i]);
18620
- j++;
18621
- }
18622
- }
18623
-
18624
- }
18625
-
18626
-
18627
- if (left) {
18628
- left.ParentId = node.Id;
18629
- left.SequenceNumber = 1;
18630
- }
18631
- if (right) {
18632
- right.ParentId = node.Id;
18633
- right.SequenceNumber = 2;
18634
- }
18635
-
18636
- if (node && !node.ParentId && parentId) {
18637
- node.ParentId = parentId;
18638
- }
18639
- if (node && sequenceNumber) {
18640
- node.SequenceNumber = sequenceNumber;
18641
- }
18642
- }
18643
-
18644
- if (parNode && parNode.children && parNode.children.length === 1) {
18645
- nodes.push(parNode);
18646
- }
18647
-
18648
- if (node && node.Id && node.symbol) {
18649
- nodes.push(node);
18650
- }
18651
-
18652
- if (node && node.children && node.children.length === 1) {
18653
- nodes.push(node);
18654
- }
18655
- if (left && left.children && left.children.length === 1) {
18656
- nodes.push(left);
18657
- }
18658
- if (right && right.children && right.children.length === 1) {
18659
- nodes.push(right);
18660
- }
18661
-
18662
- if (thirdNode && thirdNode.children && thirdNode.children.length === 1) {
18663
- nodes.push(thirdNode);
18664
- }
18665
-
18666
- if (fourthNode && fourthNode.children && fourthNode.children.length === 1) {
18667
- nodes.push(fourthNode);
18668
- }
18669
-
18670
-
18671
- if (left && left.children && left.children.length > 1) {
18672
- returnNodeTree(left, nodes, node.Id, 1, that);
18673
- resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18674
- }
18675
-
18676
- if (right && right.children && right.children.length > 1) {
18677
- returnNodeTree(right, nodes, node.Id, 2, that);
18678
- resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18679
- }
18680
-
18681
- if (thirdNode && thirdNode.children && thirdNode.children.length > 1) {
18682
- if(thirdNode.ParentId && thirdNode.SequenceNumber) {
18683
- returnNodeTree(thirdNode, nodes, thirdNode.ParentId, thirdNode.SequenceNumber, that);
18684
- } else {
18685
- returnNodeTree(thirdNode, nodes, node.Id, 3, that);
18686
- }
18687
-
18688
- resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18689
- }
18690
- if (fourthNode && fourthNode.children && fourthNode.children.length > 1) {
18691
- if(fourthNode.ParentId && fourthNode.SequenceNumber) {
18692
- returnNodeTree(fourthNode, nodes, fourthNode.ParentId, fourthNode.SequenceNumber, that);
18693
- } else {
18694
- returnNodeTree(fourthNode, nodes, node.Id, 3, that);
18695
- }
18696
- resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18697
- }
18698
-
18699
- if (exprList.length > 0) {
18700
- for (var i = 0; i < exprList.length; i++) {
18701
- if (exprList[i] && exprList[i].children && exprList[i].children.length === 1) {
18702
- nodes.push(exprList[i]);
18703
- }
18704
- if (exprList[i] && exprList[i].children && exprList[i].children.length > 1) {
18705
- if (right && right.children && right.children[0].symbol.type == that.getIDPParser().FUNCTION_NAME) {
18706
- returnNodeTree(exprList[i], nodes, right.Id, i + 1, that);
18707
- } else {
18708
- returnNodeTree(exprList[i], nodes, node.Id, i + 1, that);
18709
- }
18710
- resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18711
- }
18712
- }
18713
- }
18714
-
18715
- if (node && node.children && node.children.length > 1) {
18716
- returnNodeTree(node, nodes, node.ParentId ? node.ParentId : node.Id, 1, that);
18717
- resetAll(left, right, node, thirdNode, fourthNode, parNode);
18718
- }
18719
-
18720
- return nodes;
18721
- }
18722
-
18723
- function returnTerminalNode(node) {
18724
- var Id = node.Id;
18725
- var ParentId = node.ParentId;
18726
- var SequenceNumber = node.SequenceNumber;
18727
- if (node.children) {
18728
- node = returnTerminalNode(node.children[0]);
18729
- }
18730
- node.Id = Id;
18731
- node.ParentId = ParentId;
18732
- node.SequenceNumber = SequenceNumber;
18733
- return node;
18734
- }
18735
-
18736
- function resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList) {
18737
- left = null;
18738
- right = null;
18739
- node = null;
18740
- thirdNode = null;
18741
- fourthNode = null;
18742
- parNode = null;
18743
- exprList = [];
18744
- }
18745
-
18746
- var createReferenceNode = function (Id, ParentId, SequenceNumber, value) {
18747
- var node = new idpNode.Node();
18748
- node.setId(Id);
18749
- node.setParentId(ParentId);
18750
- node.setSequenceNumber(SequenceNumber);
18751
- node.setType(ASTConstants.Node.Type.OBJECT_ID);
18752
- node.setReference(value);
18753
- return node;
18754
- };
18755
-
18756
- var createParenthesisNode = function (Id, ParentId, SequenceNumber, type, value) {
18757
- var node = new idpNode.Node();
18758
- node.setId(Id);
18759
- node.setParentId(ParentId);
18760
- node.setSequenceNumber(SequenceNumber);
18761
- node.setType(type);
18762
- node.setValue(value);
18763
- return node;
18764
- };
18765
-
18766
- var createFunctionNode = function (Id, ParentId, SequenceNumber, value) {
18767
- var node = new idpNode.Node();
18768
- node.setId(Id);
18769
- node.setParentId(ParentId);
18770
- node.setSequenceNumber(SequenceNumber);
18771
- node.setFunctionValue(ASTConstants[value.toUpperCase()]);
18772
- return node;
18773
- };
18774
-
18775
- var createLiteralNode = function (Id, ParentId, SequenceNumber, type, businessDataType, dataObjectType, value) {
18776
- var node = new idpNode.Node();
18777
- node.setId(Id);
18778
- node.setParentId(ParentId);
18779
- node.setSequenceNumber(SequenceNumber);
18780
- node.setType(type);
18781
- node.setBusinessDataType(businessDataType);
18782
- node.setDataObjectType(dataObjectType);
18783
- if (businessDataType === "S" || businessDataType === "T" || businessDataType === "Q" ||
18784
- businessDataType === "D" || businessDataType === "U" || businessDataType === "G" ||
18785
- businessDataType === "A") {
18786
- value = stripQuotes(value);
18787
- }
18788
- //CSN - 2080090688
18789
- //to store without \ in db
18790
- if(businessDataType === "S"){
18791
- value = value.replace(/\\'/g,"'");
18792
- }
18793
- node.setValue(value);
18794
- return node;
18795
- };
18796
-
18797
- var stripQuotes = function (value) {
18798
- var len = value.length;
18799
- if (value.charAt(0) === '\'') value = value.substring(1, len--);
18800
- if (value.charAt(--len) == '\'') value = value.substring(0, len);
18801
- return value;
18802
- }
18803
-
18804
- IDPCustomVisitor.prototype.createErrorNode = function (expr) {
18805
- var node = new idpNode.Node();
18806
- node.setId(uuidv4());
18807
- node.setSequenceNumber(1);
18808
- node.setValue(expr);
18809
- node.setType(ASTConstants.Node.Type.ERROR);
18810
- node.setRoot(true);
18811
- return [node];
18812
- };
18813
-
18814
- var createPlaceholderNode = function (Id, ParentId, SequenceNumber, type) {
18815
- var node = new idpNode.Node();
18816
- node.setId(Id);
18817
- node.setParentId(ParentId);
18818
- node.setSequenceNumber(SequenceNumber);
18819
- node.setType(ASTConstants.Node.Type.MARKER);
18820
- return node;
18821
- };
18822
-
18823
- IDPCustomVisitor.prototype.resetSequenceNumber = function() {
18824
- sequence = 1;
18825
- }
18826
-
18827
-
18828
-
18829
-
18830
- function uuidv4() {
18831
- return ""+sequence++;
18832
- }
18833
-
18834
- function returnNodeFromArray(arrayObject) {
18835
- var tempObject = arrayObject;
18836
- if (!Array.isArray(tempObject)) {
18837
- return tempObject;
18838
- } else {
18839
- return returnNodeFromArray(arrayObject[0]);
18840
- }
18841
-
18842
- };
18843
- return IDPCustomVisitor;
18844
- }(idpVisitor.IDPVisitor, IDPParser));
18845
- exports.IDPCustomVisitor = IDPCustomVisitor;
18846
18272
 
18273
+ var __extends = (this && this.__extends) || function (d, b) {
18274
+ for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
18275
+ function __() { this.constructor = d; }
18276
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
18277
+ };
18278
+ var idpVisitor = __webpack_require__(20);
18279
+ var IDPParser = __webpack_require__(31);
18280
+ var IDPCustomVisitor = (function (_super, IDPParser) {
18281
+ __extends(IDPCustomVisitor, _super);
18847
18282
 
18848
- /***/ }),
18849
- /* 59 */
18850
- /***/ (function(module, exports, __webpack_require__) {
18851
-
18852
- "use strict";
18283
+ var idpNode = __webpack_require__(21);
18284
+ var ASTConstants = __webpack_require__(19);
18285
+ ASTConstants = ASTConstants.ASTConstants;
18286
+ var sequence = 1;
18853
18287
 
18288
+ function IDPCustomVisitor() {
18289
+ _super.apply(this, arguments);
18290
+ sequence = 1;
18291
+ }
18854
18292
 
18855
- var ATNState = __webpack_require__(3).ATNState;
18856
- var Transition = __webpack_require__(6).Transition;
18857
- var IntervalSet = __webpack_require__(2).IntervalSet;
18858
- var Token = __webpack_require__(1).Token;
18859
- var ParserRuleContext = __webpack_require__(15).ParserRuleContext;
18293
+ IDPCustomVisitor.prototype.getIDPParser = function () {
18294
+ return IDPParser.IDPParser;
18295
+ };
18860
18296
 
18861
- var AutoSuggest = (function() {
18862
- var FollowSetWithPath = (function() {
18863
- function FollowSetWithPath() {
18864
- this.path = [];
18297
+ IDPCustomVisitor.prototype.visitRules = function (context) {
18298
+ var a = context;
18299
+ var nodes = [];
18300
+ a = returnNodeTree(context.children[0], [], null, null, this);
18301
+ var node = null;
18302
+
18303
+ for (var i = 0; i < a.length; i++) {
18304
+ var terminalNode = returnTerminalNode(a[i]);
18305
+
18306
+ if (terminalNode.symbol.type === this.getIDPParser().AND) {
18307
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.AND);
18308
+ nodes[i] = node;
18309
+ } else if (terminalNode.symbol.type === this.getIDPParser().OR) {
18310
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.OR);
18311
+ nodes[i] = node;
18312
+ } else if (terminalNode.symbol.type === this.getIDPParser().EQUAL) {
18313
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISEQUAL);
18314
+ nodes[i] = node;
18315
+ } else if (terminalNode.symbol.type === this.getIDPParser().LESS_THAN) {
18316
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISLESS);
18317
+ nodes[i] = node;
18318
+ } else if (terminalNode.symbol.type === this.getIDPParser().GREATER_THAN) {
18319
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISGREATER);
18320
+ nodes[i] = node;
18321
+ } else if (terminalNode.symbol.type === this.getIDPParser().LESS_THAN_EQUAL) {
18322
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISLESSEQUAL);
18323
+ nodes[i] = node;
18324
+ } else if (terminalNode.symbol.type === this.getIDPParser().GREATER_THAN_EQUAL) {
18325
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISGREATEREQUAL);
18326
+ nodes[i] = node;
18327
+ } else if (terminalNode.symbol.type === this.getIDPParser().NOT_EQUAL) {
18328
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ISNOTEQUAL);
18329
+ nodes[i] = node;
18330
+ } else if (terminalNode.symbol.type === this.getIDPParser().DIV) {
18331
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.DIVIDE);
18332
+ nodes[i] = node;
18333
+ } else if (terminalNode.symbol.type === this.getIDPParser().MULT) {
18334
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.MULTIPLY);
18335
+ nodes[i] = node;
18336
+ } else if (terminalNode.symbol.type === this.getIDPParser().ADD) {
18337
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.ADD);
18338
+ nodes[i] = node;
18339
+ } else if (terminalNode.symbol.type === this.getIDPParser().MINUS) {
18340
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.SUBTRACT);
18341
+ nodes[i] = node;
18342
+ }
18343
+ else if (terminalNode.symbol.type === this.getIDPParser().NUMERIC_LITERAL) {
18344
+ node = null;
18345
+ if (terminalNode.symbol.__inputType === this.getIDPParser().MINUS) {
18346
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.NUMBER,
18347
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.__inputText);
18348
+ } else {
18349
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.NUMBER,
18350
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18351
+ }
18352
+ nodes[i] = node;
18353
+ }
18354
+ else if (terminalNode.symbol.type === this.getIDPParser().NUMERIC_LITERAL_UNIT) {
18355
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.QUANTITY,
18356
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18357
+ nodes[i] = node;
18358
+ }
18359
+ else if (terminalNode.symbol.type === this.getIDPParser().STRING) {
18360
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.STRING,
18361
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18362
+ nodes[i] = node;
18363
+ }
18364
+ else if ((terminalNode.symbol.type === this.getIDPParser().GEOJSON_POINT) || (terminalNode.symbol.type === this.getIDPParser().GEOJSON_POLYGON)) {
18365
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.GEOJSON,
18366
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18367
+ nodes[i] = node;
18368
+ }
18369
+ else if ((terminalNode.symbol.type === this.getIDPParser().FULLTIME) || (terminalNode.symbol.type === this.getIDPParser().PARTIALTIME)) {
18370
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.TIME,
18371
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18372
+ nodes[i] = node;
18373
+ }
18374
+ else if (terminalNode.symbol.type === this.getIDPParser().DATETIME) {
18375
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.UTC_TIMESTAMP,
18376
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18377
+ nodes[i] = node;
18378
+ }
18379
+ else if (terminalNode.symbol.type === this.getIDPParser().FULLDATE) {
18380
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.DATE,
18381
+ ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18382
+ nodes[i] = node;
18383
+ }
18384
+ else if (terminalNode.symbol.type === this.getIDPParser().LROUNDB) {
18385
+ node = createParenthesisNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.PARENTHESIS);
18386
+ nodes[i] = node;
18387
+ }
18388
+ else if (terminalNode.symbol.type === this.getIDPParser().BOOL) {
18389
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.BOOLEAN, ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18390
+ nodes[i] = node;
18391
+ }
18392
+ else if (terminalNode.symbol.type === this.getIDPParser().NUMERIC_LITERAL_AMOUNT) {
18393
+ node = createLiteralNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, ASTConstants.Node.Type.LITERAL, ASTConstants.Node.BusinessDataType.AMOUNT, ASTConstants.Node.DataObjectType.ELEMENT, terminalNode.symbol.text);
18394
+ nodes[i] = node;
18395
+ }
18396
+ else if (terminalNode.symbol.type === this.getIDPParser().FUNCTION_NAME) {
18397
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18398
+ nodes[i] = node;
18399
+ }
18400
+ else if (terminalNode.symbol.type === this.getIDPParser().ADVANCED_FUNCTION_NAME) {
18401
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18402
+ nodes[i] = node;
18403
+ }
18404
+ else if (terminalNode.symbol.type === this.getIDPParser().WINDOW_FUNCTION_NAME) {
18405
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18406
+ nodes[i] = node;
18407
+ } else if (terminalNode.symbol.type === this.getIDPParser().OPERATION_FUNCTION_NAME) {
18408
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18409
+ nodes[i] = node;
18410
+ } else if (terminalNode.symbol.type === this.getIDPParser().LOOP_FUNCTION_NAME) {
18411
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18412
+ nodes[i] = node;
18413
+ }
18414
+ else if (terminalNode.symbol.type === this.getIDPParser().DATE_TIME_FUNCTION_NAME) {
18415
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18416
+ nodes[i] = node;
18417
+ }
18418
+ else if (terminalNode.symbol.type === this.getIDPParser().FUNCTIONAL_OPERATOR) {
18419
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18420
+ nodes[i] = node;
18421
+ }
18422
+ else if (terminalNode.symbol.type === this.getIDPParser().ARRAY_OPERATOR) {
18423
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18424
+ nodes[i] = node;
18425
+ }
18426
+ else if (terminalNode.symbol.type === this.getIDPParser().RANGE_OPERATOR) {
18427
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18428
+ nodes[i] = node;
18429
+ }
18430
+ else if (terminalNode.symbol.type === this.getIDPParser().RANGE_DOTS) {
18431
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode._functionName);
18432
+ nodes[i] = node;
18433
+ }
18434
+ else if (terminalNode.symbol.type === ASTConstants.ARRAY) {
18435
+ node = createFunctionNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18436
+ nodes[i] = node;
18437
+ }
18438
+ else if (terminalNode.symbol.type === this.getIDPParser().ID) {
18439
+ nodes[i] = createReferenceNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber, terminalNode.symbol.text);
18440
+ }
18441
+ else if (terminalNode.symbol.type === this.getIDPParser().PLACEHOLDER_ID || terminalNode.symbol.type === this.getIDPParser().PLACEHOLDER_OPERATOR) {
18442
+ nodes[i] = createPlaceholderNode(terminalNode.Id, terminalNode.ParentId, terminalNode.SequenceNumber);
18443
+ }
18865
18444
  }
18866
- return FollowSetWithPath;
18867
- }());
18868
-
18869
- var FollowSetsHolder = (function() {
18870
- function FollowSetsHolder() {}
18871
- return FollowSetsHolder;
18872
- }());
18873
-
18874
- function AutoSuggest(parser) {
18875
- this.statesProcessed = 0;
18876
- this.shortcutMap = new Map();
18877
- this.suggestions = [];
18878
- this.parser = parser;
18879
- this.atn = parser.atn;
18880
- this.vocabulary = parser.vocabulary;
18881
- this.ruleNames = parser.ruleNames;
18445
+ nodes[0].setRoot(true);
18446
+ nodes[0].setSequenceNumber(1);
18447
+ return nodes;
18882
18448
  }
18883
-
18884
- AutoSuggest.prototype.collectSuggestions = function(caretTokenIndex) {
18885
- this.shortcutMap.clear();
18886
- this.statesProcessed = 0;
18887
- this.precedenceStack = [];
18888
- var tokenStream = this.parser.getInputStream();
18889
- var currentIndex = tokenStream.index;
18890
- tokenStream.seek(0);
18891
- this.tokens = [];
18892
- var i = 1;
18893
- while (true) {
18894
- var token = tokenStream.LT(i++);
18895
- this.tokens.push(token.type);
18896
- if (token.tokenIndex >= caretTokenIndex || token.type == Token.EOF)
18897
- break;
18898
- }
18899
- if (currentIndex != -1) {
18900
- tokenStream.seek(currentIndex);
18901
- }
18902
- var callStack = [];
18903
- this.processRule(this.atn.ruleToStartState[0], 0, callStack, 0);
18904
- return this.suggestions;
18905
- };
18906
18449
 
18907
- AutoSuggest.prototype.collectFollowSets = function(s, stopState, followSets, seen, ruleStack) {
18908
- if (seen.has(s))
18909
- return;
18910
- seen.add(s);
18911
- if (s == stopState || s.stateType == ATNState.RULE_STOP) {
18912
- var set = new FollowSetWithPath();
18913
- set.intervals = IntervalSet.of(Token.EPSILON);
18914
- set.path = ruleStack.slice();
18915
- followSets.push(set);
18916
- return;
18450
+ function returnNodeTree(context, nodes, parentId, sequenceNumber, that) {
18451
+
18452
+ //Single Expression
18453
+ if (context.children.length === 1) {
18454
+ var singleNode = context.children[0];
18455
+ if ((singleNode.start && singleNode.start.text === "{") && (singleNode.stop && singleNode.stop.text === "}")) {
18456
+ if (singleNode.children[0].children[1].children[5].symbol.type === that.getIDPParser().POINT) {
18457
+ var arrayOfValues = singleNode.children[0].children[3].children[2].children[0].children;
18458
+ }
18459
+ if (singleNode.children[0].children[1].children[5].symbol.type === that.getIDPParser().POLYGON) {
18460
+
18461
+ }
18462
+ }
18463
+ singleNode.Id = uuidv4();
18464
+ nodes.push(singleNode);
18465
+ return nodes;
18917
18466
  }
18918
- for (var _i = 0, _a = s.transitions; _i < _a.length; _i++) {
18919
- var transition = _a[_i];
18467
+
18468
+ //Multiple Expressions
18469
+ if (context.children.length > 1) {
18470
+ var left = context.children[0];
18471
+ var right = context.children[2];
18472
+ var node = context.children[1];
18473
+ var thirdNode = null;
18474
+ var fourthNode = null;
18475
+ var parNode = null;
18476
+ var exprList = [];
18477
+
18478
+ if (node) {
18479
+ node.Id = uuidv4();
18480
+ }
18481
+
18482
+ if (left) {
18483
+ left.Id = uuidv4();
18484
+ }
18485
+
18486
+ if (right) {
18487
+ right.Id = uuidv4();
18488
+ }
18489
+
18490
+ if (node && node.children && node.children[0] && node.children[0].symbol && node.children[0].symbol.type == that.getIDPParser().ARRAY_OPERATOR && right && right.children && right.children[0] && right.children[0].symbol && right.children[0].symbol.type == that.getIDPParser().FUNCTION_NAME) {
18491
+
18492
+ expressionNodes = context.children[4];
18493
+ if (context && expressionNodes.children && expressionNodes.children.length >= 1) {
18494
+ var j = 1;
18495
+ for (var i = 0; i < expressionNodes.children.length; i = i + 2) {
18496
+ expressionNodes.children[i].Id = uuidv4();
18497
+ expressionNodes.children[i].ParentId = right.Id;
18498
+ expressionNodes.children[i].SequenceNumber = j;
18499
+ exprList.push(expressionNodes.children[i]);
18500
+ j++;
18501
+ }
18502
+ }
18503
+ //right = null;
18504
+
18505
+ }
18506
+
18507
+ //Parantesis node
18508
+ else if ((left && left.symbol && left.symbol.type === that.getIDPParser().LROUNDB) && (right && right.symbol && right.symbol.type === that.getIDPParser().RROUNDB)) {
18509
+
18510
+ parNode = {
18511
+ Id: left.Id,
18512
+ };
18513
+
18514
+ if (parentId) {
18515
+ parNode.ParentId = parentId;
18516
+ }
18517
+
18518
+ if (sequenceNumber) {
18519
+ parNode.SequenceNumber = sequenceNumber;
18520
+ }
18521
+
18522
+ parNode.children = [left];
18523
+ node.ParentId = parNode.Id;
18524
+
18525
+ }
18526
+
18527
+ //Unary Minus expression
18528
+ else if (!right && left && node) {
18529
+ if (left.children[0].symbol.type === that.getIDPParser().MINUS && node.children[0].children[0].symbol.type === that.getIDPParser().NUMERIC_LITERAL) {
18530
+ node.children[0].children[0].symbol.__inputText = left.children[0].symbol.text + node.children[0].children[0].symbol.text;
18531
+ node.children[0].children[0].symbol.__inputType = that.getIDPParser().MINUS;
18532
+ }
18533
+ left = null;
18534
+ }
18535
+
18536
+ //Functional expression
18537
+ else if (left && left.children && left.children[0].symbol && (left.children[0].symbol.type === that.getIDPParser().FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().ADVANCED_FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().WINDOW_FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().OPERATION_FUNCTION_NAME || left.children[0].symbol.type === that.getIDPParser().DATE_TIME_FUNCTION_NAME
18538
+ || left.children[0].symbol.type === that.getIDPParser().LOOP_FUNCTION_NAME)) {
18539
+ node = {};
18540
+ node.Id = left.Id;
18541
+ node.children = [left.children[0]];
18542
+
18543
+ if (right && right.children && right.children.length >= 1) {
18544
+ var j = 1;
18545
+ for (var i = 0; i < right.children.length; i = i + 2) {
18546
+ right.children[i].Id = uuidv4();
18547
+ right.children[i].ParentId = node.Id;
18548
+ right.children[i].SequenceNumber = j;
18549
+ exprList.push(right.children[i]);
18550
+ j++;
18551
+ }
18552
+ }
18553
+ right = null;
18554
+ left = null;
18555
+
18556
+ }
18557
+ //Range Operator
18558
+ if ((node && node.symbol && node.symbol.type === that.getIDPParser().PLACEHOLDER_OPERATOR) || (node && node.children && node.children.length === 1 && node.children[0].symbol
18559
+ && node.children[0].symbol.type === that.getIDPParser().RANGE_OPERATOR)) {
18560
+ var rangeNode = context.children[4];
18561
+ if (rangeNode && rangeNode.symbol && rangeNode.symbol.type === that.getIDPParser().RANGE_DOTS) {
18562
+ var leftBracket = context.children[2];
18563
+ var rightBracket = context.children[6];
18564
+ if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LSQUAREB) &&
18565
+ (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RSQUAREB)) {
18566
+ rangeNode.Id = right.Id;
18567
+ rangeNode._functionName = ASTConstants.RANGEINCLUSIVE;
18568
+ right.children = [rangeNode];
18569
+ }
18570
+
18571
+ if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LROUNDB) &&
18572
+ (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RSQUAREB)) {
18573
+ rangeNode.Id = right.Id;
18574
+ rangeNode._functionName = ASTConstants.RANGETOINCLUSIVE;
18575
+ right.children = [rangeNode];
18576
+ }
18577
+
18578
+ if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LSQUAREB) &&
18579
+ (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RROUNDB)) {
18580
+ rangeNode.Id = right.Id;
18581
+ rangeNode._functionName = ASTConstants.RANGEFROMINCLUSIVE;
18582
+ right.children = [rangeNode];
18583
+ }
18584
+
18585
+ if ((leftBracket && leftBracket.symbol && leftBracket.symbol.type === that.getIDPParser().LROUNDB) &&
18586
+ (rightBracket && rightBracket.symbol && rightBracket.symbol.type === that.getIDPParser().RROUNDB)) {
18587
+ rangeNode.Id = right.Id;
18588
+ rangeNode._functionName = ASTConstants.RANGEEXCLUSIVE;
18589
+ right.children = [rangeNode];
18590
+ }
18591
+
18592
+ thirdNode = context.children[3];
18593
+ fourthNode = context.children[5];
18594
+ thirdNode.SequenceNumber = 1;
18595
+ fourthNode.SequenceNumber = 2;
18596
+ thirdNode.Id = uuidv4();
18597
+ fourthNode.Id = uuidv4();
18598
+ thirdNode.ParentId = rangeNode.Id;
18599
+ fourthNode.ParentId = rangeNode.Id;
18600
+ }
18601
+
18602
+
18603
+ }
18604
+
18605
+ //Functional Operator expression like 1 IN [1..2]
18606
+ if ((node && node.symbol && node.symbol.type === that.getIDPParser().PLACEHOLDER_OPERATOR &&
18607
+ right && right.symbol && right.symbol.type === that.getIDPParser().LSQUAREB)
18608
+ ||
18609
+ (node && node.children && node.children.length === 1 && node.children[0].symbol
18610
+ && node.children[0].symbol.type === that.getIDPParser().ARRAY_OPERATOR
18611
+ && right && right.symbol && right.symbol.type === that.getIDPParser().LSQUAREB)) {
18612
+ var rangeNode = context.children[4];
18613
+ if (rangeNode && rangeNode.symbol && rangeNode.symbol.type === that.getIDPParser().RANGE_DOTS) {
18614
+ rangeNode.Id = right.Id;
18615
+ right.children = [rangeNode];
18616
+ thirdNode = context.children[3];
18617
+ fourthNode = context.children[5];
18618
+ thirdNode.SequenceNumber = 1;
18619
+ fourthNode.SequenceNumber = 2;
18620
+ thirdNode.Id = uuidv4();
18621
+ fourthNode.Id = uuidv4();
18622
+ thirdNode.ParentId = rangeNode.Id;
18623
+ fourthNode.ParentId = rangeNode.Id;
18624
+ } else if (rangeNode && rangeNode.symbol && rangeNode.symbol.type === that.getIDPParser().RSQUAREB) {
18625
+ var arrayNode = {};
18626
+ arrayNode.Id = uuidv4();
18627
+ arrayNode.ParentId = node.Id;
18628
+ arrayNode.symbol = {};
18629
+ arrayNode.symbol.type = ASTConstants.ARRAY;
18630
+ arrayNode.symbol.text = ASTConstants.ARRAY;
18631
+ right.Id = arrayNode.Id;
18632
+ right.ParentId = arrayNode.ParentId;
18633
+ right.children = [arrayNode];
18634
+ var expressionNodes = context.children[3];
18635
+ var j = 1;
18636
+ for (var i = 0; i < expressionNodes.children.length; i = i + 2) {
18637
+ expressionNodes.children[i].Id = uuidv4();
18638
+ expressionNodes.children[i].ParentId = right.Id;
18639
+ expressionNodes.children[i].SequenceNumber = j;
18640
+ exprList.push(expressionNodes.children[i]);
18641
+ j++;
18642
+ }
18643
+ }
18644
+
18645
+ }
18646
+
18647
+
18648
+ if (left) {
18649
+ left.ParentId = node.Id;
18650
+ left.SequenceNumber = 1;
18651
+ }
18652
+ if (right) {
18653
+ right.ParentId = node.Id;
18654
+ right.SequenceNumber = 2;
18655
+ }
18656
+
18657
+ if (node && !node.ParentId && parentId) {
18658
+ node.ParentId = parentId;
18659
+ }
18660
+ if (node && sequenceNumber) {
18661
+ node.SequenceNumber = sequenceNumber;
18662
+ }
18663
+ }
18664
+
18665
+ if (parNode && parNode.children && parNode.children.length === 1) {
18666
+ nodes.push(parNode);
18667
+ }
18668
+
18669
+ if (node && node.Id && node.symbol) {
18670
+ nodes.push(node);
18671
+ }
18672
+
18673
+ if (node && node.children && node.children.length === 1) {
18674
+ nodes.push(node);
18675
+ }
18676
+ if (left && left.children && left.children.length === 1) {
18677
+ nodes.push(left);
18678
+ }
18679
+ if (right && right.children && right.children.length === 1) {
18680
+ nodes.push(right);
18681
+ }
18682
+
18683
+ if (thirdNode && thirdNode.children && thirdNode.children.length === 1) {
18684
+ nodes.push(thirdNode);
18685
+ }
18686
+
18687
+ if (fourthNode && fourthNode.children && fourthNode.children.length === 1) {
18688
+ nodes.push(fourthNode);
18689
+ }
18690
+
18691
+
18692
+ if (left && left.children && left.children.length > 1) {
18693
+ returnNodeTree(left, nodes, node.Id, 1, that);
18694
+ resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18695
+ }
18696
+
18697
+ if (right && right.children && right.children.length > 1) {
18698
+ returnNodeTree(right, nodes, node.Id, 2, that);
18699
+ resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18700
+ }
18701
+
18702
+ if (thirdNode && thirdNode.children && thirdNode.children.length > 1) {
18703
+ if(thirdNode.ParentId && thirdNode.SequenceNumber) {
18704
+ returnNodeTree(thirdNode, nodes, thirdNode.ParentId, thirdNode.SequenceNumber, that);
18705
+ } else {
18706
+ returnNodeTree(thirdNode, nodes, node.Id, 3, that);
18707
+ }
18708
+
18709
+ resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18710
+ }
18711
+ if (fourthNode && fourthNode.children && fourthNode.children.length > 1) {
18712
+ if(fourthNode.ParentId && fourthNode.SequenceNumber) {
18713
+ returnNodeTree(fourthNode, nodes, fourthNode.ParentId, fourthNode.SequenceNumber, that);
18714
+ } else {
18715
+ returnNodeTree(fourthNode, nodes, node.Id, 3, that);
18716
+ }
18717
+ resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18718
+ }
18719
+
18720
+ if (exprList.length > 0) {
18721
+ for (var i = 0; i < exprList.length; i++) {
18722
+ if (exprList[i] && exprList[i].children && exprList[i].children.length === 1) {
18723
+ nodes.push(exprList[i]);
18724
+ }
18725
+ if (exprList[i] && exprList[i].children && exprList[i].children.length > 1) {
18726
+ if (right && right.children && right.children[0].symbol.type == that.getIDPParser().FUNCTION_NAME) {
18727
+ returnNodeTree(exprList[i], nodes, right.Id, i + 1, that);
18728
+ } else {
18729
+ returnNodeTree(exprList[i], nodes, node.Id, i + 1, that);
18730
+ }
18731
+ resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList);
18732
+ }
18733
+ }
18734
+ }
18735
+
18736
+ if (node && node.children && node.children.length > 1) {
18737
+ returnNodeTree(node, nodes, node.ParentId ? node.ParentId : node.Id, 1, that);
18738
+ resetAll(left, right, node, thirdNode, fourthNode, parNode);
18739
+ }
18740
+
18741
+ return nodes;
18742
+ }
18743
+
18744
+ function returnTerminalNode(node) {
18745
+ var Id = node.Id;
18746
+ var ParentId = node.ParentId;
18747
+ var SequenceNumber = node.SequenceNumber;
18748
+ if (node.children) {
18749
+ node = returnTerminalNode(node.children[0]);
18750
+ }
18751
+ node.Id = Id;
18752
+ node.ParentId = ParentId;
18753
+ node.SequenceNumber = SequenceNumber;
18754
+ return node;
18755
+ }
18756
+
18757
+ function resetAll(left, right, node, thirdNode, fourthNode, parNode, exprList) {
18758
+ left = null;
18759
+ right = null;
18760
+ node = null;
18761
+ thirdNode = null;
18762
+ fourthNode = null;
18763
+ parNode = null;
18764
+ exprList = [];
18765
+ }
18766
+
18767
+ var createReferenceNode = function (Id, ParentId, SequenceNumber, value) {
18768
+ var node = new idpNode.Node();
18769
+ node.setId(Id);
18770
+ node.setParentId(ParentId);
18771
+ node.setSequenceNumber(SequenceNumber);
18772
+ node.setType(ASTConstants.Node.Type.OBJECT_ID);
18773
+ node.setReference(value);
18774
+ return node;
18775
+ };
18776
+
18777
+ var createParenthesisNode = function (Id, ParentId, SequenceNumber, type, value) {
18778
+ var node = new idpNode.Node();
18779
+ node.setId(Id);
18780
+ node.setParentId(ParentId);
18781
+ node.setSequenceNumber(SequenceNumber);
18782
+ node.setType(type);
18783
+ node.setValue(value);
18784
+ return node;
18785
+ };
18786
+
18787
+ var createFunctionNode = function (Id, ParentId, SequenceNumber, value) {
18788
+ var node = new idpNode.Node();
18789
+ node.setId(Id);
18790
+ node.setParentId(ParentId);
18791
+ node.setSequenceNumber(SequenceNumber);
18792
+ node.setFunctionValue(ASTConstants[value.toUpperCase()]);
18793
+ return node;
18794
+ };
18795
+
18796
+ var createLiteralNode = function (Id, ParentId, SequenceNumber, type, businessDataType, dataObjectType, value) {
18797
+ var node = new idpNode.Node();
18798
+ node.setId(Id);
18799
+ node.setParentId(ParentId);
18800
+ node.setSequenceNumber(SequenceNumber);
18801
+ node.setType(type);
18802
+ node.setBusinessDataType(businessDataType);
18803
+ node.setDataObjectType(dataObjectType);
18804
+ if (businessDataType === "S" || businessDataType === "T" || businessDataType === "Q" ||
18805
+ businessDataType === "D" || businessDataType === "U" || businessDataType === "G" ||
18806
+ businessDataType === "A") {
18807
+ value = stripQuotes(value);
18808
+ }
18809
+ //CSN - 2080090688
18810
+ //to store without \ in db
18811
+ if(businessDataType === "S"){
18812
+ value = value.replace(/\\'/g,"'");
18813
+ }
18814
+ node.setValue(value);
18815
+ return node;
18816
+ };
18817
+
18818
+ var stripQuotes = function (value) {
18819
+ var len = value.length;
18820
+ if (value.charAt(0) === '\'') value = value.substring(1, len--);
18821
+ if (value.charAt(--len) == '\'') value = value.substring(0, len);
18822
+ return value;
18823
+ }
18824
+
18825
+ IDPCustomVisitor.prototype.createErrorNode = function (expr) {
18826
+ var node = new idpNode.Node();
18827
+ node.setId(uuidv4());
18828
+ node.setSequenceNumber(1);
18829
+ node.setValue(expr);
18830
+ node.setType(ASTConstants.Node.Type.ERROR);
18831
+ node.setRoot(true);
18832
+ return [node];
18833
+ };
18834
+
18835
+ var createPlaceholderNode = function (Id, ParentId, SequenceNumber, type) {
18836
+ var node = new idpNode.Node();
18837
+ node.setId(Id);
18838
+ node.setParentId(ParentId);
18839
+ node.setSequenceNumber(SequenceNumber);
18840
+ node.setType(ASTConstants.Node.Type.MARKER);
18841
+ return node;
18842
+ };
18843
+
18844
+ IDPCustomVisitor.prototype.resetSequenceNumber = function() {
18845
+ sequence = 1;
18846
+ }
18847
+
18848
+
18849
+
18850
+
18851
+ function uuidv4() {
18852
+ return ""+sequence++;
18853
+ }
18854
+
18855
+ function returnNodeFromArray(arrayObject) {
18856
+ var tempObject = arrayObject;
18857
+ if (!Array.isArray(tempObject)) {
18858
+ return tempObject;
18859
+ } else {
18860
+ return returnNodeFromArray(arrayObject[0]);
18861
+ }
18862
+
18863
+ };
18864
+ return IDPCustomVisitor;
18865
+ }(idpVisitor.IDPVisitor, IDPParser));
18866
+ exports.IDPCustomVisitor = IDPCustomVisitor;
18867
+
18868
+
18869
+ /***/ }),
18870
+ /* 59 */
18871
+ /***/ (function(module, exports, __webpack_require__) {
18872
+
18873
+ "use strict";
18874
+
18875
+
18876
+ var ATNState = __webpack_require__(3).ATNState;
18877
+ var Transition = __webpack_require__(6).Transition;
18878
+ var IntervalSet = __webpack_require__(2).IntervalSet;
18879
+ var Token = __webpack_require__(1).Token;
18880
+ var ParserRuleContext = __webpack_require__(15).ParserRuleContext;
18881
+
18882
+ var AutoSuggest = (function() {
18883
+ var FollowSetWithPath = (function() {
18884
+ function FollowSetWithPath() {
18885
+ this.path = [];
18886
+ }
18887
+ return FollowSetWithPath;
18888
+ }());
18889
+
18890
+ var FollowSetsHolder = (function() {
18891
+ function FollowSetsHolder() {}
18892
+ return FollowSetsHolder;
18893
+ }());
18894
+
18895
+ function AutoSuggest(parser) {
18896
+ this.statesProcessed = 0;
18897
+ this.shortcutMap = new Map();
18898
+ this.suggestions = [];
18899
+ this.parser = parser;
18900
+ this.atn = parser.atn;
18901
+ this.vocabulary = parser.vocabulary;
18902
+ this.ruleNames = parser.ruleNames;
18903
+ }
18904
+
18905
+ AutoSuggest.prototype.collectSuggestions = function(caretTokenIndex) {
18906
+ this.shortcutMap.clear();
18907
+ this.statesProcessed = 0;
18908
+ this.precedenceStack = [];
18909
+ var tokenStream = this.parser.getInputStream();
18910
+ var currentIndex = tokenStream.index;
18911
+ tokenStream.seek(0);
18912
+ this.tokens = [];
18913
+ var i = 1;
18914
+ while (true) {
18915
+ var token = tokenStream.LT(i++);
18916
+ this.tokens.push(token.type);
18917
+ if (token.tokenIndex >= caretTokenIndex || token.type == Token.EOF)
18918
+ break;
18919
+ }
18920
+ if (currentIndex != -1) {
18921
+ tokenStream.seek(currentIndex);
18922
+ }
18923
+ var callStack = [];
18924
+ this.processRule(this.atn.ruleToStartState[0], 0, callStack, 0);
18925
+ return this.suggestions;
18926
+ };
18927
+
18928
+ AutoSuggest.prototype.collectFollowSets = function(s, stopState, followSets, seen, ruleStack) {
18929
+ if (seen.has(s))
18930
+ return;
18931
+ seen.add(s);
18932
+ if (s == stopState || s.stateType == ATNState.RULE_STOP) {
18933
+ var set = new FollowSetWithPath();
18934
+ set.intervals = IntervalSet.of(Token.EPSILON);
18935
+ set.path = ruleStack.slice();
18936
+ followSets.push(set);
18937
+ return;
18938
+ }
18939
+ for (var _i = 0, _a = s.transitions; _i < _a.length; _i++) {
18940
+ var transition = _a[_i];
18920
18941
  if (transition.serializationType == Transition.RULE) {
18921
18942
  var ruleTransition = transition;
18922
18943
  if (ruleStack.indexOf(ruleTransition.target.ruleIndex) != -1)
@@ -25453,5 +25474,1486 @@ AstUtil.prototype.HashSet = function () {
25453
25474
  };
25454
25475
  exports.AstUtil = AstUtil;
25455
25476
 
25477
+ /***/ }),
25478
+ /* 68 */
25479
+ /***/ (function(module, exports) {
25480
+
25481
+ var doRefProjectVocabData = {
25482
+ "d": {
25483
+ "__metadata": {
25484
+ "id": "/vocabulary_srv/Vocabularies('46c44485de784011ad2ed6a6cf4b377d%3A000001')",
25485
+ "uri": "/vocabulary_srv/Vocabularies('46c44485de784011ad2ed6a6cf4b377d%3A000001')",
25486
+ "type": "VOCABULARY_SRV.Vocabulary"
25487
+ },
25488
+ "Id": "46c44485de784011ad2ed6a6cf4b377d:000001",
25489
+ "Type": "PR",
25490
+ "Version": "000000000000000000",
25491
+ "DataObjects": {
25492
+ "results": [{
25493
+ "__metadata": {
25494
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')",
25495
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')",
25496
+ "type": "VOCABULARY_SRV.DataObject"
25497
+ },
25498
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25499
+ "Id": "546b015102654e6b999b063dcd4fa055",
25500
+ "Usage": "DBCTX",
25501
+ "Name": "Address",
25502
+ "Description": "Address",
25503
+ "Label": "Address",
25504
+ "Status": "Active",
25505
+ "Type": "Structure",
25506
+ "Version": "000000000000000000",
25507
+ "Associations": {
25508
+ "results": []
25509
+ },
25510
+ "Attributes": {
25511
+ "results": [{
25512
+ "__metadata": {
25513
+ "id": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25514
+ "uri": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25515
+ "type": "VOCABULARY_SRV.Attribute"
25516
+ },
25517
+ "Id": "4708e07f28a74646a6d059926a536c72",
25518
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25519
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
25520
+ "Name": "pincode",
25521
+ "Description": "pincode",
25522
+ "Label": "pincode",
25523
+ "BusinessDataType": "Number",
25524
+ "HasValueSource": false,
25525
+ "Version": "000000000000000000",
25526
+ "ValueSource": {
25527
+ "__deferred": {
25528
+ "uri": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
25529
+ }
25530
+ },
25531
+ "Enumerations": {
25532
+ "__deferred": {
25533
+ "uri": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
25534
+ }
25535
+ }
25536
+ }, {
25537
+ "__metadata": {
25538
+ "id": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25539
+ "uri": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25540
+ "type": "VOCABULARY_SRV.Attribute"
25541
+ },
25542
+ "Id": "bdb9410c6e0b44c1a700722708447353",
25543
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25544
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
25545
+ "Name": "city",
25546
+ "Description": "city",
25547
+ "Label": "city",
25548
+ "BusinessDataType": "String",
25549
+ "HasValueSource": false,
25550
+ "Version": "000000000000000000",
25551
+ "ValueSource": {
25552
+ "__deferred": {
25553
+ "uri": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
25554
+ }
25555
+ },
25556
+ "Enumerations": {
25557
+ "__deferred": {
25558
+ "uri": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
25559
+ }
25560
+ }
25561
+ }, {
25562
+ "__metadata": {
25563
+ "id": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25564
+ "uri": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25565
+ "type": "VOCABULARY_SRV.Attribute"
25566
+ },
25567
+ "Id": "fa1fe11edb154805916cf71fd2ed614e",
25568
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25569
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
25570
+ "Name": "street",
25571
+ "Description": "street",
25572
+ "Label": "street",
25573
+ "BusinessDataType": "String",
25574
+ "HasValueSource": false,
25575
+ "Version": "000000000000000000",
25576
+ "ValueSource": {
25577
+ "__deferred": {
25578
+ "uri": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
25579
+ }
25580
+ },
25581
+ "Enumerations": {
25582
+ "__deferred": {
25583
+ "uri": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
25584
+ }
25585
+ }
25586
+ }, {
25587
+ "__metadata": {
25588
+ "id": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25589
+ "uri": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
25590
+ "type": "VOCABULARY_SRV.Attribute"
25591
+ },
25592
+ "Id": "faea5f3246864ec59f3c472a2f381c5d",
25593
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25594
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
25595
+ "Name": "houseNumber",
25596
+ "Description": "houseNumber",
25597
+ "Label": "house number",
25598
+ "BusinessDataType": "String",
25599
+ "HasValueSource": false,
25600
+ "Version": "000000000000000000",
25601
+ "ValueSource": {
25602
+ "__deferred": {
25603
+ "uri": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
25604
+ }
25605
+ },
25606
+ "Enumerations": {
25607
+ "__deferred": {
25608
+ "uri": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
25609
+ }
25610
+ }
25611
+ }]
25612
+ },
25613
+ "ExpandedAttributes": {
25614
+ "__deferred": {
25615
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')/ExpandedAttributes"
25616
+ }
25617
+ },
25618
+ "LineType": {
25619
+ "__deferred": {
25620
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')/LineType"
25621
+ }
25622
+ },
25623
+ "References": {
25624
+ "results": []
25625
+ },
25626
+ "ValueSources": {
25627
+ "__deferred": {
25628
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')/ValueSources"
25629
+ }
25630
+ },
25631
+ "Enumerations": {
25632
+ "__deferred": {
25633
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')/Enumerations"
25634
+ }
25635
+ },
25636
+ "DataObjectReference": null
25637
+ }, {
25638
+ "__metadata": {
25639
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')",
25640
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')",
25641
+ "type": "VOCABULARY_SRV.DataObject"
25642
+ },
25643
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25644
+ "Id": "983396a82cdd4eb184186add5f908eb0",
25645
+ "Usage": "DBCTX",
25646
+ "Name": "Discount",
25647
+ "Description": "Discount",
25648
+ "Label": "Discount",
25649
+ "Status": "Active",
25650
+ "Type": "Structure",
25651
+ "Version": "000000000000000000",
25652
+ "Associations": {
25653
+ "results": []
25654
+ },
25655
+ "Attributes": {
25656
+ "results": [{
25657
+ "__metadata": {
25658
+ "id": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')",
25659
+ "uri": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')",
25660
+ "type": "VOCABULARY_SRV.Attribute"
25661
+ },
25662
+ "Id": "d3a093e81e74413e824946fa7d0b893e",
25663
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25664
+ "DataObjectId": "983396a82cdd4eb184186add5f908eb0",
25665
+ "Name": "value",
25666
+ "Description": "value",
25667
+ "Label": "value",
25668
+ "BusinessDataType": "Number",
25669
+ "HasValueSource": false,
25670
+ "Version": "000000000000000000",
25671
+ "ValueSource": {
25672
+ "__deferred": {
25673
+ "uri": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')/ValueSource"
25674
+ }
25675
+ },
25676
+ "Enumerations": {
25677
+ "__deferred": {
25678
+ "uri": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')/Enumerations"
25679
+ }
25680
+ }
25681
+ }]
25682
+ },
25683
+ "ExpandedAttributes": {
25684
+ "__deferred": {
25685
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')/ExpandedAttributes"
25686
+ }
25687
+ },
25688
+ "LineType": {
25689
+ "__deferred": {
25690
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')/LineType"
25691
+ }
25692
+ },
25693
+ "References": {
25694
+ "results": [{
25695
+ "__metadata": {
25696
+ "id": "/vocabulary_srv/References(Id='013176b7555548e2a6d6a22234c931bb',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0',Name='details',Version='000000000000000000',TargetDataObjectId='083fa692a253498f943d8645b379bf64')",
25697
+ "uri": "/vocabulary_srv/References(Id='013176b7555548e2a6d6a22234c931bb',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0',Name='details',Version='000000000000000000',TargetDataObjectId='083fa692a253498f943d8645b379bf64')",
25698
+ "type": "VOCABULARY_SRV.Reference"
25699
+ },
25700
+ "Id": "013176b7555548e2a6d6a22234c931bb",
25701
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25702
+ "DataObjectId": "983396a82cdd4eb184186add5f908eb0",
25703
+ "Name": "details",
25704
+ "Version": "000000000000000000",
25705
+ "TargetDataObjectId": "083fa692a253498f943d8645b379bf64",
25706
+ "Description": "details",
25707
+ "Label": "details",
25708
+ "ReferencedDataObject": {
25709
+ "__deferred": {
25710
+ "uri": "/vocabulary_srv/References(Id='013176b7555548e2a6d6a22234c931bb',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0',Name='details',Version='000000000000000000',TargetDataObjectId='083fa692a253498f943d8645b379bf64')/ReferencedDataObject"
25711
+ }
25712
+ }
25713
+ }]
25714
+ },
25715
+ "ValueSources": {
25716
+ "__deferred": {
25717
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')/ValueSources"
25718
+ }
25719
+ },
25720
+ "Enumerations": {
25721
+ "__deferred": {
25722
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')/Enumerations"
25723
+ }
25724
+ },
25725
+ "DataObjectReference": null
25726
+ }, {
25727
+ "__metadata": {
25728
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')",
25729
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')",
25730
+ "type": "VOCABULARY_SRV.DataObject"
25731
+ },
25732
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25733
+ "Id": "42df467abf02460da3c35afe2d26fb93",
25734
+ "Usage": "DBCTX",
25735
+ "Name": "Employee",
25736
+ "Description": "Employee",
25737
+ "Label": "Employee",
25738
+ "Status": "Active",
25739
+ "Type": "Structure",
25740
+ "Version": "000000000000000000",
25741
+ "Associations": {
25742
+ "results": [{
25743
+ "__metadata": {
25744
+ "id": "/vocabulary_srv/Associations(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Name='org',Id='7ca98f637eb44fcb99b70bf59545fcef',DataObjectId='42df467abf02460da3c35afe2d26fb93',TargetDataObjectId='6198916c0df745dc948547d9e0a3c26e')",
25745
+ "uri": "/vocabulary_srv/Associations(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Name='org',Id='7ca98f637eb44fcb99b70bf59545fcef',DataObjectId='42df467abf02460da3c35afe2d26fb93',TargetDataObjectId='6198916c0df745dc948547d9e0a3c26e')",
25746
+ "type": "VOCABULARY_SRV.Association"
25747
+ },
25748
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25749
+ "Id": "7ca98f637eb44fcb99b70bf59545fcef",
25750
+ "Name": "org",
25751
+ "Label": "org",
25752
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25753
+ "TargetDataObjectId": "6198916c0df745dc948547d9e0a3c26e",
25754
+ "Cardinality": "1..1",
25755
+ "Version": "000000000000000000",
25756
+ "TARGETDATAOBJECTID": {
25757
+ "__deferred": {
25758
+ "uri": "/vocabulary_srv/Associations(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Name='org',Id='7ca98f637eb44fcb99b70bf59545fcef',DataObjectId='42df467abf02460da3c35afe2d26fb93',TargetDataObjectId='6198916c0df745dc948547d9e0a3c26e')/TARGETDATAOBJECTID"
25759
+ }
25760
+ }
25761
+ }]
25762
+ },
25763
+ "Attributes": {
25764
+ "results": [{
25765
+ "__metadata": {
25766
+ "id": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25767
+ "uri": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25768
+ "type": "VOCABULARY_SRV.Attribute"
25769
+ },
25770
+ "Id": "8f45720cb57b490fbf9d5d68e0b9f443",
25771
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25772
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25773
+ "Name": "orgName",
25774
+ "Description": "orgName",
25775
+ "Label": "orgName",
25776
+ "BusinessDataType": "String",
25777
+ "HasValueSource": false,
25778
+ "Version": "000000000000000000",
25779
+ "ValueSource": {
25780
+ "__deferred": {
25781
+ "uri": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
25782
+ }
25783
+ },
25784
+ "Enumerations": {
25785
+ "__deferred": {
25786
+ "uri": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25787
+ }
25788
+ }
25789
+ }, {
25790
+ "__metadata": {
25791
+ "id": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25792
+ "uri": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25793
+ "type": "VOCABULARY_SRV.Attribute"
25794
+ },
25795
+ "Id": "4ec1e269440143fc8de398d707ab6972",
25796
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25797
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25798
+ "Name": "amountDonated",
25799
+ "Description": "amountDonated",
25800
+ "Label": "amountDonated",
25801
+ "BusinessDataType": "Amount",
25802
+ "HasValueSource": false,
25803
+ "Version": "000000000000000000",
25804
+ "ValueSource": {
25805
+ "__deferred": {
25806
+ "uri": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
25807
+ }
25808
+ },
25809
+ "Enumerations": {
25810
+ "__deferred": {
25811
+ "uri": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25812
+ }
25813
+ }
25814
+ }, {
25815
+ "__metadata": {
25816
+ "id": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25817
+ "uri": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25818
+ "type": "VOCABULARY_SRV.Attribute"
25819
+ },
25820
+ "Id": "104a0314f3ba4401acd9db8bffa429ca",
25821
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25822
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25823
+ "Name": "dob",
25824
+ "Description": "dob",
25825
+ "Label": "dob",
25826
+ "BusinessDataType": "Date",
25827
+ "HasValueSource": false,
25828
+ "Version": "000000000000000000",
25829
+ "ValueSource": {
25830
+ "__deferred": {
25831
+ "uri": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
25832
+ }
25833
+ },
25834
+ "Enumerations": {
25835
+ "__deferred": {
25836
+ "uri": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25837
+ }
25838
+ }
25839
+ }, {
25840
+ "__metadata": {
25841
+ "id": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25842
+ "uri": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25843
+ "type": "VOCABULARY_SRV.Attribute"
25844
+ },
25845
+ "Id": "5a0b5397243d4623ab1aa8c165b00b3e",
25846
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25847
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25848
+ "Name": "isMale",
25849
+ "Description": "isMale",
25850
+ "Label": "isMale",
25851
+ "BusinessDataType": "Boolean",
25852
+ "HasValueSource": false,
25853
+ "Version": "000000000000000000",
25854
+ "ValueSource": {
25855
+ "__deferred": {
25856
+ "uri": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
25857
+ }
25858
+ },
25859
+ "Enumerations": {
25860
+ "__deferred": {
25861
+ "uri": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25862
+ }
25863
+ }
25864
+ }, {
25865
+ "__metadata": {
25866
+ "id": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25867
+ "uri": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25868
+ "type": "VOCABULARY_SRV.Attribute"
25869
+ },
25870
+ "Id": "589a2bc968b44c42b30d26d69e5aaa89",
25871
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25872
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25873
+ "Name": "age",
25874
+ "Description": "age",
25875
+ "Label": "age",
25876
+ "BusinessDataType": "Number",
25877
+ "HasValueSource": false,
25878
+ "Version": "000000000000000000",
25879
+ "ValueSource": {
25880
+ "__deferred": {
25881
+ "uri": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
25882
+ }
25883
+ },
25884
+ "Enumerations": {
25885
+ "__deferred": {
25886
+ "uri": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25887
+ }
25888
+ }
25889
+ }, {
25890
+ "__metadata": {
25891
+ "id": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25892
+ "uri": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
25893
+ "type": "VOCABULARY_SRV.Attribute"
25894
+ },
25895
+ "Id": "e78e87610d534857bc9f86d620f94b0b",
25896
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25897
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25898
+ "Name": "name",
25899
+ "Description": "name",
25900
+ "Label": "name",
25901
+ "BusinessDataType": "String",
25902
+ "HasValueSource": false,
25903
+ "Version": "000000000000000000",
25904
+ "ValueSource": {
25905
+ "__deferred": {
25906
+ "uri": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
25907
+ }
25908
+ },
25909
+ "Enumerations": {
25910
+ "__deferred": {
25911
+ "uri": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25912
+ }
25913
+ }
25914
+ }]
25915
+ },
25916
+ "ExpandedAttributes": {
25917
+ "__deferred": {
25918
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')/ExpandedAttributes"
25919
+ }
25920
+ },
25921
+ "LineType": {
25922
+ "__deferred": {
25923
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')/LineType"
25924
+ }
25925
+ },
25926
+ "References": {
25927
+ "results": [{
25928
+ "__metadata": {
25929
+ "id": "/vocabulary_srv/References(Id='77eea26d56404b1eb933e0f4642527d1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93',Name='address',Version='000000000000000000',TargetDataObjectId='546b015102654e6b999b063dcd4fa055')",
25930
+ "uri": "/vocabulary_srv/References(Id='77eea26d56404b1eb933e0f4642527d1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93',Name='address',Version='000000000000000000',TargetDataObjectId='546b015102654e6b999b063dcd4fa055')",
25931
+ "type": "VOCABULARY_SRV.Reference"
25932
+ },
25933
+ "Id": "77eea26d56404b1eb933e0f4642527d1",
25934
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25935
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
25936
+ "Name": "address",
25937
+ "Version": "000000000000000000",
25938
+ "TargetDataObjectId": "546b015102654e6b999b063dcd4fa055",
25939
+ "Description": "Address",
25940
+ "Label": "address",
25941
+ "ReferencedDataObject": {
25942
+ "__deferred": {
25943
+ "uri": "/vocabulary_srv/References(Id='77eea26d56404b1eb933e0f4642527d1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93',Name='address',Version='000000000000000000',TargetDataObjectId='546b015102654e6b999b063dcd4fa055')/ReferencedDataObject"
25944
+ }
25945
+ }
25946
+ }]
25947
+ },
25948
+ "ValueSources": {
25949
+ "__deferred": {
25950
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')/ValueSources"
25951
+ }
25952
+ },
25953
+ "Enumerations": {
25954
+ "__deferred": {
25955
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')/Enumerations"
25956
+ }
25957
+ },
25958
+ "DataObjectReference": null
25959
+ }, {
25960
+ "__metadata": {
25961
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='b3be885903af4cafacee3b87559332f8')",
25962
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='b3be885903af4cafacee3b87559332f8')",
25963
+ "type": "VOCABULARY_SRV.DataObject"
25964
+ },
25965
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
25966
+ "Id": "b3be885903af4cafacee3b87559332f8",
25967
+ "Usage": "DBCTX",
25968
+ "Name": "EmployeeDiscount",
25969
+ "Description": "EmployeeDiscount",
25970
+ "Label": "EmployeeDiscount",
25971
+ "Status": "Active",
25972
+ "Type": "Structure",
25973
+ "Version": "000000000000000000",
25974
+ "Associations": {
25975
+ "results": []
25976
+ },
25977
+ "Attributes": {
25978
+ "results": []
25979
+ },
25980
+ "ExpandedAttributes": {
25981
+ "__deferred": {
25982
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='b3be885903af4cafacee3b87559332f8')/ExpandedAttributes"
25983
+ }
25984
+ },
25985
+ "LineType": {
25986
+ "__deferred": {
25987
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='b3be885903af4cafacee3b87559332f8')/LineType"
25988
+ }
25989
+ },
25990
+ "References": {
25991
+ "results": []
25992
+ },
25993
+ "ValueSources": {
25994
+ "__deferred": {
25995
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='b3be885903af4cafacee3b87559332f8')/ValueSources"
25996
+ }
25997
+ },
25998
+ "Enumerations": {
25999
+ "__deferred": {
26000
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='b3be885903af4cafacee3b87559332f8')/Enumerations"
26001
+ }
26002
+ },
26003
+ "DataObjectReference": {
26004
+ "__metadata": {
26005
+ "id": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='b3be885903af4cafacee3b87559332f8')",
26006
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='b3be885903af4cafacee3b87559332f8')",
26007
+ "type": "VOCABULARY_SRV.DataObjectReference"
26008
+ },
26009
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26010
+ "DataObjectId": "b3be885903af4cafacee3b87559332f8",
26011
+ "Version": "000000000000000000",
26012
+ "TargetDataObjectId": "983396a82cdd4eb184186add5f908eb0",
26013
+ "ReferencedDO": {
26014
+ "__deferred": {
26015
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='b3be885903af4cafacee3b87559332f8')/ReferencedDO"
26016
+ }
26017
+ }
26018
+ }
26019
+ }, {
26020
+ "__metadata": {
26021
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')",
26022
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')",
26023
+ "type": "VOCABULARY_SRV.DataObject"
26024
+ },
26025
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26026
+ "Id": "083fa692a253498f943d8645b379bf64",
26027
+ "Usage": "DBCTX",
26028
+ "Name": "OfferDetails",
26029
+ "Description": "OfferDetails",
26030
+ "Label": "OfferDetails",
26031
+ "Status": "Active",
26032
+ "Type": "Structure",
26033
+ "Version": "000000000000000000",
26034
+ "Associations": {
26035
+ "results": []
26036
+ },
26037
+ "Attributes": {
26038
+ "results": [{
26039
+ "__metadata": {
26040
+ "id": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26041
+ "uri": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26042
+ "type": "VOCABULARY_SRV.Attribute"
26043
+ },
26044
+ "Id": "f90180aeccc14345af86076a10464eb6",
26045
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26046
+ "DataObjectId": "083fa692a253498f943d8645b379bf64",
26047
+ "Name": "isSeasonal",
26048
+ "Description": "isSeasonal",
26049
+ "Label": "isSeasonal",
26050
+ "BusinessDataType": "Boolean",
26051
+ "HasValueSource": false,
26052
+ "Version": "000000000000000000",
26053
+ "ValueSource": {
26054
+ "__deferred": {
26055
+ "uri": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/ValueSource"
26056
+ }
26057
+ },
26058
+ "Enumerations": {
26059
+ "__deferred": {
26060
+ "uri": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/Enumerations"
26061
+ }
26062
+ }
26063
+ }, {
26064
+ "__metadata": {
26065
+ "id": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26066
+ "uri": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26067
+ "type": "VOCABULARY_SRV.Attribute"
26068
+ },
26069
+ "Id": "127430cea9d04fe981c57f1439998842",
26070
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26071
+ "DataObjectId": "083fa692a253498f943d8645b379bf64",
26072
+ "Name": "description",
26073
+ "Description": "description",
26074
+ "Label": "description",
26075
+ "BusinessDataType": "String",
26076
+ "HasValueSource": false,
26077
+ "Version": "000000000000000000",
26078
+ "ValueSource": {
26079
+ "__deferred": {
26080
+ "uri": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/ValueSource"
26081
+ }
26082
+ },
26083
+ "Enumerations": {
26084
+ "__deferred": {
26085
+ "uri": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/Enumerations"
26086
+ }
26087
+ }
26088
+ }]
26089
+ },
26090
+ "ExpandedAttributes": {
26091
+ "__deferred": {
26092
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')/ExpandedAttributes"
26093
+ }
26094
+ },
26095
+ "LineType": {
26096
+ "__deferred": {
26097
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')/LineType"
26098
+ }
26099
+ },
26100
+ "References": {
26101
+ "results": []
26102
+ },
26103
+ "ValueSources": {
26104
+ "__deferred": {
26105
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')/ValueSources"
26106
+ }
26107
+ },
26108
+ "Enumerations": {
26109
+ "__deferred": {
26110
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')/Enumerations"
26111
+ }
26112
+ },
26113
+ "DataObjectReference": null
26114
+ }, {
26115
+ "__metadata": {
26116
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6198916c0df745dc948547d9e0a3c26e')",
26117
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6198916c0df745dc948547d9e0a3c26e')",
26118
+ "type": "VOCABULARY_SRV.DataObject"
26119
+ },
26120
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26121
+ "Id": "6198916c0df745dc948547d9e0a3c26e",
26122
+ "Usage": "DBCTX",
26123
+ "Name": "Organisation",
26124
+ "Description": "Organisation",
26125
+ "Label": "Organisation",
26126
+ "Status": "Active",
26127
+ "Type": "Structure",
26128
+ "Version": "000000000000000000",
26129
+ "Associations": {
26130
+ "results": []
26131
+ },
26132
+ "Attributes": {
26133
+ "results": [{
26134
+ "__metadata": {
26135
+ "id": "/vocabulary_srv/Attributes(Id='d6fb3b274c0b4bea8b2b27acf9d9b7b1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')",
26136
+ "uri": "/vocabulary_srv/Attributes(Id='d6fb3b274c0b4bea8b2b27acf9d9b7b1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')",
26137
+ "type": "VOCABULARY_SRV.Attribute"
26138
+ },
26139
+ "Id": "d6fb3b274c0b4bea8b2b27acf9d9b7b1",
26140
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26141
+ "DataObjectId": "6198916c0df745dc948547d9e0a3c26e",
26142
+ "Name": "boardArea",
26143
+ "Description": "boardArea",
26144
+ "Label": "boardArea",
26145
+ "BusinessDataType": "String",
26146
+ "HasValueSource": false,
26147
+ "Version": "000000000000000000",
26148
+ "ValueSource": {
26149
+ "__deferred": {
26150
+ "uri": "/vocabulary_srv/Attributes(Id='d6fb3b274c0b4bea8b2b27acf9d9b7b1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')/ValueSource"
26151
+ }
26152
+ },
26153
+ "Enumerations": {
26154
+ "__deferred": {
26155
+ "uri": "/vocabulary_srv/Attributes(Id='d6fb3b274c0b4bea8b2b27acf9d9b7b1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')/Enumerations"
26156
+ }
26157
+ }
26158
+ }, {
26159
+ "__metadata": {
26160
+ "id": "/vocabulary_srv/Attributes(Id='382e0e89907541688dfe8f634e69c213',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')",
26161
+ "uri": "/vocabulary_srv/Attributes(Id='382e0e89907541688dfe8f634e69c213',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')",
26162
+ "type": "VOCABULARY_SRV.Attribute"
26163
+ },
26164
+ "Id": "382e0e89907541688dfe8f634e69c213",
26165
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26166
+ "DataObjectId": "6198916c0df745dc948547d9e0a3c26e",
26167
+ "Name": "name",
26168
+ "Description": "name",
26169
+ "Label": "name",
26170
+ "BusinessDataType": "String",
26171
+ "HasValueSource": false,
26172
+ "Version": "000000000000000000",
26173
+ "ValueSource": {
26174
+ "__deferred": {
26175
+ "uri": "/vocabulary_srv/Attributes(Id='382e0e89907541688dfe8f634e69c213',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')/ValueSource"
26176
+ }
26177
+ },
26178
+ "Enumerations": {
26179
+ "__deferred": {
26180
+ "uri": "/vocabulary_srv/Attributes(Id='382e0e89907541688dfe8f634e69c213',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6198916c0df745dc948547d9e0a3c26e')/Enumerations"
26181
+ }
26182
+ }
26183
+ }]
26184
+ },
26185
+ "ExpandedAttributes": {
26186
+ "__deferred": {
26187
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6198916c0df745dc948547d9e0a3c26e')/ExpandedAttributes"
26188
+ }
26189
+ },
26190
+ "LineType": {
26191
+ "__deferred": {
26192
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6198916c0df745dc948547d9e0a3c26e')/LineType"
26193
+ }
26194
+ },
26195
+ "References": {
26196
+ "results": []
26197
+ },
26198
+ "ValueSources": {
26199
+ "__deferred": {
26200
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6198916c0df745dc948547d9e0a3c26e')/ValueSources"
26201
+ }
26202
+ },
26203
+ "Enumerations": {
26204
+ "__deferred": {
26205
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6198916c0df745dc948547d9e0a3c26e')/Enumerations"
26206
+ }
26207
+ },
26208
+ "DataObjectReference": null
26209
+ }, {
26210
+ "__metadata": {
26211
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6376f53c2a4c4ef5b5bb4f03be1b1f6b')",
26212
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6376f53c2a4c4ef5b5bb4f03be1b1f6b')",
26213
+ "type": "VOCABULARY_SRV.DataObject"
26214
+ },
26215
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26216
+ "Id": "6376f53c2a4c4ef5b5bb4f03be1b1f6b",
26217
+ "Usage": "DBCTX",
26218
+ "Name": "ContractEmployee",
26219
+ "Description": "ContractEmployee",
26220
+ "Label": "ContractEmp",
26221
+ "Status": "Active",
26222
+ "Type": "Structure",
26223
+ "Version": "000000000000000000",
26224
+ "Associations": {
26225
+ "results": []
26226
+ },
26227
+ "Attributes": {
26228
+ "results": []
26229
+ },
26230
+ "ExpandedAttributes": {
26231
+ "__deferred": {
26232
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6376f53c2a4c4ef5b5bb4f03be1b1f6b')/ExpandedAttributes"
26233
+ }
26234
+ },
26235
+ "LineType": {
26236
+ "__deferred": {
26237
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6376f53c2a4c4ef5b5bb4f03be1b1f6b')/LineType"
26238
+ }
26239
+ },
26240
+ "References": {
26241
+ "results": []
26242
+ },
26243
+ "ValueSources": {
26244
+ "__deferred": {
26245
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6376f53c2a4c4ef5b5bb4f03be1b1f6b')/ValueSources"
26246
+ }
26247
+ },
26248
+ "Enumerations": {
26249
+ "__deferred": {
26250
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='6376f53c2a4c4ef5b5bb4f03be1b1f6b')/Enumerations"
26251
+ }
26252
+ },
26253
+ "DataObjectReference": {
26254
+ "__metadata": {
26255
+ "id": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6376f53c2a4c4ef5b5bb4f03be1b1f6b')",
26256
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6376f53c2a4c4ef5b5bb4f03be1b1f6b')",
26257
+ "type": "VOCABULARY_SRV.DataObjectReference"
26258
+ },
26259
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26260
+ "DataObjectId": "6376f53c2a4c4ef5b5bb4f03be1b1f6b",
26261
+ "Version": "000000000000000000",
26262
+ "TargetDataObjectId": "42df467abf02460da3c35afe2d26fb93",
26263
+ "ReferencedDO": {
26264
+ "__deferred": {
26265
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='6376f53c2a4c4ef5b5bb4f03be1b1f6b')/ReferencedDO"
26266
+ }
26267
+ }
26268
+ }
26269
+ }, {
26270
+ "__metadata": {
26271
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')",
26272
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')",
26273
+ "type": "VOCABULARY_SRV.DataObject"
26274
+ },
26275
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26276
+ "Id": "c0b3b2f5ead948cd9545797bef36def5",
26277
+ "Usage": "DBCTX",
26278
+ "Name": "PermanentEmployee",
26279
+ "Description": "PermanentEmployee",
26280
+ "Label": "PermanentEmployee",
26281
+ "Status": "Active",
26282
+ "Type": "Structure",
26283
+ "Version": "000000000000000000",
26284
+ "Associations": {
26285
+ "results": []
26286
+ },
26287
+ "Attributes": {
26288
+ "results": []
26289
+ },
26290
+ "ExpandedAttributes": {
26291
+ "__deferred": {
26292
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')/ExpandedAttributes"
26293
+ }
26294
+ },
26295
+ "LineType": {
26296
+ "__deferred": {
26297
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')/LineType"
26298
+ }
26299
+ },
26300
+ "References": {
26301
+ "results": []
26302
+ },
26303
+ "ValueSources": {
26304
+ "__deferred": {
26305
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')/ValueSources"
26306
+ }
26307
+ },
26308
+ "Enumerations": {
26309
+ "__deferred": {
26310
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')/Enumerations"
26311
+ }
26312
+ },
26313
+ "DataObjectReference": {
26314
+ "__metadata": {
26315
+ "id": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c0b3b2f5ead948cd9545797bef36def5')",
26316
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c0b3b2f5ead948cd9545797bef36def5')",
26317
+ "type": "VOCABULARY_SRV.DataObjectReference"
26318
+ },
26319
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26320
+ "DataObjectId": "c0b3b2f5ead948cd9545797bef36def5",
26321
+ "Version": "000000000000000000",
26322
+ "TargetDataObjectId": "42df467abf02460da3c35afe2d26fb93",
26323
+ "ReferencedDO": {
26324
+ "__deferred": {
26325
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c0b3b2f5ead948cd9545797bef36def5')/ReferencedDO"
26326
+ }
26327
+ }
26328
+ }
26329
+ }, {
26330
+ "__metadata": {
26331
+ "id": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c565c698c8bb478c913e4bd792ff9bce')",
26332
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c565c698c8bb478c913e4bd792ff9bce')",
26333
+ "type": "VOCABULARY_SRV.DataObject"
26334
+ },
26335
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26336
+ "Id": "c565c698c8bb478c913e4bd792ff9bce",
26337
+ "Usage": "DBCTX",
26338
+ "Name": "SAPEmployee",
26339
+ "Description": "SAPEmployee",
26340
+ "Label": "SAPEmployee",
26341
+ "Status": "Active",
26342
+ "Type": "Structure",
26343
+ "Version": "000000000000000000",
26344
+ "Associations": {
26345
+ "results": []
26346
+ },
26347
+ "Attributes": {
26348
+ "results": []
26349
+ },
26350
+ "ExpandedAttributes": {
26351
+ "__deferred": {
26352
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c565c698c8bb478c913e4bd792ff9bce')/ExpandedAttributes"
26353
+ }
26354
+ },
26355
+ "LineType": {
26356
+ "__deferred": {
26357
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c565c698c8bb478c913e4bd792ff9bce')/LineType"
26358
+ }
26359
+ },
26360
+ "References": {
26361
+ "results": []
26362
+ },
26363
+ "ValueSources": {
26364
+ "__deferred": {
26365
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c565c698c8bb478c913e4bd792ff9bce')/ValueSources"
26366
+ }
26367
+ },
26368
+ "Enumerations": {
26369
+ "__deferred": {
26370
+ "uri": "/vocabulary_srv/DataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c565c698c8bb478c913e4bd792ff9bce')/Enumerations"
26371
+ }
26372
+ },
26373
+ "DataObjectReference": {
26374
+ "__metadata": {
26375
+ "id": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c565c698c8bb478c913e4bd792ff9bce')",
26376
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c565c698c8bb478c913e4bd792ff9bce')",
26377
+ "type": "VOCABULARY_SRV.DataObjectReference"
26378
+ },
26379
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26380
+ "DataObjectId": "c565c698c8bb478c913e4bd792ff9bce",
26381
+ "Version": "000000000000000000",
26382
+ "TargetDataObjectId": "c0b3b2f5ead948cd9545797bef36def5",
26383
+ "ReferencedDO": {
26384
+ "__deferred": {
26385
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c565c698c8bb478c913e4bd792ff9bce')/ReferencedDO"
26386
+ }
26387
+ }
26388
+ }
26389
+ }]
26390
+ },
26391
+ "NestedDataObjects": {
26392
+ "results": [{
26393
+ "__metadata": {
26394
+ "id": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')",
26395
+ "uri": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='983396a82cdd4eb184186add5f908eb0')",
26396
+ "type": "VOCABULARY_SRV.NestedDataObject"
26397
+ },
26398
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26399
+ "Id": "983396a82cdd4eb184186add5f908eb0",
26400
+ "Usage": "DBCTX",
26401
+ "Name": "Discount",
26402
+ "Description": "Discount",
26403
+ "Label": "Discount",
26404
+ "Status": "Active",
26405
+ "Type": "Structure",
26406
+ "Version": "000000000000000000",
26407
+ "Associations": {
26408
+ "results": []
26409
+ },
26410
+ "Attributes": {
26411
+ "results": [{
26412
+ "__metadata": {
26413
+ "id": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')",
26414
+ "uri": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')",
26415
+ "type": "VOCABULARY_SRV.Attribute"
26416
+ },
26417
+ "Id": "d3a093e81e74413e824946fa7d0b893e",
26418
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26419
+ "DataObjectId": "983396a82cdd4eb184186add5f908eb0",
26420
+ "Name": "value",
26421
+ "Description": "value",
26422
+ "Label": "value",
26423
+ "BusinessDataType": "Number",
26424
+ "HasValueSource": false,
26425
+ "Version": "000000000000000000",
26426
+ "ValueSource": {
26427
+ "__deferred": {
26428
+ "uri": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')/ValueSource"
26429
+ }
26430
+ },
26431
+ "Enumerations": {
26432
+ "__deferred": {
26433
+ "uri": "/vocabulary_srv/Attributes(Id='d3a093e81e74413e824946fa7d0b893e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0')/Enumerations"
26434
+ }
26435
+ }
26436
+ }]
26437
+ },
26438
+ "References": {
26439
+ "results": [{
26440
+ "__metadata": {
26441
+ "id": "/vocabulary_srv/References(Id='013176b7555548e2a6d6a22234c931bb',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0',Name='details',Version='000000000000000000',TargetDataObjectId='083fa692a253498f943d8645b379bf64')",
26442
+ "uri": "/vocabulary_srv/References(Id='013176b7555548e2a6d6a22234c931bb',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0',Name='details',Version='000000000000000000',TargetDataObjectId='083fa692a253498f943d8645b379bf64')",
26443
+ "type": "VOCABULARY_SRV.Reference"
26444
+ },
26445
+ "Id": "013176b7555548e2a6d6a22234c931bb",
26446
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26447
+ "DataObjectId": "983396a82cdd4eb184186add5f908eb0",
26448
+ "Name": "details",
26449
+ "Version": "000000000000000000",
26450
+ "TargetDataObjectId": "083fa692a253498f943d8645b379bf64",
26451
+ "Description": "details",
26452
+ "Label": "details",
26453
+ "ReferencedDataObject": {
26454
+ "__deferred": {
26455
+ "uri": "/vocabulary_srv/References(Id='013176b7555548e2a6d6a22234c931bb',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='983396a82cdd4eb184186add5f908eb0',Name='details',Version='000000000000000000',TargetDataObjectId='083fa692a253498f943d8645b379bf64')/ReferencedDataObject"
26456
+ }
26457
+ }
26458
+ }]
26459
+ },
26460
+ "DataObjectReference": null
26461
+ }, {
26462
+ "__metadata": {
26463
+ "id": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')",
26464
+ "uri": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='546b015102654e6b999b063dcd4fa055')",
26465
+ "type": "VOCABULARY_SRV.NestedDataObject"
26466
+ },
26467
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26468
+ "Id": "546b015102654e6b999b063dcd4fa055",
26469
+ "Usage": "DBCTX",
26470
+ "Name": "Address",
26471
+ "Description": "capture address information",
26472
+ "Label": "Address",
26473
+ "Status": "Active",
26474
+ "Type": "Structure",
26475
+ "Version": "000000000000000000",
26476
+ "Associations": {
26477
+ "results": []
26478
+ },
26479
+ "Attributes": {
26480
+ "results": [{
26481
+ "__metadata": {
26482
+ "id": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26483
+ "uri": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26484
+ "type": "VOCABULARY_SRV.Attribute"
26485
+ },
26486
+ "Id": "4708e07f28a74646a6d059926a536c72",
26487
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26488
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
26489
+ "Name": "pincode",
26490
+ "Description": "pincode",
26491
+ "Label": "pincode",
26492
+ "BusinessDataType": "Number",
26493
+ "HasValueSource": false,
26494
+ "Version": "000000000000000000",
26495
+ "ValueSource": {
26496
+ "__deferred": {
26497
+ "uri": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
26498
+ }
26499
+ },
26500
+ "Enumerations": {
26501
+ "__deferred": {
26502
+ "uri": "/vocabulary_srv/Attributes(Id='4708e07f28a74646a6d059926a536c72',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
26503
+ }
26504
+ }
26505
+ }, {
26506
+ "__metadata": {
26507
+ "id": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26508
+ "uri": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26509
+ "type": "VOCABULARY_SRV.Attribute"
26510
+ },
26511
+ "Id": "bdb9410c6e0b44c1a700722708447353",
26512
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26513
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
26514
+ "Name": "city",
26515
+ "Description": "city",
26516
+ "Label": "city",
26517
+ "BusinessDataType": "String",
26518
+ "HasValueSource": false,
26519
+ "Version": "000000000000000000",
26520
+ "ValueSource": {
26521
+ "__deferred": {
26522
+ "uri": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
26523
+ }
26524
+ },
26525
+ "Enumerations": {
26526
+ "__deferred": {
26527
+ "uri": "/vocabulary_srv/Attributes(Id='bdb9410c6e0b44c1a700722708447353',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
26528
+ }
26529
+ }
26530
+ }, {
26531
+ "__metadata": {
26532
+ "id": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26533
+ "uri": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26534
+ "type": "VOCABULARY_SRV.Attribute"
26535
+ },
26536
+ "Id": "fa1fe11edb154805916cf71fd2ed614e",
26537
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26538
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
26539
+ "Name": "street",
26540
+ "Description": "street",
26541
+ "Label": "street",
26542
+ "BusinessDataType": "String",
26543
+ "HasValueSource": false,
26544
+ "Version": "000000000000000000",
26545
+ "ValueSource": {
26546
+ "__deferred": {
26547
+ "uri": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
26548
+ }
26549
+ },
26550
+ "Enumerations": {
26551
+ "__deferred": {
26552
+ "uri": "/vocabulary_srv/Attributes(Id='fa1fe11edb154805916cf71fd2ed614e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
26553
+ }
26554
+ }
26555
+ }, {
26556
+ "__metadata": {
26557
+ "id": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26558
+ "uri": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')",
26559
+ "type": "VOCABULARY_SRV.Attribute"
26560
+ },
26561
+ "Id": "faea5f3246864ec59f3c472a2f381c5d",
26562
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26563
+ "DataObjectId": "546b015102654e6b999b063dcd4fa055",
26564
+ "Name": "houseNumber",
26565
+ "Description": "houseNumber",
26566
+ "Label": "house number",
26567
+ "BusinessDataType": "String",
26568
+ "HasValueSource": false,
26569
+ "Version": "000000000000000000",
26570
+ "ValueSource": {
26571
+ "__deferred": {
26572
+ "uri": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/ValueSource"
26573
+ }
26574
+ },
26575
+ "Enumerations": {
26576
+ "__deferred": {
26577
+ "uri": "/vocabulary_srv/Attributes(Id='faea5f3246864ec59f3c472a2f381c5d',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='546b015102654e6b999b063dcd4fa055')/Enumerations"
26578
+ }
26579
+ }
26580
+ }]
26581
+ },
26582
+ "References": {
26583
+ "results": []
26584
+ },
26585
+ "DataObjectReference": null
26586
+ }, {
26587
+ "__metadata": {
26588
+ "id": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')",
26589
+ "uri": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='c0b3b2f5ead948cd9545797bef36def5')",
26590
+ "type": "VOCABULARY_SRV.NestedDataObject"
26591
+ },
26592
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26593
+ "Id": "c0b3b2f5ead948cd9545797bef36def5",
26594
+ "Usage": "DBCTX",
26595
+ "Name": "PermanentEmployee",
26596
+ "Description": "PermanentEmployee",
26597
+ "Label": "PermanentEmployee",
26598
+ "Status": "Active",
26599
+ "Type": "Structure",
26600
+ "Version": "000000000000000000",
26601
+ "Associations": {
26602
+ "results": []
26603
+ },
26604
+ "Attributes": {
26605
+ "results": []
26606
+ },
26607
+ "References": {
26608
+ "results": []
26609
+ },
26610
+ "DataObjectReference": {
26611
+ "__metadata": {
26612
+ "id": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c0b3b2f5ead948cd9545797bef36def5')",
26613
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c0b3b2f5ead948cd9545797bef36def5')",
26614
+ "type": "VOCABULARY_SRV.DataObjectReference"
26615
+ },
26616
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26617
+ "DataObjectId": "c0b3b2f5ead948cd9545797bef36def5",
26618
+ "Version": "000000000000000000",
26619
+ "TargetDataObjectId": "42df467abf02460da3c35afe2d26fb93",
26620
+ "ReferencedDO": {
26621
+ "__deferred": {
26622
+ "uri": "/vocabulary_srv/DataObjectReferences(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='c0b3b2f5ead948cd9545797bef36def5')/ReferencedDO"
26623
+ }
26624
+ }
26625
+ }
26626
+ }, {
26627
+ "__metadata": {
26628
+ "id": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')",
26629
+ "uri": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='083fa692a253498f943d8645b379bf64')",
26630
+ "type": "VOCABULARY_SRV.NestedDataObject"
26631
+ },
26632
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26633
+ "Id": "083fa692a253498f943d8645b379bf64",
26634
+ "Usage": "DBCTX",
26635
+ "Name": "OfferDetails",
26636
+ "Description": "OfferDetails",
26637
+ "Label": "OfferDetails",
26638
+ "Status": "Active",
26639
+ "Type": "Structure",
26640
+ "Version": "000000000000000000",
26641
+ "Associations": {
26642
+ "results": []
26643
+ },
26644
+ "Attributes": {
26645
+ "results": [{
26646
+ "__metadata": {
26647
+ "id": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26648
+ "uri": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26649
+ "type": "VOCABULARY_SRV.Attribute"
26650
+ },
26651
+ "Id": "f90180aeccc14345af86076a10464eb6",
26652
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26653
+ "DataObjectId": "083fa692a253498f943d8645b379bf64",
26654
+ "Name": "isSeasonal",
26655
+ "Description": "isSeasonal",
26656
+ "Label": "isSeasonal",
26657
+ "BusinessDataType": "Boolean",
26658
+ "HasValueSource": false,
26659
+ "Version": "000000000000000000",
26660
+ "ValueSource": {
26661
+ "__deferred": {
26662
+ "uri": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/ValueSource"
26663
+ }
26664
+ },
26665
+ "Enumerations": {
26666
+ "__deferred": {
26667
+ "uri": "/vocabulary_srv/Attributes(Id='f90180aeccc14345af86076a10464eb6',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/Enumerations"
26668
+ }
26669
+ }
26670
+ }, {
26671
+ "__metadata": {
26672
+ "id": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26673
+ "uri": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')",
26674
+ "type": "VOCABULARY_SRV.Attribute"
26675
+ },
26676
+ "Id": "127430cea9d04fe981c57f1439998842",
26677
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26678
+ "DataObjectId": "083fa692a253498f943d8645b379bf64",
26679
+ "Name": "description",
26680
+ "Description": "description",
26681
+ "Label": "description",
26682
+ "BusinessDataType": "String",
26683
+ "HasValueSource": false,
26684
+ "Version": "000000000000000000",
26685
+ "ValueSource": {
26686
+ "__deferred": {
26687
+ "uri": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/ValueSource"
26688
+ }
26689
+ },
26690
+ "Enumerations": {
26691
+ "__deferred": {
26692
+ "uri": "/vocabulary_srv/Attributes(Id='127430cea9d04fe981c57f1439998842',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='083fa692a253498f943d8645b379bf64')/Enumerations"
26693
+ }
26694
+ }
26695
+ }]
26696
+ },
26697
+ "References": {
26698
+ "results": []
26699
+ },
26700
+ "DataObjectReference": null
26701
+ }, {
26702
+ "__metadata": {
26703
+ "id": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')",
26704
+ "uri": "/vocabulary_srv/NestedDataObjects(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Id='42df467abf02460da3c35afe2d26fb93')",
26705
+ "type": "VOCABULARY_SRV.NestedDataObject"
26706
+ },
26707
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26708
+ "Id": "42df467abf02460da3c35afe2d26fb93",
26709
+ "Usage": "DBCTX",
26710
+ "Name": "Employee",
26711
+ "Description": "Employee",
26712
+ "Label": "Employee",
26713
+ "Status": "Active",
26714
+ "Type": "Structure",
26715
+ "Version": "000000000000000000",
26716
+ "Associations": {
26717
+ "results": [{
26718
+ "__metadata": {
26719
+ "id": "/vocabulary_srv/Associations(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Name='org',Id='7ca98f637eb44fcb99b70bf59545fcef',DataObjectId='42df467abf02460da3c35afe2d26fb93',TargetDataObjectId='6198916c0df745dc948547d9e0a3c26e')",
26720
+ "uri": "/vocabulary_srv/Associations(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Name='org',Id='7ca98f637eb44fcb99b70bf59545fcef',DataObjectId='42df467abf02460da3c35afe2d26fb93',TargetDataObjectId='6198916c0df745dc948547d9e0a3c26e')",
26721
+ "type": "VOCABULARY_SRV.Association"
26722
+ },
26723
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26724
+ "Id": "7ca98f637eb44fcb99b70bf59545fcef",
26725
+ "Name": "org",
26726
+ "Label": "org",
26727
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26728
+ "TargetDataObjectId": "6198916c0df745dc948547d9e0a3c26e",
26729
+ "Cardinality": "1..1",
26730
+ "Version": "000000000000000000",
26731
+ "TARGETDATAOBJECTID": {
26732
+ "__deferred": {
26733
+ "uri": "/vocabulary_srv/Associations(VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',Name='org',Id='7ca98f637eb44fcb99b70bf59545fcef',DataObjectId='42df467abf02460da3c35afe2d26fb93',TargetDataObjectId='6198916c0df745dc948547d9e0a3c26e')/TARGETDATAOBJECTID"
26734
+ }
26735
+ }
26736
+ }]
26737
+ },
26738
+ "Attributes": {
26739
+ "results": [{
26740
+ "__metadata": {
26741
+ "id": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26742
+ "uri": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26743
+ "type": "VOCABULARY_SRV.Attribute"
26744
+ },
26745
+ "Id": "8f45720cb57b490fbf9d5d68e0b9f443",
26746
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26747
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26748
+ "Name": "orgName",
26749
+ "Description": "orgName",
26750
+ "Label": "orgName",
26751
+ "BusinessDataType": "String",
26752
+ "HasValueSource": false,
26753
+ "Version": "000000000000000000",
26754
+ "ValueSource": {
26755
+ "__deferred": {
26756
+ "uri": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
26757
+ }
26758
+ },
26759
+ "Enumerations": {
26760
+ "__deferred": {
26761
+ "uri": "/vocabulary_srv/Attributes(Id='8f45720cb57b490fbf9d5d68e0b9f443',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
26762
+ }
26763
+ }
26764
+ }, {
26765
+ "__metadata": {
26766
+ "id": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26767
+ "uri": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26768
+ "type": "VOCABULARY_SRV.Attribute"
26769
+ },
26770
+ "Id": "4ec1e269440143fc8de398d707ab6972",
26771
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26772
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26773
+ "Name": "amountDonated",
26774
+ "Description": "amountDonated",
26775
+ "Label": "amountDonated",
26776
+ "BusinessDataType": "Amount",
26777
+ "HasValueSource": false,
26778
+ "Version": "000000000000000000",
26779
+ "ValueSource": {
26780
+ "__deferred": {
26781
+ "uri": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
26782
+ }
26783
+ },
26784
+ "Enumerations": {
26785
+ "__deferred": {
26786
+ "uri": "/vocabulary_srv/Attributes(Id='4ec1e269440143fc8de398d707ab6972',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
26787
+ }
26788
+ }
26789
+ }, {
26790
+ "__metadata": {
26791
+ "id": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26792
+ "uri": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26793
+ "type": "VOCABULARY_SRV.Attribute"
26794
+ },
26795
+ "Id": "104a0314f3ba4401acd9db8bffa429ca",
26796
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26797
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26798
+ "Name": "dob",
26799
+ "Description": "dob",
26800
+ "Label": "dob",
26801
+ "BusinessDataType": "Date",
26802
+ "HasValueSource": false,
26803
+ "Version": "000000000000000000",
26804
+ "ValueSource": {
26805
+ "__deferred": {
26806
+ "uri": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
26807
+ }
26808
+ },
26809
+ "Enumerations": {
26810
+ "__deferred": {
26811
+ "uri": "/vocabulary_srv/Attributes(Id='104a0314f3ba4401acd9db8bffa429ca',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
26812
+ }
26813
+ }
26814
+ }, {
26815
+ "__metadata": {
26816
+ "id": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26817
+ "uri": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26818
+ "type": "VOCABULARY_SRV.Attribute"
26819
+ },
26820
+ "Id": "5a0b5397243d4623ab1aa8c165b00b3e",
26821
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26822
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26823
+ "Name": "isMale",
26824
+ "Description": "isMale",
26825
+ "Label": "isMale",
26826
+ "BusinessDataType": "Boolean",
26827
+ "HasValueSource": false,
26828
+ "Version": "000000000000000000",
26829
+ "ValueSource": {
26830
+ "__deferred": {
26831
+ "uri": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
26832
+ }
26833
+ },
26834
+ "Enumerations": {
26835
+ "__deferred": {
26836
+ "uri": "/vocabulary_srv/Attributes(Id='5a0b5397243d4623ab1aa8c165b00b3e',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
26837
+ }
26838
+ }
26839
+ }, {
26840
+ "__metadata": {
26841
+ "id": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26842
+ "uri": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26843
+ "type": "VOCABULARY_SRV.Attribute"
26844
+ },
26845
+ "Id": "589a2bc968b44c42b30d26d69e5aaa89",
26846
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26847
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26848
+ "Name": "age",
26849
+ "Description": "age",
26850
+ "Label": "age",
26851
+ "BusinessDataType": "Number",
26852
+ "HasValueSource": false,
26853
+ "Version": "000000000000000000",
26854
+ "ValueSource": {
26855
+ "__deferred": {
26856
+ "uri": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
26857
+ }
26858
+ },
26859
+ "Enumerations": {
26860
+ "__deferred": {
26861
+ "uri": "/vocabulary_srv/Attributes(Id='589a2bc968b44c42b30d26d69e5aaa89',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
26862
+ }
26863
+ }
26864
+ }, {
26865
+ "__metadata": {
26866
+ "id": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26867
+ "uri": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')",
26868
+ "type": "VOCABULARY_SRV.Attribute"
26869
+ },
26870
+ "Id": "e78e87610d534857bc9f86d620f94b0b",
26871
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26872
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26873
+ "Name": "name",
26874
+ "Description": "name",
26875
+ "Label": "name",
26876
+ "BusinessDataType": "String",
26877
+ "HasValueSource": false,
26878
+ "Version": "000000000000000000",
26879
+ "ValueSource": {
26880
+ "__deferred": {
26881
+ "uri": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/ValueSource"
26882
+ }
26883
+ },
26884
+ "Enumerations": {
26885
+ "__deferred": {
26886
+ "uri": "/vocabulary_srv/Attributes(Id='e78e87610d534857bc9f86d620f94b0b',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93')/Enumerations"
26887
+ }
26888
+ }
26889
+ }]
26890
+ },
26891
+ "References": {
26892
+ "results": [{
26893
+ "__metadata": {
26894
+ "id": "/vocabulary_srv/References(Id='77eea26d56404b1eb933e0f4642527d1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93',Name='address',Version='000000000000000000',TargetDataObjectId='546b015102654e6b999b063dcd4fa055')",
26895
+ "uri": "/vocabulary_srv/References(Id='77eea26d56404b1eb933e0f4642527d1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93',Name='address',Version='000000000000000000',TargetDataObjectId='546b015102654e6b999b063dcd4fa055')",
26896
+ "type": "VOCABULARY_SRV.Reference"
26897
+ },
26898
+ "Id": "77eea26d56404b1eb933e0f4642527d1",
26899
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d:000001",
26900
+ "DataObjectId": "42df467abf02460da3c35afe2d26fb93",
26901
+ "Name": "address",
26902
+ "Version": "000000000000000000",
26903
+ "TargetDataObjectId": "546b015102654e6b999b063dcd4fa055",
26904
+ "Description": "Address",
26905
+ "Label": "address",
26906
+ "ReferencedDataObject": {
26907
+ "__deferred": {
26908
+ "uri": "/vocabulary_srv/References(Id='77eea26d56404b1eb933e0f4642527d1',VocabularyId='46c44485de784011ad2ed6a6cf4b377d%3A000001',DataObjectId='42df467abf02460da3c35afe2d26fb93',Name='address',Version='000000000000000000',TargetDataObjectId='546b015102654e6b999b063dcd4fa055')/ReferencedDataObject"
26909
+ }
26910
+ }
26911
+ }]
26912
+ },
26913
+ "DataObjectReference": null
26914
+ }]
26915
+ },
26916
+ "ValueSources": {
26917
+ "results": []
26918
+ },
26919
+ "Enumerations": {
26920
+ "__deferred": {
26921
+ "uri": "/vocabulary_srv/Vocabularies('46c44485de784011ad2ed6a6cf4b377d%3A000001')/Enumerations"
26922
+ }
26923
+ },
26924
+ "Rules": {
26925
+ "results": [{
26926
+ "__metadata": {
26927
+ "id": "/vocabulary_srv/Rules(VocabularyId='46c44485de784011ad2ed6a6cf4b377d',Id='e1c1c462117d4edcb16d5c1517576119')",
26928
+ "uri": "/vocabulary_srv/Rules(VocabularyId='46c44485de784011ad2ed6a6cf4b377d',Id='e1c1c462117d4edcb16d5c1517576119')",
26929
+ "type": "VOCABULARY_SRV.Rule"
26930
+ },
26931
+ "VocabularyId": "46c44485de784011ad2ed6a6cf4b377d",
26932
+ "Id": "e1c1c462117d4edcb16d5c1517576119",
26933
+ "Name": "myVocabRule",
26934
+ "Description": "myVocabRule",
26935
+ "Label": null,
26936
+ "Status": "Active",
26937
+ "ResultDataObjectId": "b3be885903af4cafacee3b87559332f8",
26938
+ "Version": "000000000000000000",
26939
+ "ResultDataObject": {
26940
+ "__deferred": {
26941
+ "uri": "/vocabulary_srv/Rules(VocabularyId='46c44485de784011ad2ed6a6cf4b377d',Id='e1c1c462117d4edcb16d5c1517576119')/ResultDataObject"
26942
+ }
26943
+ },
26944
+ "ResultAttributes": {
26945
+ "__deferred": {
26946
+ "uri": "/vocabulary_srv/Rules(VocabularyId='46c44485de784011ad2ed6a6cf4b377d',Id='e1c1c462117d4edcb16d5c1517576119')/ResultAttributes"
26947
+ }
26948
+ }
26949
+ }]
26950
+ }
26951
+ }
26952
+ };
26953
+ var doRefExpectedTerms = [{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Address","_termId":"546b015102654e6b999b063dcd4fa055","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"Address"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Address.pincode","_termId":"546b015102654e6b999b063dcd4fa055.4708e07f28a74646a6d059926a536c72","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Address.pincode"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Address.city","_termId":"546b015102654e6b999b063dcd4fa055.bdb9410c6e0b44c1a700722708447353","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Address.city"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Address.street","_termId":"546b015102654e6b999b063dcd4fa055.fa1fe11edb154805916cf71fd2ed614e","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Address.street"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Address.houseNumber","_termId":"546b015102654e6b999b063dcd4fa055.faea5f3246864ec59f3c472a2f381c5d","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Address.house number"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"myVocabRule","_termId":"e1c1c462117d4edcb16d5c1517576119","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":null,"_label":"myVocabRule","ResultDataObjectId":"b3be885903af4cafacee3b87559332f8","Status":"Active","Type":"Rule"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"myVocabRule.value","_termId":"e1c1c462117d4edcb16d5c1517576119.d3a093e81e74413e824946fa7d0b893e","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"myVocabRule.value"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"myVocabRule.details","_termId":"e1c1c462117d4edcb16d5c1517576119.013176b7555548e2a6d6a22234c931bb","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"myVocabRule.details"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"myVocabRule.details.isSeasonal","_termId":"e1c1c462117d4edcb16d5c1517576119.013176b7555548e2a6d6a22234c931bb.f90180aeccc14345af86076a10464eb6","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"myVocabRule.details.isSeasonal"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"myVocabRule.details.description","_termId":"e1c1c462117d4edcb16d5c1517576119.013176b7555548e2a6d6a22234c931bb.127430cea9d04fe981c57f1439998842","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"myVocabRule.details.description"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Discount","_termId":"983396a82cdd4eb184186add5f908eb0","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"Discount"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Discount.value","_termId":"983396a82cdd4eb184186add5f908eb0.d3a093e81e74413e824946fa7d0b893e","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Discount.value"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Discount.details","_termId":"983396a82cdd4eb184186add5f908eb0.013176b7555548e2a6d6a22234c931bb","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"Discount.details"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Discount.details.isSeasonal","_termId":"983396a82cdd4eb184186add5f908eb0.013176b7555548e2a6d6a22234c931bb.f90180aeccc14345af86076a10464eb6","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Discount.details.isSeasonal"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Discount.details.description","_termId":"983396a82cdd4eb184186add5f908eb0.013176b7555548e2a6d6a22234c931bb.127430cea9d04fe981c57f1439998842","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Discount.details.description"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee","_termId":"42df467abf02460da3c35afe2d26fb93","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"Employee"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.orgName","_termId":"42df467abf02460da3c35afe2d26fb93.8f45720cb57b490fbf9d5d68e0b9f443","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Employee.orgName"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.amountDonated","_termId":"42df467abf02460da3c35afe2d26fb93.4ec1e269440143fc8de398d707ab6972","_bussinessDataType":"A","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Employee.amountDonated"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.dob","_termId":"42df467abf02460da3c35afe2d26fb93.104a0314f3ba4401acd9db8bffa429ca","_bussinessDataType":"D","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Employee.dob"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.isMale","_termId":"42df467abf02460da3c35afe2d26fb93.5a0b5397243d4623ab1aa8c165b00b3e","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Employee.isMale"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.age","_termId":"42df467abf02460da3c35afe2d26fb93.589a2bc968b44c42b30d26d69e5aaa89","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Employee.age"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.name","_termId":"42df467abf02460da3c35afe2d26fb93.e78e87610d534857bc9f86d620f94b0b","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Employee.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.org","_termId":"42df467abf02460da3c35afe2d26fb93.7ca98f637eb44fcb99b70bf59545fcef","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AO","_label":"Employee.org","_cardinality":"1..1"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.org.boardArea","_termId":"42df467abf02460da3c35afe2d26fb93.7ca98f637eb44fcb99b70bf59545fcef.d6fb3b274c0b4bea8b2b27acf9d9b7b1","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Employee.org.boardArea"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.org.name","_termId":"42df467abf02460da3c35afe2d26fb93.7ca98f637eb44fcb99b70bf59545fcef.382e0e89907541688dfe8f634e69c213","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Employee.org.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.address","_termId":"42df467abf02460da3c35afe2d26fb93.77eea26d56404b1eb933e0f4642527d1","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"Employee.address"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.address.pincode","_termId":"42df467abf02460da3c35afe2d26fb93.77eea26d56404b1eb933e0f4642527d1.4708e07f28a74646a6d059926a536c72","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Employee.address.pincode"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.address.city","_termId":"42df467abf02460da3c35afe2d26fb93.77eea26d56404b1eb933e0f4642527d1.bdb9410c6e0b44c1a700722708447353","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Employee.address.city"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.address.street","_termId":"42df467abf02460da3c35afe2d26fb93.77eea26d56404b1eb933e0f4642527d1.fa1fe11edb154805916cf71fd2ed614e","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Employee.address.street"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Employee.address.houseNumber","_termId":"42df467abf02460da3c35afe2d26fb93.77eea26d56404b1eb933e0f4642527d1.faea5f3246864ec59f3c472a2f381c5d","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"Employee.address.house number"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"EmployeeDiscount","_termId":"b3be885903af4cafacee3b87559332f8","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"EmployeeDiscount"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"EmployeeDiscount.value","_termId":"b3be885903af4cafacee3b87559332f8.d3a093e81e74413e824946fa7d0b893e","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"EmployeeDiscount.value"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"EmployeeDiscount.details","_termId":"b3be885903af4cafacee3b87559332f8.013176b7555548e2a6d6a22234c931bb","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"EmployeeDiscount.details"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"EmployeeDiscount.details.isSeasonal","_termId":"b3be885903af4cafacee3b87559332f8.013176b7555548e2a6d6a22234c931bb.f90180aeccc14345af86076a10464eb6","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"EmployeeDiscount.details.isSeasonal"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"EmployeeDiscount.details.description","_termId":"b3be885903af4cafacee3b87559332f8.013176b7555548e2a6d6a22234c931bb.127430cea9d04fe981c57f1439998842","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"EmployeeDiscount.details.description"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"OfferDetails","_termId":"083fa692a253498f943d8645b379bf64","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"OfferDetails"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"OfferDetails.isSeasonal","_termId":"083fa692a253498f943d8645b379bf64.f90180aeccc14345af86076a10464eb6","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"OfferDetails.isSeasonal"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"OfferDetails.description","_termId":"083fa692a253498f943d8645b379bf64.127430cea9d04fe981c57f1439998842","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"OfferDetails.description"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Organisation","_termId":"6198916c0df745dc948547d9e0a3c26e","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"Organisation"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Organisation.boardArea","_termId":"6198916c0df745dc948547d9e0a3c26e.d6fb3b274c0b4bea8b2b27acf9d9b7b1","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Organisation.boardArea"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"Organisation.name","_termId":"6198916c0df745dc948547d9e0a3c26e.382e0e89907541688dfe8f634e69c213","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"Organisation.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"ContractEmp"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.orgName","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.8f45720cb57b490fbf9d5d68e0b9f443","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"ContractEmp.orgName"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.amountDonated","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.4ec1e269440143fc8de398d707ab6972","_bussinessDataType":"A","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"ContractEmp.amountDonated"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.dob","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.104a0314f3ba4401acd9db8bffa429ca","_bussinessDataType":"D","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"ContractEmp.dob"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.isMale","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.5a0b5397243d4623ab1aa8c165b00b3e","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"ContractEmp.isMale"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.age","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.589a2bc968b44c42b30d26d69e5aaa89","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"ContractEmp.age"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.name","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.e78e87610d534857bc9f86d620f94b0b","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"ContractEmp.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.org","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.7ca98f637eb44fcb99b70bf59545fcef","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AO","_label":"ContractEmp.org","_cardinality":"1..1"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.org.boardArea","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.7ca98f637eb44fcb99b70bf59545fcef.d6fb3b274c0b4bea8b2b27acf9d9b7b1","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"ContractEmp.org.boardArea"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.org.name","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.7ca98f637eb44fcb99b70bf59545fcef.382e0e89907541688dfe8f634e69c213","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"ContractEmp.org.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.address","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.77eea26d56404b1eb933e0f4642527d1","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"ContractEmp.address"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.address.pincode","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.77eea26d56404b1eb933e0f4642527d1.4708e07f28a74646a6d059926a536c72","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"ContractEmp.address.pincode"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.address.city","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.77eea26d56404b1eb933e0f4642527d1.bdb9410c6e0b44c1a700722708447353","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"ContractEmp.address.city"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.address.street","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.77eea26d56404b1eb933e0f4642527d1.fa1fe11edb154805916cf71fd2ed614e","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"ContractEmp.address.street"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"ContractEmployee.address.houseNumber","_termId":"6376f53c2a4c4ef5b5bb4f03be1b1f6b.77eea26d56404b1eb933e0f4642527d1.faea5f3246864ec59f3c472a2f381c5d","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"ContractEmp.address.house number"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee","_termId":"c0b3b2f5ead948cd9545797bef36def5","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"PermanentEmployee"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.orgName","_termId":"c0b3b2f5ead948cd9545797bef36def5.8f45720cb57b490fbf9d5d68e0b9f443","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"PermanentEmployee.orgName"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.amountDonated","_termId":"c0b3b2f5ead948cd9545797bef36def5.4ec1e269440143fc8de398d707ab6972","_bussinessDataType":"A","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"PermanentEmployee.amountDonated"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.dob","_termId":"c0b3b2f5ead948cd9545797bef36def5.104a0314f3ba4401acd9db8bffa429ca","_bussinessDataType":"D","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"PermanentEmployee.dob"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.isMale","_termId":"c0b3b2f5ead948cd9545797bef36def5.5a0b5397243d4623ab1aa8c165b00b3e","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"PermanentEmployee.isMale"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.age","_termId":"c0b3b2f5ead948cd9545797bef36def5.589a2bc968b44c42b30d26d69e5aaa89","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"PermanentEmployee.age"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.name","_termId":"c0b3b2f5ead948cd9545797bef36def5.e78e87610d534857bc9f86d620f94b0b","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"PermanentEmployee.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.org","_termId":"c0b3b2f5ead948cd9545797bef36def5.7ca98f637eb44fcb99b70bf59545fcef","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AO","_label":"PermanentEmployee.org","_cardinality":"1..1"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.org.boardArea","_termId":"c0b3b2f5ead948cd9545797bef36def5.7ca98f637eb44fcb99b70bf59545fcef.d6fb3b274c0b4bea8b2b27acf9d9b7b1","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"PermanentEmployee.org.boardArea"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.org.name","_termId":"c0b3b2f5ead948cd9545797bef36def5.7ca98f637eb44fcb99b70bf59545fcef.382e0e89907541688dfe8f634e69c213","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"PermanentEmployee.org.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.address","_termId":"c0b3b2f5ead948cd9545797bef36def5.77eea26d56404b1eb933e0f4642527d1","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"PermanentEmployee.address"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.address.pincode","_termId":"c0b3b2f5ead948cd9545797bef36def5.77eea26d56404b1eb933e0f4642527d1.4708e07f28a74646a6d059926a536c72","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"PermanentEmployee.address.pincode"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.address.city","_termId":"c0b3b2f5ead948cd9545797bef36def5.77eea26d56404b1eb933e0f4642527d1.bdb9410c6e0b44c1a700722708447353","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"PermanentEmployee.address.city"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.address.street","_termId":"c0b3b2f5ead948cd9545797bef36def5.77eea26d56404b1eb933e0f4642527d1.fa1fe11edb154805916cf71fd2ed614e","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"PermanentEmployee.address.street"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"PermanentEmployee.address.houseNumber","_termId":"c0b3b2f5ead948cd9545797bef36def5.77eea26d56404b1eb933e0f4642527d1.faea5f3246864ec59f3c472a2f381c5d","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"PermanentEmployee.address.house number"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee","_termId":"c565c698c8bb478c913e4bd792ff9bce","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"S","_label":"SAPEmployee"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.orgName","_termId":"c565c698c8bb478c913e4bd792ff9bce.8f45720cb57b490fbf9d5d68e0b9f443","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"SAPEmployee.orgName"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.amountDonated","_termId":"c565c698c8bb478c913e4bd792ff9bce.4ec1e269440143fc8de398d707ab6972","_bussinessDataType":"A","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"SAPEmployee.amountDonated"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.dob","_termId":"c565c698c8bb478c913e4bd792ff9bce.104a0314f3ba4401acd9db8bffa429ca","_bussinessDataType":"D","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"SAPEmployee.dob"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.isMale","_termId":"c565c698c8bb478c913e4bd792ff9bce.5a0b5397243d4623ab1aa8c165b00b3e","_bussinessDataType":"B","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"SAPEmployee.isMale"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.age","_termId":"c565c698c8bb478c913e4bd792ff9bce.589a2bc968b44c42b30d26d69e5aaa89","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"SAPEmployee.age"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.name","_termId":"c565c698c8bb478c913e4bd792ff9bce.e78e87610d534857bc9f86d620f94b0b","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AT","_label":"SAPEmployee.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.org","_termId":"c565c698c8bb478c913e4bd792ff9bce.7ca98f637eb44fcb99b70bf59545fcef","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"AO","_label":"SAPEmployee.org","_cardinality":"1..1"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.org.boardArea","_termId":"c565c698c8bb478c913e4bd792ff9bce.7ca98f637eb44fcb99b70bf59545fcef.d6fb3b274c0b4bea8b2b27acf9d9b7b1","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"SAPEmployee.org.boardArea"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.org.name","_termId":"c565c698c8bb478c913e4bd792ff9bce.7ca98f637eb44fcb99b70bf59545fcef.382e0e89907541688dfe8f634e69c213","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"SAPEmployee.org.name"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.address","_termId":"c565c698c8bb478c913e4bd792ff9bce.77eea26d56404b1eb933e0f4642527d1","_bussinessDataType":null,"_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"R","_label":"SAPEmployee.address"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.address.pincode","_termId":"c565c698c8bb478c913e4bd792ff9bce.77eea26d56404b1eb933e0f4642527d1.4708e07f28a74646a6d059926a536c72","_bussinessDataType":"N","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"SAPEmployee.address.pincode"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.address.city","_termId":"c565c698c8bb478c913e4bd792ff9bce.77eea26d56404b1eb933e0f4642527d1.bdb9410c6e0b44c1a700722708447353","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"SAPEmployee.address.city"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.address.street","_termId":"c565c698c8bb478c913e4bd792ff9bce.77eea26d56404b1eb933e0f4642527d1.fa1fe11edb154805916cf71fd2ed614e","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"SAPEmployee.address.street"},{"_isDataObjectElement":false,"_isDataObjectTable":false,"_termName":"SAPEmployee.address.houseNumber","_termId":"c565c698c8bb478c913e4bd792ff9bce.77eea26d56404b1eb933e0f4642527d1.faea5f3246864ec59f3c472a2f381c5d","_bussinessDataType":"S","_vocaId":"46c44485de784011ad2ed6a6cf4b377d:000001","_dataObjectType":"E","_label":"SAPEmployee.address.house number"}]
26954
+
26955
+ exports.doRefProjectVocabData = doRefProjectVocabData;
26956
+ exports.doRefExpectedTerms = doRefExpectedTerms;
26957
+
25456
26958
  /***/ })
25457
26959
  /******/ ]);