You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 37 Next »

Intro

This document compares OSIDs to Kuali Student Services in the domains pertinent to Kuali Student. The purpose of this comparison is to inform the mapping between these two service frameworks. 

Legend
straight forward feature mapping
feature mapping through orchestration or other OBA
questionable feature or mapping design
missing feature

Curriculum

ModelFeatureKSOSIDComments
canonical courses CourseService.Courseosid.course.Course 
 campusCourseService.Course.CampusLocationsosid.course.Course.CourseCampusRecord 
 codeCourseService.Course.Codeosid.course.Course.Number 
 code management

CourseService.Course.suffix

CourseService.Course.level

 CourseService.Course.SubjectArea

osid.course.Course.CourseCodeRecord

OSIDs can assign more than one "level" to a Course as defined by its GradeSystem.
 cross listed coursesCourseService.Course.CrossListingsosid.course.Course.CourseCrossListingRecord 
 effective dating

CourseService.Course.EffectiveDate

CourseService.Course.ExpirationDate

CourseService.Course.StartTerm

CourseService.Course.EndTerm

osid.course.Course.IsActive

osid.course.rules.CourseEnabler

This data in KS informs the offerability is the course but may not be enforced.
 fees

CourseService.Course.Fees

CourseService.Course.Revenue

CourseService.Course.Expenditure

osid.course.Course.CourseFeeRecordKS has not been redesigned with respect to KSA.
 instructors

CourseService.Course.PrimaryInstructor

CourseService.Course.Instructors

osid.acknowledgement.Credit

osid.contact.Contact

In KS, the canonical instructors are not necessarily the ones who are teaching in a particular term, but instructors who are associated with the course.
 joint coursesCourseService.Course.Jointsosid.relationship.Relationship 
 learning objectivesCourseService.Course.CourseSpecificLososid.Course.LearningObjectives 
 names

CourseService.Course.CourseTitle

CourseService.Course.TranscriptTitle

osid.course.Course.DisplayName 

osid.course.Course.Title

OSID display names are brought into "context" (e.g. a transcript application gets the transcript title through the display name while the LMS may see the course code through the display name). Management of these different names can be done via OsidRecord.
 options

CourseService.Course.CreditOptions

CourseService.Course.GradingOptions

osid.course.Course.CreditAmounts

osid.course.Course.GradingOptions

 
 organizations

CourseService.Course.UnitsDeployment

CourseService.Course.UnitsContentOwner

osid.course.Course.Sponsors

osid.course.rules.CourseProcessorEnabler

Content owner is a better name than sponsors. Deployment smells like an authorization rule.
 pilot coursesCourseService.Course.isPilotCourseosid.course.Course.PilotCourseRecord 
 prerequisitesrulesosid.course.Course.PrerequisitesOSIDs should rename these rules to requisites.
 special topicsCourseService.Course.IsSpecialTopicsCourseosid.course.Course.SpecialTopicsCourseRecord 
 subject areasCourseService.Course.SubjectAreaosid.ontology.SubjectOSID subject tagging not used as an identifier.
 terms offeredCourseService.Course.TermsOfferedosid.course.Course.TermsOfferedCourseRecordMuddled feature.
 time

CourseService.Course.Duration

CourseService.Course.OutOfClassHours

 OSIDs manage at the activity level but doesn't roll up to the course level.
 versioningCourseService.Course.Versionosid.journaling.JournalEntry 
canonical formats CourseService.Format KS uses Formats to vary the Activities. OSIDs can surface these as different Courses.
canonical activities CourseService.Activityosid.course.ActivityUnit 
 content ownerCourseService.Activity.UnitsContentOwnerosid.course.Activity.ContentActivityRecord 
 estimated enrollmentCourseService.Activity.DefaultEnrollmentEstimateosid.course.Activity.EnrollmentActivityRecord 
 learning objectivesCourseService.Activity.DynamicAttributesosid.course.ActivityUnit.LearningObjectives 
 time estimates

CourseService.Activity.ContactHours

CourseService.Activity.DynamicAttributes

osid.course.ActivityUnit.TotalTargetContactTime

osid.course.ActivityUnit.TotalTargetIndividualEffort

osid.course.ActivityUnit.WeeklyContactTime

osid.course.ActivityUnit.WeeklyIndividualEffort

KS adds more detail at offering.
canonical program ProgramService.XYZProgramosid.course.program.Program 
 accrediting agenciesProgramService.MajorDiscipline.AccreditingAgenciesosid.course.program.Program.AccreditationProgramRecord(question) Accreditation should be modeled.
 classificationProgramService.XProgram.UniversityClassificationosid.ontology.Subject 
 codeProgramService.XProgram.Codeosid.course.program.Program.Number 
 codes (other)

ProgramService.XProgram.Cip2000Code

ProgramService.XProgram.Cip2010Code

ProgramService.XProgram.HegisCode

osid.ontology.Subject 
 core programProgramService.CoreProgramosid.relationship.Relationshipprogram hierarchy
 credentialsProgramService.CredentialProgram.ResultOptionsosid.course.program.Program.Credentials 
 effective dating

ProgramService.XProgram.EffectiveDate

ProgramService.XProgram.StartTerm

ProgramService.XProgram.EndTerm

ProgramService.XProgram.EndProgramEntryTerm

osid.course.program.rules.ProgramEnabler 
 honorsProgramService.HonorsProgramosid.relationship.Relationshipprogram hierarchy
 intensityProgramService.XProgram.Intensityosid.ontology.Subject 
 instructors

ProgramService.MajorDiscipline.PublishedInstructors

osid.acknowledgement.Credit(question)
 learning objectivesProgramService.XProgram.LearningObjectivesosid.course.program.Program.LearningObjectives 
 levelProgramService.CredentialProgram.Levelosid.course.Program.LevelProgramRecord 
 locationProgramService.XProgram.CampusLocationsosid.course.program.Program.CampusProgramRecord 
 majorsProgramService.MajorDisciplineosid.relationship.Relationshipprogram hierarchy
 minorsProgramService.MinorDisciplineosid.relationship.Relationshipprogram hierarchy
 orgs

ProgramService.XProgram.DivisionsContentOwner

ProgramService.XProgram.DivisionsStudentOversight

ProgramService.XProgram.DivisionsDeployment

ProgramService.XProgram.DivisionsFinancialControl

ProgramService.XProgram.UnitsContentOwner

ProgramService.XProgram.UnitsFinancialResources

ProgramService.XProgram.UnitsFinancialControl

ProgramService.XProgram.UnitsDeployment

ProgramService.XProgram.UnitsStudentOversight

ProgramService.CredentialProgram.Institution

osid.course.program.Program.Sponsors

osid.course.program.Program.XYZOrgProgramRecord

osid.authorization

 

these are overkill in KS
 publication targetsProgramService.CProgram.CatalogPublicationTargetsosid.course.program.Program.PublicationProgramRecord 
 requirementsProgramService.XProgram.ProgramRequirementsosid.course.program.Program.CompletionRequirements 
 review periodProgramService.MinorDiscipline.NextReviewPeriodosid.course.program.Program.ReviewProgramRecordReviews should be properly modeled.
 titles

ProgramService.XProgram.ShortTitle

ProgramService.XProgram.LongTitle

ProgramService.XProgram.TranscriptTitle

ProgramService.CProgram.DiplomaTitle

osid.course.program.Program.DisplayName

osid.course.program.Program.Ttitle

osid.course.program.Program.TranscriptProgramRecord

OSID display names are brought into "context" (e.g. a transcript application gets the transcript title through the display name while the LMS may see the course code through the display name). Management of these different names can be done via OsidRecord.
 urlProgramService.CProgram.Urlosid.course.program.Program.URLProgramRecord 
 variationsProgramService.ProgramVariationosid.relationship.Relationshipprogram hierarchy
 versioningProgramService.XProgram.Versionosid.journaling.JournalEntry 
syllabus  osid.course.syllabus.Syllabus 
 content 

osid.course.syllabus.Docet.Assessements

osid.course.syllabus.Docet.Assets

 
 learning objectives osid.course.syllabus.Docet.LearningObjectives 
 modules osid.course.syllabus.Module 
 time management osid.course.syllabus.Docet.Duration 

 

Course Offering

ModelFeatureKSOSIDComments
course offerings CourseOfferingService.CourseOfferingosid.course.CourseOffering 
 code

CourseOfferingService.CourseOffering.CourseOfferingCode

CourseOfferingService.CourseOffering.SubjectArea

CourseOfferingService.CourseOffering.CourseNumberSuffix

CourseOfferingService.CourseOffering.CourseNumberInternalSuffix

osid.course.CourseOffering.Number 
 cross listingsCourseOfferingService.CourseOffering.CrossListingsosid.course.CourseOffering.CrossListingCourseOfferingRecord 
 evaluationCourseOfferingService.CourseOffering.IsEvaluatedosid.course.CourseOffering.EvaluationCourseOfferingRecord 
 final examsCourseOfferingService.CourseOffering.FinalExamTypeosic.course.CourseOffering.FinalExamCourseOfferingRecord 
 finances

CourseOfferingService.CourseOffering.FundingSource

CourseOfferingService.CourseOffering.FinancialAidEligible

CourseOfferingService.CourseOffering.IsFeeAtActivityOffering

osid.course.CourseOffering.FinancialCourseOfferingRecord 
 honorsCourseOfferingService.CourseOffering.IsHonorsOfferingosid.course.CourseOffering.HonorsCourseOfferingRecord 
 instructorsCourseOfferingService.CourseOffering.Instructorsosid.course.CourseOffering.Instructors 
 instructors allocationCourseOfferingService.OfferingInstructorosid.resourcing.CommissionKS shouldn't be managing resources from inside courses.
 orgs

CourseOfferingService.CourseOffering.UnitsContentOwners

CourseOfferingService.CourseOffering.UnitsDeploymentOwners

osid.course.CourseOffering.Sponsors 
 registration limits

CourseOfferingService.CourseOffering.MaxEnrollment

CourseOfferingService.CourseOffering.MinEnrollment

osid.course.CourseOffering.MaximumSeats

osid.course.CourseOffering.MinimumSeats

KS naming inconsistent with ActivityOffering.
 registration options

CourseOfferingService.CourseOffering.GradingOption

CourseOfferingService.CourseOffering.StudentRegistrationGradingOption

CourseOfferingService.CourseOffering.CreditOption

osid.course.CourseOffering.GradingOptions

osid.course.CourseOffering.CreditAmounts

 
 schedule 

osid.course.CourseOffering.ScheduleInfo

osid.course.CourseOffering.Event

 
 urlCourseOfferingService.CourseOffering.CourseOfferingURLosid.course.CourseOffering.URL 
Format Offering CourseOfferingService.FormatOffering  
Activity Offering CourseOfferingService.ActivityOfferingosid.course.Activity 
 codeCourseOfferingService.ActivityOffering.Codeosid.course.Activity.CodeActivityRecord 
 evaluationCourseOfferingService.ActivityOffering.IsEvaluatedosid.course.Activity.EvaluationActivityRecord 
 honorsCourseOfferingService.ActivityOffering.IsHonorsosid.course.Activity.HonorsActivityRecord 
 instructorsCourseOfferingService.ActivityOffering.Instructorsosid.course.Activity.Instructors 
 instructors allocationCourseOfferingService.OfferingInstructorosid.resourcing.CommissionKS shouldn't be managing resources from inside courses.
 registration limits

CourseOfferingService.ActivityOffering.MaximumEnrollment

CourseOfferingService.ActivityOffering.MinimumEnrollment

osid.course.Activity.MinimumSeats

osid.course.Activity.MaximumSeats

 
 registration options

CourseOfferingService.ActivityOffering.GradingOptions

osid.course.Activity.GradingActivityRecordThis doesn't make much sense at the AO level.
 scheduleCourseOfferingService.ActivityOffering.Schedule

osid.course.Activity.Schedules

osid.course.Activity.SpecificMeetingTimes

osid.course.Activity.Blackouts

Specific meeting times and blackouts incorporated into KS Schedule.
 schedulingCourseOfferingService.ActivityOffering.IsApprovedForNonStandardTimeSlotsosid.course.Activity.SchedulingActivityRecord 
 time

CourseOfferingService.ActivityOffering.WeeklyInClassContactHours

CourseOfferingService.ActivityOffering.WeeklyOutOfClassContactHours

CourseOfferingService.ActivityOffering.WeeklyTotalContactHours

CourseOfferingService.ActivityOffering.DynamicAttributes

osid.course.Activity.TotalTargetEffort

osid.course.Activity.TotalTargetContactTime

osid.course.Activity.TotalTargetIndividualEffort

osid.course.Activity.WeeklyEffort

osid.course.Activity.WeeklyContactTime

osid.course.Activity.WeeklyIndividualEffort

 
 titles

CourseOfferingService.ActivityOffering.Name

osid.course.Activity.DisplayName 
 urlCourseOfferingService.ActivityOffering.URLosid.course.Activity.URLActivityRecord 
Activity Offering Clusters CourseOfferingService.ActivityOfferingCluster Format Offering and ActivityOffering Cluster a bit muddled in KS.
 Registration Group GenerationCourseOfferingService.AOClusterVerifyResults  
Registration Groups CourseOfferingService.RegistrationGrouposid.course.registration.RegistrationTarget 
 activity offeringsCourseOfferingService.RegistrationGroup.ActivityOfferingsosid.course.registration.RegistrationTarget.Activites 
 codeCourseOfferingService.RegistrationGroup.Codeosid.course.RegistrationGroup.CodeRegistrationGroupRecord 
 generationCourseOfferingService.RegistrationGroup.IsGeneratedosid.course.RegistrationGroup.GenerationRegistrationGroupRecord 
 registration restrictionsCourseOfferingService.RegistrationGroup.DynamicAttributes

osid.course.registration.RegistrationTarget.Credits

osid.course.registration.RegistrationTarget.GradingOptions

 

Course Registration

ModelFeatureKSOSIDComments
Registration CourseRegistrationService.CourseRegistrationosid.course.registration.Registration 
 creditsCourseRegistrationService.CourseRegistration.Creditsosid.course.registration.Registration.CreditsOSIDs allow for multiple credit options to be determined upon completion.
 cross listed identifierCourseRegistrationService.CourseRegistration.CrossListedCodeosid.course.registration.Registration.CrossListedRegistrationRecord 
 grading optionCourseRegistrationService.CourseRegistration.GradingOptionosid.course.registration.Registration.GradingOption 
 last attendanceCourseRegistrationService.CourseRegistration.LastAttendanceDateosid.course.registration.CourseRegistration.EndDateThe last attendance date supplied to a withdraw should surface as an end date to the CourseRegistration, not a separate field.
Course Registration  osid.course.registration.CourseRegistrationOSIDs separate a course-level registration from a registration into a specific target (rg).
Activity Registration CourseRegistrationService.ActivityRegistrationosid.course.registration.ActivityRegistration 
Registration Request CourseRegistrationService.RegistrationRequestosid.course.registration.request.RegistrationRequest 
 addCourseRegistrationService.RegistrationRequestItem.Typeosid.course.registration.request.RegistrationRequestItem.RegistrationOperation 
 cross listed codeCourseRegistrationService.RegistrationRequestItem.CrossListedCodeosid.course.registration.request.RegistrationRequestItem.CrossListedRegistrationRequestItemRecord 
 dropCourseRegistrationService.RegistrationRequestItem.Typeosid.course.registration.request.RegistrationRequestItem.RegistrationOperation 
 effective posting dateCourseRegistrationService.RegistrationRequestItem.RequestedEffectiveDateosid.course.registration.request.RegistrationRequest.PostingDateOSIDs on entire request.
 last attendance dateCourseRegistrationService.RegistrationRequestItem.LastAttendanceDateosid.course.registration.request.RegistrationRequestItem.AttendanceRequestItemRecord 
 on behalf of

CourseRegistrationService.RegistrationRequest.Requester

CourseRegistrationService.RegistrationRequestItem.Person

osid.course.registration.request.RegistrationRequest.Requester

osid.course.registration.request.RegistrationRequestItem.Student

 
 options

CourseRegistrationService.RegistrationRequestItem.Credits

CourseRegistrationService.RegistrationRequestItem.GradingOption

osid.course.registration.request.RegistrationRequestItem.CreditOptions

osid.course.registration.request.RegistrationRequestItem.GradingOption

 
 swapCourseRegistrationService.RegistrationRequestItem.Typeosid.course.registration.request.RegistrationRequestItem.RegistrationOperation 
 updateCourseRegistrationService.RegistrationRequestItem.Typeosid.course.registration.request.RegistrationRequestItem.RegistrationOperation 
 waitlist options

CourseRegistrationService.RegistrationRequestItem.OkToWaitlist

CourseRegistrationService.RegistrationRequestItem.OkToHoldUntilList

osid.course.registration.request.RegistrationRequestItem.WaitlistOptionsRequestItemRecord 
 waitlisted entryCourseRegistrationService.RegistrationRequestItem.WaitlistEntryosid.course.registration.request.RegistrationRequestItem.WaitlistRequestItemRecord 

Academic Record

Modeling SupportFeatureKSOSIDComments
Student Award Record  osid.course.chronicle.AwardEntry 
Student Course Record AcademicRecordService.StudentCourseRecordosid.course.chronicle.CourseEntry 
Student Credential Record AcademicRecordService.StudentCredentialRecordosid.course.chronicle.CredentialEntry 
Student Program Record AcademicRecordService.StudentProgramRecordosid.course.chronicle.ProgramEntry 
Student Term Record AcademicRecordService.StudentTermRecord  
Student Test Record AcademicRecordService.StudentTestRecordosid.course.chronicle.AssessmentEntry 

Academic Plan

General Services

Service SupportFeatureKSOSIDComments
acknowledgementan auxiliary service for acknowledging a credit or role for something osid.acknowledgement 

authentication

a service to manage principals and keysriceosid.authentication 
authorizationa service to check and manage authorizationsriceosid.authorization 
catalogingan auxiliary service for organizing things osid.catalogingin-band orchestration throughout OSIDs
commentingan auxiliary service for annotating thingsCommentServiceosid.commenting 
communicationa service to pass messages to service consumers osid.communicationKS defines in-band messages where needed
configurationconfiguration evaluation and managementGESServiceosid.configuration 
contactan auxiliary service to manage contacts for thingsContactServiceosid.contact 
hold HoldServiceosid.hold 
loggingreading and writing logsLoggingServiceosid.logging 
messagingsending and receiving user messagesUserMessagingServiceosid.messaging 
 message channels and connection to contactsUserMessagingService.MessageCategoryosid.messaging.Mailbox 
 message templatesUserMessagingService.Template  
 receipt tracking osid.messaging.Receipt 
ontologyan auxiliary service to tag things with managed topicsused to have Taggingosid.ontology 
personreferencing and managing peoplePersonService

osid.resource.Resource

osid.personnel.Person

OSIDs reference people via Resource
populationsa service to reference and manage rule-based sets of peoplePopulationServiceosid.resource.demographic 
processa rule-based service to organize checksProcessServiceosid.rules.check 
relationshipan auxiliary service to relate things osid.relationshipKS defines abstract relationships for CLUs and LUIs.
room RoomServiceosid.room 
 buildingRoomService.Buildingosid.room.Building 
 building addressRoomService.Building.DynamicAttributesosid.room.Building.Address 
 building areaRoomService.Building.DynamicAttributesosid.room.Building.Area 
 building construction osid.room.construction.Project 
 building responsibility osid.room.squatting.Deed 
 building spatial unit osid.mapping.Location.SpatialUnit 
 building subdivisions osid.room.Building.Subdivisions 
 floor osid.room.Floor 
 partitionsRoomService.Partitionosid.room.Campus 
 roomRoomService.Roomosid.room.Room 
 room areaRoomService.Room.DynamicAttributesosid.room.Room.Area 
 room capacityRoomService.Room.RoomUsageosid.room.Room.OccupancyLimit 
 room construction 

osid.room.construction.Renovation

 
 room featuresRoomService.Room.RoomFixedResourcesosid.room.Room.Resources 
 room inventory osid.inventory.Item 
 room responsibilityRoomService.RoomResponsibleOrgosid.room.squatting.Lease 
 spatial units osid.mapping.Location.SpatialUnit 
 room subdivisions osid.room.Room.Subdivisions 
scheduling SchedulingService  
searchan abstract service to search arbitrary stuff and get arbitrary resultsSearchServiceosid.search 
sequencingan auxiliary service for ordering things osid.sequencing 
statean auxiliary service for managing states for thingsStateServiceosid.processKS has one state per entity.
repository DocumentServiceosid.repositoryKS simply attaches files to objects.
typemanages Type definitionsTypeServiceosid.type 
versioningan auxiliary service to manage versions of thingsVersionManagementServiceosid.journaling 
     
  • No labels