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

eedm.mapping-settings.v1.0.0.mapping-settings.json Maven / Gradle / Ivy

{
  "title" : "Mapping Settings",
  "description" : "The details for mappings between Ethos enumerated values and corresponding source values.",
  "version" : "1.0.0",
  "type" : "object",
  "properties" : {
    "metadata" : {
      "$ref" : "resource:/eedm/metadata.json"
    },
    "id" : {
      "title" : "ID",
      "description" : "The global identifier of the mapping setting.",
      "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 mapping setting.",
      "type" : "string",
      "minLength" : 1
    },
    "ethos" : {
      "title" : "Ethos",
      "description" : "The Ethos information to be mapped.",
      "type" : "object",
      "properties" : {
        "resources" : {
          "title" : "Resources",
          "description" : "The Ethos resources and property names to be mapped.",
          "type" : "array",
          "items" : {
            "type" : "object",
            "properties" : {
              "resource" : {
                "title" : "Resource",
                "description" : "The Ethos schema name for the resource.",
                "type" : "string",
                "minLength" : 1
              },
              "propertyName" : {
                "title" : "Property Name",
                "description" : "The Ethos property name for which the enumerations are defined.",
                "type" : "string",
                "minLength" : 1
              }
            },
            "additionalProperties" : false,
            "required" : [ "resource", "propertyName" ]
          }
        },
        "enumeration" : {
          "title" : "Enumeration",
          "description" : "The Ethos enumeration.",
          "type" : "string"
        }
      },
      "additionalProperties" : false,
      "required" : [ "resources" ]
    },
    "source" : {
      "title" : "Source",
      "description" : "The source values for the mapping.",
      "oneOf" : [ {
        "type" : "object",
        "properties" : {
          "title" : {
            "title" : "Title",
            "description" : "The source title for the mapping.",
            "type" : "string"
          },
          "preference" : {
            "title" : "Preference",
            "description" : "An indicator as to whether the value should be used as the default for the enumeration.",
            "oneOf" : [ {
              "type" : "string",
              "enum" : [ "preferred" ]
            }, {
              "type" : "string",
              "maxLength" : 0
            } ]
          },
          "value" : {
            "title" : "Value",
            "description" : "The source value for the mapping.",
            "type" : "string",
            "minLength" : 1
          }
        },
        "additionalProperties" : false,
        "required" : [ "value" ]
      }, {
        "type" : "object",
        "maxProperties" : 0
      } ]
    }
  },
  "required" : [ "id", "title", "ethos" ],
  "additionalProperties" : false,
  "links" : [ {
    "rel" : "filter",
    "encType" : "application/x-www-form-urlencoded",
    "method" : "GET",
    "href" : "/mapping-settings?criteria={\"ethos\":{\"resources\":[{\"resource\":{$resource}}]}}",
    "title" : "Ethos Resource",
    "description" : "The Ethos schema name for the resource.",
    "schema" : {
      "type" : "object",
      "properties" : {
        "ethos" : {
          "type" : "object",
          "properties" : {
            "resources" : {
              "type" : "array",
              "items" : {
                "type" : "object",
                "properties" : {
                  "resource" : {
                    "type" : "string"
                  }
                }
              }
            }
          }
        }
      }
    },
    "targetSchema" : {
      "$ref" : "mapping-settings.json#"
    }
  }, {
    "rel" : "filter",
    "encType" : "application/x-www-form-urlencoded",
    "method" : "GET",
    "href" : "/mapping-settings?criteria={\"ethos\":{\"resources\":[{\"propertyName\":{$propertyName}}]}}",
    "title" : "Ethos Property Name",
    "description" : "The Ethos property name for which the enumerations are defined.",
    "schema" : {
      "type" : "object",
      "properties" : {
        "ethos" : {
          "type" : "object",
          "properties" : {
            "resources" : {
              "type" : "array",
              "items" : {
                "type" : "object",
                "properties" : {
                  "propertyName" : {
                    "type" : "string"
                  }
                }
              }
            }
          }
        }
      }
    },
    "targetSchema" : {
      "$ref" : "mapping-settings.json#"
    }
  } ]
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy