Queen's University Belfast · Schema
Pure API Person
An academic professional, student, or other individual attached to the institution.
EducationHigher EducationUniversityResearchOpen AccessOAI-PMHUnited KingdomNorthern Ireland
Properties
| Name | Type | Description |
|---|---|---|
| pureId | integer | Pure database ID of the object, prefer using the UUID if it is present on the entity |
| uuid | string | UUID, this is the primary identity of the entity |
| createdBy | string | Username of creator |
| createdDate | string | Date and time of creation |
| modifiedBy | string | Username of the user that performed a modification |
| modifiedDate | string | Date and time of last modification |
| portalUrl | string | URL of the content on the Pure Portal |
| prettyUrlIdentifiers | array | All pretty URLs |
| previousUuids | array | UUIDs of other content items which have been merged into this content item (or similar) |
| version | string | Used to guard against conflicting updates. For new content this is null, and for existing content the current value. The property should never be modified by a client, except in the rare case where th |
| personExpertise | object | |
| startDateAsResearcher | string | Date that the person entered into the academic profession. |
| affiliationNote | string | Notes regarding affiliations of the person. |
| dateOfBirth | string | The person's date of birth. |
| employeeStartDate | string | Date of the persons first day of the institution. |
| employeeEndDate | string | Date of the persons last day of the institution. |
| externalPositions | array | positions held by the person, that are external to the institution |
| keywordGroups | array | Groups of Keyword associated with the person. |
| leavesOfAbsence | array | Leaves of absence had by the person. |
| links | array | Links associated with the person. |
| name | object | |
| names | array | Variant names of the person, Known aliases, ect. |
| nationality | object | |
| orcid | string | orcid of the person. |
| orcidAuthenticated | boolean | Authentication status of the orcid associated with the person. |
| cienciaId | string | Ciencia ID of the person. |
| cienciaIdAuthenticated | boolean | Authentication status of the Ciencia ID associated with the person. |
| honoraryStaffOrganizationAssociations | array | Organizations that the person is associated with under the title of 'Honorary Staff' |
| staffOrganizationAssociations | array | Organizations that the person is associated with as 'Staff' |
| studentOrganizationAssociations | array | Organizations that the person is associated with as a 'Student' |
| visitingScholarOrganizationAssociations | array | Organizations that the person is associated with as a 'Visiting Scholar |
| academicQualifications | array | Levels of academic qualifications that the person has achieved. |
| profilePhotos | array | Profile photos in the form of Image files. The maximum file size is 1mb |
| documents | array | Associated documents for the person |
| privateAddress | object | |
| professionalQualifications | array | The professional qualifications held by the person |
| selectedForProfileRefinementService | boolean | If the person has been profiled. |
| profileInformation | array | Information objects making up profiles made of the person |
| retirementDate | string | Date of retirement for the person |
| gender | object | |
| titles | array | Titles held by the person |
| visibility | object | |
| willingToTakePhdStudents | boolean | Boolean to define if the Person is willing to take on Phd Students. |
| willingToTakePhdStudentsDescription | string | Field to describe or list phd projects that the person will participate in. |
| identifiers | array | Identifiers related to the person |
| user | object | |
| customDefinedFields | object | |
| workflow | object | |
| mainResearchArea | object | |
| profiled | boolean | |
| systemName | string | The content system name |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/queens-university-belfast/main/json-schema/queens-university-belfast-person-schema.json",
"title": "Pure API Person",
"description": "An academic professional, student, or other individual attached to the institution.",
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"uuid": {
"type": "string",
"description": "UUID, this is the primary identity of the entity",
"format": "uuid",
"readOnly": true
},
"createdBy": {
"type": "string",
"description": "Username of creator",
"readOnly": true
},
"createdDate": {
"type": "string",
"description": "Date and time of creation",
"format": "date-time",
"readOnly": true
},
"modifiedBy": {
"type": "string",
"description": "Username of the user that performed a modification",
"readOnly": true
},
"modifiedDate": {
"type": "string",
"description": "Date and time of last modification",
"format": "date-time",
"readOnly": true
},
"portalUrl": {
"type": "string",
"description": "URL of the content on the Pure Portal",
"readOnly": true
},
"prettyUrlIdentifiers": {
"type": "array",
"description": "All pretty URLs",
"readOnly": true,
"items": {
"type": "string",
"description": "All pretty URLs",
"readOnly": true
}
},
"previousUuids": {
"type": "array",
"description": "UUIDs of other content items which have been merged into this content item (or similar)",
"readOnly": true,
"items": {
"type": "string",
"description": "UUIDs of other content items which have been merged into this content item (or similar)",
"readOnly": true
}
},
"version": {
"type": "string",
"description": "Used to guard against conflicting updates. For new content this is null, and for existing content the current value. The property should never be modified by a client, except in the rare case where the client wants to perform an update irrespective of if other clients have made updates in the meantime, also known as a \"dirty write\". A dirty write is performed by not including the property value or setting the property to null",
"nullable": true
},
"personExpertise": {
"$ref": "#/$defs/PersonExpertiseRef"
},
"startDateAsResearcher": {
"type": "string",
"description": "Date that the person entered into the academic profession.",
"format": "date",
"nullable": true
},
"affiliationNote": {
"type": "string",
"description": "Notes regarding affiliations of the person.",
"nullable": true
},
"dateOfBirth": {
"type": "string",
"description": "The person's date of birth.",
"format": "date",
"nullable": true
},
"employeeStartDate": {
"type": "string",
"description": "Date of the persons first day of the institution.",
"format": "date",
"nullable": true
},
"employeeEndDate": {
"type": "string",
"description": "Date of the persons last day of the institution.",
"format": "date",
"nullable": true
},
"externalPositions": {
"type": "array",
"description": "positions held by the person, that are external to the institution",
"nullable": true,
"items": {
"$ref": "#/$defs/ExternalAppointment"
}
},
"keywordGroups": {
"type": "array",
"description": "Groups of Keyword associated with the person.",
"nullable": true,
"items": {
"$ref": "#/$defs/KeywordGroup"
}
},
"leavesOfAbsence": {
"type": "array",
"description": "Leaves of absence had by the person.",
"nullable": true,
"items": {
"$ref": "#/$defs/PersonClassifiedLeaveOfAbsence"
}
},
"links": {
"type": "array",
"description": "Links associated with the person.",
"nullable": true,
"items": {
"$ref": "#/$defs/Link"
}
},
"name": {
"$ref": "#/$defs/Name"
},
"names": {
"type": "array",
"description": "Variant names of the person, Known aliases, ect.",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedName"
}
},
"nationality": {
"$ref": "#/$defs/ClassificationRef"
},
"orcid": {
"type": "string",
"description": "orcid of the person.",
"nullable": true
},
"orcidAuthenticated": {
"type": "boolean",
"description": "Authentication status of the orcid associated with the person.",
"readOnly": true
},
"cienciaId": {
"type": "string",
"description": "Ciencia ID of the person.",
"nullable": true
},
"cienciaIdAuthenticated": {
"type": "boolean",
"description": "Authentication status of the Ciencia ID associated with the person."
},
"honoraryStaffOrganizationAssociations": {
"type": "array",
"description": "Organizations that the person is associated with under the title of 'Honorary Staff'",
"nullable": true,
"items": {
"$ref": "#/$defs/HonoraryStaffOrganizationAssociation"
}
},
"staffOrganizationAssociations": {
"type": "array",
"description": "Organizations that the person is associated with as 'Staff'",
"nullable": true,
"items": {
"$ref": "#/$defs/StaffOrganizationAssociation"
}
},
"studentOrganizationAssociations": {
"type": "array",
"description": "Organizations that the person is associated with as a 'Student'",
"nullable": true,
"items": {
"$ref": "#/$defs/StudentOrganizationAssociation"
}
},
"visitingScholarOrganizationAssociations": {
"type": "array",
"description": "Organizations that the person is associated with as a 'Visiting Scholar",
"nullable": true,
"items": {
"$ref": "#/$defs/VisitingScholarOrganizationAssociation"
}
},
"academicQualifications": {
"type": "array",
"description": "Levels of academic qualifications that the person has achieved.",
"nullable": true,
"items": {
"$ref": "#/$defs/AcademicQualification"
}
},
"profilePhotos": {
"type": "array",
"description": "Profile photos in the form of Image files. The maximum file size is 1mb",
"nullable": true,
"items": {
"$ref": "#/$defs/ImageFile"
}
},
"documents": {
"type": "array",
"description": "Associated documents for the person",
"nullable": true,
"items": {
"$ref": "#/$defs/Document"
}
},
"privateAddress": {
"$ref": "#/$defs/Address"
},
"professionalQualifications": {
"type": "array",
"description": "The professional qualifications held by the person",
"nullable": true,
"items": {
"$ref": "#/$defs/ProfessionalQualification"
}
},
"selectedForProfileRefinementService": {
"type": "boolean",
"description": "If the person has been profiled."
},
"profileInformation": {
"type": "array",
"description": "Information objects making up profiles made of the person",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedFormattedLocalizedValue"
}
},
"retirementDate": {
"type": "string",
"description": "Date of retirement for the person",
"format": "date",
"nullable": true
},
"gender": {
"$ref": "#/$defs/ClassificationRef"
},
"titles": {
"type": "array",
"description": "Titles held by the person",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedLocalizedValue"
}
},
"visibility": {
"$ref": "#/$defs/Visibility"
},
"willingToTakePhdStudents": {
"type": "boolean",
"description": "Boolean to define if the Person is willing to take on Phd Students."
},
"willingToTakePhdStudentsDescription": {
"type": "string",
"description": "Field to describe or list phd projects that the person will participate in.",
"nullable": true
},
"identifiers": {
"type": "array",
"description": "Identifiers related to the person",
"nullable": true,
"items": {
"$ref": "#/$defs/Identifier"
}
},
"user": {
"$ref": "#/$defs/UserRef"
},
"customDefinedFields": {
"$ref": "#/$defs/CustomDefinedFields"
},
"workflow": {
"$ref": "#/$defs/Workflow"
},
"mainResearchArea": {
"$ref": "#/$defs/ClassificationRef"
},
"profiled": {
"type": "boolean"
},
"systemName": {
"type": "string",
"description": "The content system name",
"readOnly": true
}
},
"$defs": {
"PersonExpertiseRef": {
"required": [
"uuid"
],
"type": "object",
"description": "A reference to a person expertise",
"nullable": true,
"allOf": [
{
"$ref": "#/$defs/ContentRef"
}
]
},
"ContentRef": {
"required": [
"systemName",
"uuid"
],
"type": "object",
"properties": {
"uuid": {
"type": "string",
"description": "UUID of the referred content",
"format": "uuid"
},
"systemName": {
"type": "string"
}
},
"nullable": true,
"discriminator": {
"propertyName": "systemName",
"mapping": {
"AccessDefinition": "#/components/schemas/AccessDefinitionRef",
"Activity": "#/components/schemas/ActivityRef",
"Application": "#/components/schemas/ApplicationRef",
"AuthorCollaboration": "#/components/schemas/AuthorCollaborationRef",
"Award": "#/components/schemas/AwardRef",
"ClassificationScheme": "#/components/schemas/ClassificationSchemeRef",
"ConferenceSeries": "#/components/schemas/ConferenceSeriesRef",
"DataSet": "#/components/schemas/DataSetRef",
"Equipment": "#/components/schemas/EquipmentRef",
"Event": "#/components/schemas/EventRef",
"ExternalOrganization": "#/components/schemas/ExternalOrganizationRef",
"ExternalPerson": "#/components/schemas/ExternalPersonRef",
"Impact": "#/components/schemas/ImpactRef",
"Journal": "#/components/schemas/JournalRef",
"Organization": "#/components/schemas/OrganizationRef",
"Person": "#/components/schemas/PersonRef",
"Publisher": "#/components/schemas/PublisherRef",
"PressMedia": "#/components/schemas/PressMediaRef",
"Prize": "#/components/schemas/PrizeRef",
"Project": "#/components/schemas/ProjectRef",
"ResearchOutput": "#/components/schemas/ResearchOutputRef",
"StudentThesis": "#/components/schemas/StudentThesisRef",
"FundingOpportunity": "#/components/schemas/FundingOpportunityRef",
"EthicalReview": "#/components/schemas/EthicalReviewRef",
"ApplicationCluster": "#/components/schemas/ApplicationClusterRef",
"AwardCluster": "#/components/schemas/AwardClusterRef",
"User": "#/components/schemas/UserRef",
"ERA2018FieldOfResearch": "#/components/schemas/Anzsrc2008FieldOfResearchRef",
"UnitOfAssessmentREF2014": "#/components/schemas/Ref2014UnitOfAssessmentRef",
"UnitOfAssessmentREF2020": "#/components/schemas/Ref2020UnitOfAssessmentRef",
"ANZSRCTypeOfActivity": "#/components/schemas/Anzsrc2020TypeOfActivityRef",
"ANZSRCFieldOfResearch": "#/components/schemas/Anzsrc2020FieldOfResearchRef",
"ANZSRCSocioEconomicObjective": "#/components/schemas/Anzsrc2020SocioEconomicObjectiveRef",
"Semester": "#/components/schemas/SemesterRef",
"Education": "#/components/schemas/EducationRef",
"Course": "#/components/schemas/CourseRef",
"CurriculumVitae": "#/components/schemas/CurriculumVitaeRef",
"CustomDefinedFieldConfiguration": "#/components/schemas/CustomDefinedFieldConfigurationRef",
"KeywordGroupConfiguration": "#/components/schemas/KeywordGroupConfigurationRef",
"Review": "#/components/schemas/ReviewRef",
"GenericContentRef": "#/components/schemas/GenericContentRef",
"UserProfile": "#/components/schemas/UserProfileRef",
"Thesaurus": "#/components/schemas/ThesaurusRef",
"Concept": "#/components/schemas/ConceptRef",
"PersonExpertise": "#/components/schemas/PersonExpertiseRef",
"Contract": "#/components/schemas/ContractRef",
"Milestone": "#/components/schemas/MilestoneRef",
"Fingerprint": "#/components/schemas/FingerprintRef",
"Specialization": "#/components/schemas/SpecializationRef",
"StudentProject": "#/components/schemas/StudentProjectRef"
}
}
},
"ExternalAppointment": {
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"appointment": {
"$ref": "#/$defs/ClassificationRef"
},
"appointmentString": {
"$ref": "#/$defs/LocalizedString"
},
"period": {
"$ref": "#/$defs/CompoundDateRange"
},
"externalOrganization": {
"$ref": "#/$defs/ExternalOrganizationRef"
}
},
"description": "An appointment held in an external organizational unit"
},
"ClassificationRef": {
"required": [
"uri"
],
"type": "object",
"properties": {
"uri": {
"type": "string",
"description": "Classification URI of the referred classification"
},
"term": {
"$ref": "#/$defs/SystemLocalizedString"
}
},
"description": "A reference to a classification value",
"nullable": true
},
"SystemLocalizedString": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "A set of localized string values each for a specific UI locale.",
"nullable": true,
"example": "{\"en_GB\":\"Some text\"}"
},
"description": "A set of localized string values each for a specific UI locale.",
"nullable": true,
"example": {
"en_GB": "Some text"
}
},
"LocalizedString": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "A set of string values, one for each submission locale. Note: invalid locale values will be ignored.",
"nullable": true,
"example": "{\"en_GB\":\"Some text\"}"
},
"description": "A set of string values, one for each submission locale. Note: invalid locale values will be ignored.",
"nullable": true,
"example": {
"en_GB": "Some text"
}
},
"CompoundDateRange": {
"type": "object",
"properties": {
"startDate": {
"$ref": "#/$defs/CompoundDate"
},
"endDate": {
"$ref": "#/$defs/CompoundDate"
}
},
"description": "A date range of that can be defined by only year, year and month or a full date"
},
"CompoundDate": {
"required": [
"year"
],
"type": "object",
"properties": {
"year": {
"maximum": 4000,
"minimum": 0,
"type": "integer",
"format": "int32"
},
"month": {
"maximum": 12,
"minimum": 1,
"type": "integer",
"format": "int32",
"nullable": true
},
"day": {
"maximum": 31,
"minimum": 1,
"type": "integer",
"format": "int32",
"nullable": true
}
},
"description": "A date that can be defined by only year, year and month or a full date",
"nullable": true
},
"ExternalOrganizationRef": {
"required": [
"uuid"
],
"type": "object",
"description": "A reference to an organization external to the institution",
"nullable": true,
"allOf": [
{
"$ref": "#/$defs/ContentRef"
}
]
},
"KeywordGroup": {
"required": [
"logicalName",
"typeDiscriminator"
],
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"logicalName": {
"type": "string",
"description": "Unique name of the configuration that specifies this keyword group"
},
"name": {
"$ref": "#/$defs/LocalizedString"
},
"typeDiscriminator": {
"type": "string"
}
},
"discriminator": {
"propertyName": "typeDiscriminator",
"mapping": {
"ClassificationsKeywordGroup": "#/components/schemas/ClassificationsKeywordGroup",
"FreeKeywordsKeywordGroup": "#/components/schemas/FreeKeywordsKeywordGroup",
"FullKeywordGroup": "#/components/schemas/FullKeywordGroup"
}
}
},
"PersonClassifiedLeaveOfAbsence": {
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"classification": {
"$ref": "#/$defs/ClassificationRef"
},
"period": {
"$ref": "#/$defs/DateRange"
}
},
"description": "Leave of absence held by a person"
},
"DateRange": {
"type": "object",
"properties": {
"startDate": {
"type": "string",
"description": "Start date",
"format": "date",
"nullable": true
},
"endDate": {
"type": "string",
"description": "End date",
"format": "date",
"nullable": true
}
},
"description": "A date range"
},
"Link": {
"required": [
"url"
],
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"url": {
"type": "string",
"description": "The URL (Uniform Resource Locator) of the link"
},
"alias": {
"type": "string",
"description": "A user-friendly text to show instead of the URL",
"nullable": true
},
"description": {
"$ref": "#/$defs/LocalizedString"
},
"linkType": {
"$ref": "#/$defs/ClassificationRef"
}
},
"description": "A hyperlink describing a location on the web."
},
"Name": {
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
}
},
"description": "A name describing a person, made up of given- and family name"
},
"ClassifiedName": {
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"name": {
"$ref": "#/$defs/Name"
},
"type": {
"$ref": "#/$defs/ClassificationRef"
}
},
"description": "A classified name"
},
"HonoraryStaffOrganizationAssociation": {
"type": "object",
"description": "A relation describing the association between honorary staff and organization",
"allOf": [
{
"$ref": "#/$defs/PersonOrganizationAssociation"
},
{
"type": "object",
"properties": {
"jobDescription": {
"$ref": "#/$defs/LocalizedString"
},
"jobTitle": {
"$ref": "#/$defs/ClassificationRef"
}
}
}
]
},
"PersonOrganizationAssociation": {
"required": [
"typeDiscriminator"
],
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"addresses": {
"type": "array",
"description": "List of physical addresses.",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedAddress"
}
},
"affiliationId": {
"type": "string",
"description": "Affiliation identification. This could be a student ID or a staff ID.",
"nullable": true
},
"employmentType": {
"$ref": "#/$defs/ClassificationRef"
},
"organization": {
"$ref": "#/$defs/OrganizationRef"
},
"emails": {
"type": "array",
"description": "List of emails.",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedValue"
}
},
"webAddresses": {
"type": "array",
"description": "List of web addresses.",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedLocalizedValue"
}
},
"phoneNumbers": {
"type": "array",
"description": "Phone numbers associated with the organization association.",
"nullable": true,
"items": {
"$ref": "#/$defs/ClassifiedValue"
}
},
"period": {
"$ref": "#/$defs/DateRange"
},
"supervisorAssociations": {
"type": "array",
"description": "List of associations to persons who supervise this person.",
"nullable": true,
"items": {
"$ref": "#/$defs/PersonSupervisorAssociation"
}
},
"keywordGroups": {
"type": "array",
"description": "List of keyword groups.",
"nullable": true,
"items": {
"$ref": "#/$defs/KeywordGroup"
}
},
"primaryAssociation": {
"type": "boolean",
"description": "A boolean value indicating whether this is the primary association or not. Only one of the associations from a person to an organization will be primary."
},
"typeDiscriminator": {
"type": "string"
}
},
"nullable": true,
"discriminator": {
"propertyName": "typeDiscriminator",
"mapping": {
"HonoraryStaffOrganizationAssociation": "#/components/schemas/HonoraryStaffOrganizationAssociation",
"StaffOrganizationAssociation": "#/components/schemas/StaffOrganizationAssociation",
"StudentOrganizationAssociation": "#/components/schemas/StudentOrganizationAssociation",
"VisitingScholarOrganizationAssociation": "#/components/schemas/VisitingScholarOrganizationAssociation"
}
}
},
"ClassifiedAddress": {
"required": [
"addressType"
],
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"addressType": {
"$ref": "#/$defs/ClassificationRef"
},
"addressLines": {
"type": "string",
"description": "Address for personal residence",
"nullable": true
},
"street": {
"type": "string",
"description": "The name of the street",
"nullable": true
},
"building": {
"type": "string",
"description": "The name of the building",
"nullable": true
},
"postalcode": {
"type": "string",
"description": "The postal code of the city",
"nullable": true
},
"city": {
"type": "string",
"description": "The name of the city",
"nullable": true
},
"country": {
"$ref": "#/$defs/ClassificationRef"
},
"subdivision": {
"$ref": "#/$defs/ClassificationRef"
},
"geoLocation": {
"$ref": "#/$defs/GeoLocation"
}
},
"description": "A physical address"
},
"GeoLocation": {
"type": "object",
"properties": {
"point": {
"type": "string",
"description": "Location expressed as a point",
"nullable": true
},
"polygon": {
"type": "string",
"description": "Location expressed as a polygon",
"nullable": true
},
"calculatedPoint": {
"type": "string",
"description": "Used to determine whether or not we may update the point. An end-user has not entered a point manually if the value of the calculated point is the same as point",
"readOnly": true
}
},
"description": "Geographical location",
"nullable": true
},
"OrganizationRef": {
"required": [
"uuid"
],
"type": "object",
"description": "A reference to an organization in the institution",
"nullable": true,
"allOf": [
{
"$ref": "#/$defs/ContentRef"
}
]
},
"ClassifiedValue": {
"required": [
"type",
"value"
],
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"value": {
"type": "string",
"description": "Classified value"
},
"type": {
"$ref": "#/$defs/ClassificationRef"
}
},
"description": "A classified value"
},
"ClassifiedLocalizedValue": {
"required": [
"type"
],
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"value": {
"$ref": "#/$defs/LocalizedString"
},
"type": {
"$ref": "#/$defs/ClassificationRef"
}
},
"description": "A classified localized value"
},
"PersonSupervisorAssociation": {
"type": "object",
"properties": {
"pureId": {
"type": "integer",
"description": "Pure database ID of the object, prefer using the UUID if it is present on the entity",
"format": "int64",
"readOnly": true
},
"period": {
"$ref": "#/$defs/DateRange"
},
"supervisionPercentage": {
"maximum": 100,
"minimum": 0,
"type": "integer",
"description": "Percentage for which the Supervisor is responsible for the total supervision",
"format": "int32"
},
"supervisorRole": {
"$ref": "#/$defs/ClassificationRef"
},
"supervisor": {
"$ref": "#/$defs/InternalOrExternalSupervisor"
}
},
"description": "The association data of a person and their supervisor"
},
"InternalOrExternalSupervisor": {
"type": "object",
"properties": {
"externalSupervisor": {
"$ref": "#/$defs/ExternalPersonRef"
},
"supervisor": {
"$ref": "#/$defs/PersonRef"
}
},
"description": "A supervisor, either internal or external, use as mutually exclusive"
},
"StaffOrganizationAssociation": {
"type": "object",
"description": "A relation describing the association between Staff and organization",
"allOf": [
{
"$ref": "#/$defs/PersonOrganizationAssociation"
},
{
"type": "object",
"properties": {
"contractType": {
"$ref": "#/$defs/ClassificationRef"
},
"fte": {
"type": "number",
"description": "The FTE (Full-Time Equivalent). A decimal number ranging between 0 (0% equivalent of full time) and 1 (100% equivalent of full time).",
"format": "double",
"nullable": true
},
"jobDescription": {
"$ref": "#/$defs/LocalizedString"
},
"jobTitle": {
"$ref": "#/$defs/ClassificationRef"
},
"staffType": {
"$ref": "#/$defs/ClassificationRef"
}
}
}
]
},
"StudentOrganizationAssociation": {
"type": "object",
"description": "A relation describing the association between student and organization",
"allOf": [
{
"$ref": "#/$defs/PersonOrganizationAssociation"
},
{
"type": "object",
"properties": {
"awardDate": {
"type": "string",
"description": "The date when the student received an award.",
"format": "date",
"nullable": true
},
"awardGained": {
"type": "string",
"description": "Description of what award the student gained.",
"nullable": true
},
"fte": {
"type": "number",
"description": "The FTE (Full-Time Equivalent). A decimal number ranging between 0 (0% equivalent of full time) and 1 (100% equivalent of full time).",
"format": "double",
"nullable": true
},
"programme": {
"type": "string",
"description": "The name or title of a program often consists of the degree (e.g., BS) and the discipline or field of study (e.g., Business Administration).",
"nullable": true
},
"projectTitle": {
"$ref": "#/$defs/LocalizedString"
},
"expectedStudyDuration": {
"type": "integer",
"description": "The expected study duration.",
"format": "int32",
"nullable": true
},
"minimumStudyDuration": {
"type": "integer",
"description": "The minimum study duration.",
"format": "int32",
"nullable": true
},
"maximumStudyDuration": {
"type": "integer",
"description": "The maximum study duration.",
"format": "int32",
"nullable": true
},
"programYear": {
"type": "string",
"description": "The program year",
"nullable": true
},
"initialSubmissionDate": {
"type": "string",
"description": "The program year",
"format": "date",
"nullable": true
},
"getExpectedEndDate": {
"type": "string",
"description": "Expected end date",
"format": "date",
"nullable": true
},
"startYear": {
"type": "string",
# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/queens-university-belfast/refs/heads/main/json-schema/queens-university-belfast-person-schema.json