{
  "Data": [
    {
      "$type": "SoftwareIDM.ReportingModule.Models.Report, SoftwareIDM.ReportingModule",
      "Id": "8159df8e-d1a1-484f-9ca9-91808381d795",
      "Name": "Unique Indices",
      "UserId": null,
      "UserProfile": false,
      "Tags": null,
      "Roles": null,
      "CacheExpiration": "01:00:00",
      "Description": "List of unique indices configured in extensions ",
      "Parameters": [],
      "DataSets": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.QueryData, SoftwareIDM.ReportingModule",
          "Clauses": [],
          "SubQueries": [],
          "MapRule": "Find(Data, TypeLabel == \"Unique Names Settings\").Data",
          "MemoRules": [],
          "Aliases": null,
          "Name": "Indices",
          "Type": "SoftwareIDM.PanelModel.Models.Extensions, SoftwareIDM.PanelModel",
          "Include": null,
          "Limit": null
        }
      ],
      "ReportSets": [],
      "Relations": [],
      "FieldProjections": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Name",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.Name"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Description",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.Description"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Silo",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "ReverseSpecial(Child.Silo, \"Identity Silo\")"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "ObjectType",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.ObjectType"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Attributes",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Join(\", \", Child.Attributes)"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "IsMulti",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.IsMulti"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "IgnoreDeleted",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.IgnoreDeleted"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "ValueRule",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.ValueRule"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "RootRule",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.RootRule"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "KeyRule",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.KeyRule"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "ReservationTime",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.ReservationTime"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Child.Id"
        }
      ],
      "Transformations": [],
      "Styles": [],
      "Sort": {
        "Field": "",
        "Direction": "Ascending"
      }
    },
    {
      "$type": "SoftwareIDM.ReportingModule.Models.Report, SoftwareIDM.ReportingModule",
      "Id": "45a0f3ea-6495-4ab9-b158-94cc8d6b62b5",
      "Name": "Unique Indices Base",
      "UserId": null,
      "UserProfile": false,
      "Tags": null,
      "Roles": null,
      "CacheExpiration": "01:00:00",
      "Description": "Base report joining Unique Index definition and data for later filtering",
      "Parameters": [],
      "DataSets": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.QueryData, SoftwareIDM.ReportingModule",
          "Clauses": [],
          "SubQueries": [],
          "MapRule": "",
          "MemoRules": [],
          "Aliases": null,
          "Name": "Data",
          "Type": "SoftwareIDM.WorkflowModel.UniqueIndex, SoftwareIDM.WorkflowModel",
          "Include": null,
          "Limit": null
        }
      ],
      "ReportSets": [
        {
            "$type": "SoftwareIDM.ReportingModule.Models.ReportData, SoftwareIDM.ReportingModule",
            "Name": "Indices",
            "Report": "8159df8e-d1a1-484f-9ca9-91808381d795",
            "Aliases": null,
            "MapRule": "",
            "MemoRules": []
          }
      ],
      "Relations": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Relation, SoftwareIDM.ReportingModule",
          "Name": "Index - Data",
          "LeftSet": "Indices",
          "RightSet": "Data",
          "LeftRule": "Data.Index",
          "RightRule": "Definition",
          "AllowLeftOuter": false,
          "AllowRightOuter": false
        }
      ],
      "FieldProjections": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index Name",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Name"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Source Silo",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Silo"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Source ObjectType",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.ObjectType"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Source Object",
          "RelationName": "Index - Data",
          "RelationSide": "Right",
          "ValueRule": "If(Not(Expires), TimeTraveler(ObjectId))"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Key",
          "RelationName": "Index - Data",
          "RelationSide": "Right",
          "ValueRule": "Keys.0"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index Value",
          "RelationName": "Index - Data",
          "RelationSide": "Right",
          "ValueRule": "Values.0"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Root",
          "RelationName": "Index - Data",
          "RelationSide": "Right",
          "ValueRule": "Roots.0"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Reservation",
          "RelationName": "Index - Data",
          "RelationSide": "Right",
          "ValueRule": "If(Expires, DateTimeFormat(Expires, \"s\"), \"Permanent\")"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Deleted",
          "RelationName": "Index - Data",
          "RelationSide": "Right",
          "ValueRule": "If(Deleted, DateTimeFormat(Deleted, \"s\"))"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Index"
        }
      ],
      "Transformations": [],
      "Styles": [],
      "Sort": {
        "Field": "",
        "Direction": "Ascending"
      }
    },
    {
      "$type": "SoftwareIDM.ReportingModule.Models.Report, SoftwareIDM.ReportingModule",
      "Id": "96a7e51f-7a7b-4be0-8d2d-22801116bc7c",
      "Name": "Unique Indices Filtered",
      "UserId": null,
      "UserProfile": false,
      "Tags": null,
      "Roles": null,
      "CacheExpiration": "01:00:00",
      "Description": "Search Unique Indices for values, owners etc.\nKeys, Values, Roots assumed to be single list values.",
      "Parameters": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.TextReportParameter, SoftwareIDM.ReportingModule",
          "Name": "IndexName",
          "Description": "Index name, optional",
          "Required": false,
          "Validation": "",
          "DefaultValue": ""
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.TextReportParameter, SoftwareIDM.ReportingModule",
          "Name": "SiloName",
          "Description": "Silo name, optional",
          "Required": false,
          "Validation": "",
          "DefaultValue": ""
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.TextReportParameter, SoftwareIDM.ReportingModule",
          "Name": "KeyValue",
          "Description": "Search by owner key, optional",
          "Required": false,
          "Validation": "",
          "DefaultValue": ""
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.TextReportParameter, SoftwareIDM.ReportingModule",
          "Name": "IndexValue",
          "Description": "Search by indexed value, optional",
          "Required": false,
          "Validation": "",
          "DefaultValue": ""
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.TextReportParameter, SoftwareIDM.ReportingModule",
          "Name": "RootValue",
          "Description": "Search by index root value, optional",
          "Required": false,
          "Validation": "",
          "DefaultValue": ""
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.BoolReportParameter, SoftwareIDM.ReportingModule",
          "DefaultValue": "true",
          "Name": "IncludeDeleted",
          "Description": "Included deleted items, optional",
          "Required": false,
          "Validation": ""
        }
      ],
      "DataSets": [],
      "ReportSets": [
        {
        "$type": "SoftwareIDM.ReportingModule.Models.ReportData, SoftwareIDM.ReportingModule",
        "Name": "Indices",
        "Report": "45a0f3ea-6495-4ab9-b158-94cc8d6b62b5",
        "Aliases": null,
        "MapRule": "",
        "MemoRules": []
      }
    ],
      "Relations": [],
      "FieldProjections": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index Name",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Index Name"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Source Silo",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Source Silo"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Source ObjectType",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Source ObjectType"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Source Object",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Source Object"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Key",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Key"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index Value",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Index Value"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Root",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Root"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Reservation",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Reservation"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Deleted",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Deleted"
        },
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule",
          "Name": "Index",
          "RelationName": "",
          "RelationSide": null,
          "ValueRule": "Data.Index"
        }
      ],
      "Transformations": [
        {
          "$type": "SoftwareIDM.ReportingModule.Models.Transform, SoftwareIDM.ReportingModule",
          "FilterRule": "And(If(Memo(\"IndexName\"), Index Name == Memo(\"IndexName\"), true), If(Memo(\"SiloName\"), Source Silo == Memo(\"SiloName\"), true), If(Memo(\"KeyValue\"), Key == Memo(\"KeyValue\"), true), If(Memo(\"IndexValue\"), Index Value == Memo(\"IndexValue\"), true), If(Memo(\"RootValue\"), Root == Memo(\"RootValue\"), true), If(Memo(\"IncludeDeleted\"), true, Not(Deleted)))",
          "GroupingRule": "",
          "TransformRules": []
        }
      ],
      "Styles": [],
      "Sort": {
        "Field": "",
        "Direction": "Ascending"
      }
    }
  ],
  "Count": 3
}