All Downloads are FREE. Search and download functionalities are using the official Maven repository.

eedm.contribution-calculation-rules.v8.0.contribution-calculation-rules.json Maven / Gradle / Ivy

{
  "title" : "Contribution Calculation Rules",
  "description" : "Rules used in calculating contributions.",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "The global identifier of the contribution calculation rule.",
      "type" : "string",
      "format" : "guid",
      "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
    },
    "title" : {
      "title" : "Title",
      "description" : "The full name of the contribution calculation rule.",
      "type" : "string",
      "minLength" : 1
    },
    "description" : {
      "title" : "Description",
      "description" : "The description of the contribution calculation rule.",
      "type" : "string"
    },
    "contributionTypes" : {
      "title" : "Contribution Type",
      "description" : "The types of contribution that are applicable to the calculation rule. (eg: gift, pledge, recurringGift, etc)",
      "type" : "array",
      "items" : {
        "enum" : [ "gift", "pledge", "pledgePayment", "recurringGift", "matchingGift", "expectedBequest", "bequestPayment", "dues" ],
        "type" : "string"
      }
    },
    "creditTypes" : {
      "title" : "Credit Types",
      "description" : "The types of credit that are applicable to the calculation rule. (eg: legal, recognition, etc.)",
      "type" : "array",
      "items" : {
        "enum" : [ "legal", "recognition", "match", "soft", "other" ],
        "type" : "string"
      }
    },
    "categoryInclusion" : {
      "title" : "Category Inclusion",
      "description" : "An indication if the specified categories are included or excluded in the calculation rule.",
      "enum" : [ "include", "exclude" ],
      "type" : "string"
    },
    "categories" : {
      "title" : "Categories",
      "description" : "Contribution categories to be included or excluded in the calculation rule.",
      "type" : "array",
      "items" : {
        "title" : "Categories",
        "description" : "Contribution categories to be included or excluded in the calculation rule.",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Categories.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/contribution-categories/{id}",
          "targetSchema" : {
            "$ref" : "contribution-categories.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    },
    "categoryGroupInclusion" : {
      "title" : "Category Group Inclusion",
      "description" : "An indication if the specified category groups are included or excluded in the calculation rule.",
      "enum" : [ "include", "exclude" ],
      "type" : "string"
    },
    "categoryGroups" : {
      "title" : "Category Groups",
      "description" : "Contribution category groups to be included or excluded in the calculation rule.",
      "type" : "array",
      "items" : {
        "title" : "Category Groups",
        "description" : "Contribution category groups to be included or excluded in the calculation rule.",
        "type" : "object",
        "properties" : {
          "id" : {
            "title" : "ID",
            "description" : "The global identifier for the Category Groups.",
            "type" : "string",
            "format" : "guid",
            "pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
          }
        },
        "links" : [ {
          "rel" : "self",
          "href" : "/contribution-category-groups/{id}",
          "targetSchema" : {
            "$ref" : "contribution-category-groups.json#"
          }
        } ],
        "additionalProperties" : false,
        "required" : [ "id" ]
      }
    }
  },
  "required" : [ "id", "title" ],
  "additionalProperties" : false
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy