
eedm.meal-plans.v10.0.meal-plans.json Maven / Gradle / Ivy
{
"title" : "Meal Plans",
"description" : "The meal plans offered by the institution.",
"type" : "object",
"properties" : {
"metadata" : {
"$ref" : "resource:/eedm/metadata.json"
},
"id" : {
"title" : "ID",
"description" : "The global identifier of the meal plan.",
"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 meal plan.",
"type" : "string",
"minLength" : 1
},
"description" : {
"title" : "Description",
"description" : "The description of the meal plan.",
"type" : "string"
},
"code" : {
"title" : "Code",
"description" : "The code of the meal plan.",
"type" : "string"
},
"studentResidentialCategories" : {
"title" : "Student Residential Categories",
"description" : "The residential categories of students to which the plan applies.",
"type" : "array",
"items" : {
"title" : "Student Residential Categories",
"description" : "The residential categories of students to which the plan applies.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Student Residential Categories.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/student-residential-categories/{id}",
"targetSchema" : {
"$ref" : "student-residential-categories.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"components" : {
"title" : "Components",
"description" : "The meal plan components.",
"type" : "array",
"items" : {
"type" : "object",
"properties" : {
"numberOfUnits" : {
"title" : "Number Of Units",
"description" : "The number of units included into the component of the meal plan.",
"minimum" : 0,
"type" : "number",
"format" : "positiveNumber"
},
"unitType" : {
"title" : "Unit Type",
"description" : "The type of the meal plan units.",
"enum" : [ "meal", "swipe", "mealPoint", "money" ],
"type" : "string"
},
"timePeriod" : {
"title" : "Time Period",
"description" : "The period of time for which the number of units is specified.",
"enum" : [ "day", "week", "month", "term", "year" ],
"type" : "string"
},
"restrictions" : {
"title" : "Restrictions",
"description" : "The restrictions for the component of the meal plan.",
"type" : "array",
"items" : {
"type" : "object",
"properties" : {
"mealTypes" : {
"title" : "Meal Types",
"description" : "The meal types to which the meal plan component is restricted.",
"type" : "array",
"items" : {
"title" : "Meal Types",
"description" : "The meal types to which the meal plan component is restricted.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Meal Types.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/meal-types/{id}",
"targetSchema" : {
"$ref" : "meal-types.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"diningFacilities" : {
"title" : "Dining Facilities",
"description" : "The dining facilities permitted in the meal plan.",
"type" : "array",
"items" : {
"title" : "Dining Facilities",
"description" : "The dining facilities permitted in the meal plan.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Dining Facilities.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/rooms/{id}",
"targetSchema" : {
"$ref" : "rooms.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"buildings" : {
"title" : "Buildings",
"description" : "The buildings permitted in the meal plan.",
"type" : "array",
"items" : {
"title" : "Buildings",
"description" : "The buildings permitted in the meal plan.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Buildings.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/buildings/{id}",
"targetSchema" : {
"$ref" : "buildings.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"sites" : {
"title" : "Sites",
"description" : "The sites permitted in the meal plan.",
"type" : "array",
"items" : {
"title" : "Sites",
"description" : "The sites permitted in the meal plan.",
"type" : "object",
"properties" : {
"id" : {
"title" : "ID",
"description" : "The global identifier for the Sites.",
"type" : "string",
"format" : "guid",
"pattern" : "^[a-f0-9]{8}(?:-[a-f0-9]{4}){3}-[a-f0-9]{12}$"
}
},
"links" : [ {
"rel" : "self",
"href" : "/sites/{id}",
"targetSchema" : {
"$ref" : "sites.json#"
}
} ],
"additionalProperties" : false,
"required" : [ "id" ]
}
},
"daysOfWeek" : {
"title" : "Days Of Week",
"description" : "The days of the week covered by the meal plan component.",
"type" : "array",
"items" : {
"enum" : [ "sunday", "monday", "tuesday", "wednesday", "thursday", "friday", "saturday" ],
"type" : "string"
}
},
"unitsPerPeriod" : {
"title" : "Units Per Period",
"description" : "The maximum number of units within a time period allowed for the meal plan component.",
"type" : "object",
"properties" : {
"numberOfUnits" : {
"title" : "Number of Units",
"description" : "The number of units allowed.",
"oneOf" : [ {
"type" : "number",
"minimum" : 0,
"format" : "positiveInteger"
}, {
"type" : "null"
} ]
},
"period" : {
"title" : "Period",
"description" : "The time period for the restriction.",
"oneOf" : [ {
"type" : "string",
"enum" : [ "day", "week", "month", "term", "year" ]
}, {
"type" : "string",
"maxLength" : 0
} ]
}
},
"additionalProperties" : false
}
},
"additionalProperties" : false
}
}
},
"additionalProperties" : false,
"required" : [ "numberOfUnits", "unitType", "timePeriod" ]
}
},
"startOn" : {
"title" : "Start On",
"description" : "The start date of the meal plan.",
"oneOf" : [ {
"type" : "string",
"format" : "date-time",
"pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?$"
}, {
"type" : "string",
"maxLength" : 0
} ]
},
"endOn" : {
"title" : "End On",
"description" : "The end date of the meal plan.",
"oneOf" : [ {
"type" : "string",
"format" : "date-time",
"pattern" : "^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[0-1]|0[1-9]|[1-2][0-9])T(2[0-3]|[0-1][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]+)?(Z|[+-](?:2[0-3]|[0-1][0-9]):[0-5][0-9])?$"
}, {
"type" : "string",
"maxLength" : 0
} ]
}
},
"required" : [ "id", "title" ],
"additionalProperties" : false
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy