© 2018 Capita Business Services Ltd. All rights reserved.

Capita Education Software Solutions is a trading name of Capita Business Services Ltd. Our Registered office is 30 Berners Street, London, W1T 3LR and our registered number is 02299747. Further information about Capita plc can be found in our legal statement.

Pastoral Groups Information Domain Overview

The Pastoral Groups information domain is critical for partners and is split into a number of sub domains.  Each sub domain effectively requires a separate call.

Supervisions

This domain contains pastoral group supervisions (who teaches them) and is accessed via the security domain School.Group.Supervision   This domain is read only.

Sample Call: <Stem>/PastoralGroup/V3/PastoralGroupSupervisions

Example Output

{
  "@odata.context": "https://sest00apm01.azure-api.net/ssst06/PastoralGroup/V3/$metadata#PastoralGroupSupervisions",
  "value": [
    {
      "@odata.type": "#ESS.PastoralGroup.YearGroupSupervision",
      "ExternalID": "43f162e3-9aed-4555-874c-44c5a3c266a2",
      "PastoralGroupType": "YearGroup",
      "StartDate": "2018-09-17T00:00:00Z",
      "EndDate": null,
      "Supervisor": {
        "ExternalID": "401b9970-06b9-4eb6-b88d-1d8919b343c2",
        "Type": "Staff.Identifier"
      },
      "PastoralGroup": {
        "ExternalID": "1df100b3-c3a0-482b-aac7-e0898a2640f1",
        "Type": "PastoralGroup.Definition.YearGroup"
      },
      "SupervisorRole": {
        "ExternalID": "f3d1d4f7-c356-4707-a2e1-c6b153a8ef8c",
        "Type": "PastoralGroup.Lookup.YearGroupSupervisorRole"
      }
    },

Lookups

This domain contains pastoral group lookups, including the various roles for group supervisors above and is accessed via the security domain PastoralGroup.Lookup​​​​​​. This domain is read only.

Sample Call: <Stem>/PastoralGroup/V3/PastoralGroupLookups

Example Output

{
  "@odata.context": "https://sest00apm01.azure-api.net/ssst06/PastoralGroup/V3/$metadata#PastoralGroupLookups",
  "value": [
    {
      "@odata.type": "#ESS.PastoralGroup.PrimaryClassSupervisorRole",
      "ExternalID": "ef4cc7a8-6b9f-48c1-b108-1357ac951106",
      "LookupType": "PrimaryClassSupervisorRole",
      "Code": "BILN",
      "Description": "Bilingual Support Assistant",
      "DisplayOrder": 7,
      "IsVisible": true,
      "ResourceProvider": {
        "ExternalID": "e38f15fa-2570-4081-8fec-c7279e50df4e",
        "Type": "EducationalEstablishment.Lookup.StatutoryBody"
      }
    },

Definition of Domain

<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="4.0" xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx">
  <edmx:DataServices>
    <Schema Namespace="ESS.PastoralGroup" xmlns="http://docs.oasis-open.org/odata/ns/edm">
      <EntityType Name="PastoralGroupDefinition">
        <Key>
          <PropertyRef Name="ExternalID" />
          <PropertyRef Name="PastoralGroupType" />
        </Key>
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="PastoralGroupType" Type="ESS.PastoralGroup.PastoralGroupType" Nullable="false" />
        <Property Name="ShortName" Type="Edm.String" />
        <Property Name="FullName" Type="Edm.String" />
        <Property Name="DisplayOrder" Type="Edm.Int32" Nullable="false" />
        <NavigationProperty Name="EffectiveDates" Type="Collection(ESS.PastoralGroup.EffectiveDate)" />
        <NavigationProperty Name="AssociatedGroups" Type="Collection(ESS.PastoralGroup.AssociatedPastoralGroup)" />
      </EntityType>
      <EntityType Name="EffectiveDate">
        <Key>
          <PropertyRef Name="ExternalID" />
        </Key>
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="StartDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <Property Name="EndDate" Type="Edm.DateTimeOffset" />
      </EntityType>
      <EntityType Name="AssociatedPastoralGroup">
        <Key>
          <PropertyRef Name="ExternalID" />
        </Key>
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="StartDate" Type="Edm.DateTimeOffset" />
        <Property Name="EndDate" Type="Edm.DateTimeOffset" />
        <Property Name="AssociationType" Type="Edm.String" />
        <Property Name="PastoralGroup" Type="ESS.PastoralGroup.PastoralGroupReference" />
      </EntityType>
      <EntityType Name="PastoralGroupSupervision">
        <Key>
          <PropertyRef Name="ExternalID" />
          <PropertyRef Name="PastoralGroupType" />
        </Key>
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="PastoralGroupType" Type="ESS.PastoralGroup.PastoralGroupType" Nullable="false" />
        <Property Name="Supervisor" Type="ESS.PastoralGroup.Supervisor" />
        <Property Name="PastoralGroup" Type="ESS.PastoralGroup.PastoralGroupReference" />
        <Property Name="SupervisorRole" Type="ESS.PastoralGroup.SupervisorRoleReference" />
        <Property Name="StartDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <Property Name="EndDate" Type="Edm.DateTimeOffset" />
      </EntityType>
      <EntityType Name="PastoralGroupLookup">
        <Key>
          <PropertyRef Name="ExternalID" />
          <PropertyRef Name="LookupType" />
        </Key>
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="LookupType" Type="ESS.PastoralGroup.LookupType" Nullable="false" />
        <Property Name="ResourceProvider" Type="ESS.PastoralGroup.ResourceProviderRef" />
        <Property Name="Code" Type="Edm.String" />
        <Property Name="Description" Type="Edm.String" />
        <Property Name="DisplayOrder" Type="Edm.Int32" Nullable="false" />
        <Property Name="IsVisible" Type="Edm.Boolean" />
      </EntityType>
      <EntityType Name="PastoralGroupMembership">
        <Key>
          <PropertyRef Name="ExternalID" />
          <PropertyRef Name="PastoralGroupType" />
        </Key>
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="PastoralGroupType" Type="ESS.PastoralGroup.PastoralGroupType" Nullable="false" />
        <Property Name="Member" Type="ESS.PastoralGroup.Member" />
        <Property Name="PastoralGroup" Type="ESS.PastoralGroup.PastoralGroup" />
        <Property Name="StartDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <Property Name="EndDate" Type="Edm.DateTimeOffset" />
      </EntityType>
      <ComplexType Name="PastoralGroupReference">
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="Type" Type="Edm.String" />
      </ComplexType>
      <EntityType Name="SchoolNCYearDefinition" BaseType="ESS.PastoralGroup.PastoralGroupDefinition" />
      <EntityType Name="TierDefinition" BaseType="ESS.PastoralGroup.PastoralGroupDefinition" />
      <EntityType Name="HouseDefinition" BaseType="ESS.PastoralGroup.PastoralGroupDefinition" />
      <EntityType Name="PrimaryClassDefinition" BaseType="ESS.PastoralGroup.PastoralGroupDefinition" />
      <EntityType Name="YearGroupDefinition" BaseType="ESS.PastoralGroup.PastoralGroupDefinition" />
      <ComplexType Name="Supervisor">
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="Type" Type="Edm.String" />
      </ComplexType>
      <ComplexType Name="SupervisorRoleReference">
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="Type" Type="Edm.String" />
      </ComplexType>
      <EntityType Name="HouseSupervision" BaseType="ESS.PastoralGroup.PastoralGroupSupervision" />
      <EntityType Name="PrimaryClassSupervision" BaseType="ESS.PastoralGroup.PastoralGroupSupervision" />
      <EntityType Name="SchoolNCYearSupervision" BaseType="ESS.PastoralGroup.PastoralGroupSupervision" />
      <EntityType Name="TierSupervision" BaseType="ESS.PastoralGroup.PastoralGroupSupervision" />
      <EntityType Name="YearGroupSupervision" BaseType="ESS.PastoralGroup.PastoralGroupSupervision" />
      <ComplexType Name="ResourceProviderRef">
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="Type" Type="Edm.String" />
      </ComplexType>
      <EntityType Name="TierSupervisorRole" BaseType="ESS.PastoralGroup.PastoralGroupLookup" />
      <EntityType Name="HouseSupervisorRole" BaseType="ESS.PastoralGroup.PastoralGroupLookup" />
      <EntityType Name="YearGroupSupervisorRole" BaseType="ESS.PastoralGroup.PastoralGroupLookup" />
      <EntityType Name="PrimaryClassSupervisorRole" BaseType="ESS.PastoralGroup.PastoralGroupLookup" />
      <ComplexType Name="Member">
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="Type" Type="Edm.String" />
      </ComplexType>
      <ComplexType Name="PastoralGroup">
        <Property Name="ExternalID" Type="Edm.Guid" Nullable="false" />
        <Property Name="Type" Type="Edm.String" />
      </ComplexType>
      <EntityType Name="LearnerSchoolNCYearGroupMembership" BaseType="ESS.PastoralGroup.PastoralGroupMembership" />
      <EntityType Name="LearnerTierMembership" BaseType="ESS.PastoralGroup.PastoralGroupMembership" />
      <EntityType Name="LearnerHouseMembership" BaseType="ESS.PastoralGroup.PastoralGroupMembership" />
      <EntityType Name="LearnerPrimaryClassMembership" BaseType="ESS.PastoralGroup.PastoralGroupMembership" />
      <EntityType Name="LearnerYearGroupMembership" BaseType="ESS.PastoralGroup.PastoralGroupMembership" />
      <EnumType Name="PastoralGroupType">
        <Member Name="YearGroup" Value="0" />
        <Member Name="PrimaryClass" Value="1" />
        <Member Name="SchoolNCYear" Value="2" />
        <Member Name="House" Value="3" />
        <Member Name="Tier" Value="4" />
      </EnumType>
      <EnumType Name="LookupType">
        <Member Name="YearGroupSupervisorRole" Value="0" />
        <Member Name="PrimaryClassSupervisorRole" Value="1" />
        <Member Name="HouseSupervisorRole" Value="2" />
        <Member Name="TierSupervisorRole" Value="3" />
      </EnumType>
      <EntityContainer Name="Container">
        <EntitySet Name="PastoralGroupDefinitions" EntityType="ESS.PastoralGroup.PastoralGroupDefinition" />
        <EntitySet Name="PastoralGroupSupervisions" EntityType="ESS.PastoralGroup.PastoralGroupSupervision" />
        <EntitySet Name="PastoralGroupLookups" EntityType="ESS.PastoralGroup.PastoralGroupLookup" />
        <EntitySet Name="PastoralGroupMemberships" EntityType="ESS.PastoralGroup.PastoralGroupMembership" />
      </EntityContainer>
    </Schema>
    <Schema Namespace="ESS" xmlns="http://docs.oasis-open.org/odata/ns/edm">
      <Function Name="Changes" IsBound="true">
        <Parameter Name="bindingParameter" Type="Collection(ESS.PastoralGroup.PastoralGroupDefinition)" />
        <Parameter Name="startDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <ReturnType Type="Collection(ESS.PastoralGroup.PastoralGroupDefinition)" />
      </Function>
      <Function Name="Changes" IsBound="true">
        <Parameter Name="bindingParameter" Type="Collection(ESS.PastoralGroup.PastoralGroupSupervision)" />
        <Parameter Name="startDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <ReturnType Type="Collection(ESS.PastoralGroup.PastoralGroupSupervision)" />
      </Function>
      <Function Name="Changes" IsBound="true">
        <Parameter Name="bindingParameter" Type="Collection(ESS.PastoralGroup.PastoralGroupLookup)" />
        <Parameter Name="startDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <ReturnType Type="Collection(ESS.PastoralGroup.PastoralGroupLookup)" />
      </Function>
    </Schema>
    <Schema Namespace="ChangeTracking" xmlns="http://docs.oasis-open.org/odata/ns/edm">
      <Function Name="GetChanges" IsBound="true">
        <Parameter Name="bindingParameter" Type="Collection(ESS.PastoralGroup.PastoralGroupMembership)" />
        <Parameter Name="startDate" Type="Edm.DateTimeOffset" Nullable="false" />
        <Parameter Name="endDate" Type="Edm.DateTimeOffset" />
        <ReturnType Type="Collection(ESS.PastoralGroup.PastoralGroupMembership)" />
      </Function>
    </Schema>
  </edmx:DataServices>
</edmx:Edmx>

 

Sample classes for Serialization

using Microsoft.VisualBasic.CompilerServices;
using System;
using System.Collections.Generic;
using System.Text;

namespace TISIMS8DataStructureExamples
{
    public class TPastoralGroupSupervisions
    {
        public Guid ExternalID;
        public string PastoralGroupType;
        public Nullable<DateTime> StartDate;
        public Nullable<DateTime> EndDate;
        public TSupervisor Supervisor;
        public TPastoralGroup PastoralGroup;
        public TSupervisorRole SupervisorRole;

    }
    public class TPastoralGroupType
    {
        public Guid ExternalID;
        public string Type;
    }
    public class TPastoralGroup
    {
        public Guid ExternalID;
        public string Type;
    }
    public class TSupervisor
    {
        public Guid ExternalID;
        public string Type;
    }
    public class TSupervisorRole
    {
        public Guid ExternalID;
        public string Type;
    }
    public class TPastoralGroupDefinition
    {
        public Guid ExternalID;
        public TPastoralGroupType PastoralGroupType;
        public string ShortName;
        public string FullName;
        public Nullable<int> DisplayOrder;
        public List<TEffectiveDate> EffectiveDates;
        public List<TAssociatedPastoralGroup> AssociatedGroups;

    }
    public class TAssociatedPastoralGroup
    {
        public Guid ExternalID;
        public Nullable<DateTime> StartDate;
        public Nullable<DateTime> EndDate;
        public string AssociationType;
        public TPastoralGroupReference PastoralGroupReference;
    }
    public class TPastoralGroupReference
    {
        public Guid ExternalID;
        public string Type;
    }
    public class TEffectiveDate
    {
        public Guid ExternalID;
        public Nullable<DateTime> StartDate;
        public Nullable<DateTime> EndDate;
    }
    public class TPastoralGroupLookups
    {
        public Guid ExternalID;
        public string LookUpType;
        public string Code;
        public string Description;
        public Nullable<int> DisplayOrder;
        public bool IsVisible;
        public TResourceProvider ResourceProvider;


    }
    public class TResourceProvider
    {
        public Guid ExternalID;
        public string Type;
    }
}