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

Compare with Current View Page History

« Previous Version 44 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 (concierge) 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 
personreferencing and managing peoplePersonService

osid.resource.Resource

osid.personnel.Person

OSIDs reference people via Resource
populationsreference and manage rule-based sets of peoplePopulationServiceosid.resource.Demographic 
processorganize checksProcessServiceosid.rules.Check 
relationshiprelate things osid.relationshipKS defines abstract relationships for CLUs and LUIs.
repository DocumentServiceosid.repositoryKS simply attaches files to objects.
 attributionsDocumentService.Document.DynamicAttributes

osid.repository.Asset.PrincipalCredits

osid.acknowledgement.Credit

 
 compositions 

osid.repository.Asset.IsComposition

osid.repository.Composition

 
 content/format variance osid.repository.AssetContent 
 creationDocumentService.Document.DynamicAttributes

osid.repository.Asset.Source

osid.repository.Asset.CreatedDate

 
 data accessDocumentService.Document.DocumentBinaryosid.repository.AssetContent.Data 
 effective dating

DocumentService.Document.EffectiveDate

DocumentService.Document.ExpirationDate

osid.journaling.JournalEntry 
 file accessDocumentService.Document.FileNameosid.repository.AssetContent.URL 
 IPDocumentService.Document.DynamicAttributes

osid.repository.Asset.IsPublicDomain

osid.repository.Asset.Copyright

osid.repository.Asset.CopyrightRegistration

osid.repository.Asset.CanDistributeVerbatim

osid.repository.Asset.CanDistributeAlterations

osid.repository.Asset.CanDistributeCompositions

osid.repository.Asset.License

 

 

 
 nameDocumentService.Document.Name

osid.repository.Asset.DisplayName

osid.repository.Asset.Title

 
 object attachmentDocumentService.RefDocRelation OSIDs: reference to Assets from other end
 provider chainDocumentService.Document.DynamicAttributesosid.repository.Asset.ProviderLinks 
 published statusDocumentService.Document.DynamicAttributesosid.repository.Asset.PublishedDate 
 spatial coverageDocumentService.Document.DynamicAttributesosid.repository.AssetSpatialSession 
 temporal coverageDocumentService.Document.DynamicAttributesosid.repository.AssetTemporalSession 
room RoomServiceosid.room 
 buildingRoomService.Buildingosid.room.Building 
 building address location

RoomService.Building.DynamicAttributes

osid.room.Building.Address 
 building areaRoomService.Building.DynamicAttributesosid.room.Building.GrossArea 
 building construction osid.room.construction.Project 
 building name/code

RoomService.Building.Name

RoomService.Building.BuildingCode

osid.room.Building.DisplayName

osid.room.Building.OfficialName

osid.room.Building.Number

 
 building responsibility osid.room.squatting.Deed 
 building spatial unit osid.mapping.Location.SpatialUnit 
 building subdivisions osid.room.Building.Subdivisions 
 floor osid.room.Floor 
 floor area osid.room.Floor.GrossArea 
 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 name/code

RoomService.Room.Name

RoomService.Room.RoomCode

osid.room.Room.DisplayName

osid.room.Room.DesignatedName

osid.room.Room.Code

 
 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 
state StateServiceosid.processKS has one state per entity.
 lifecycle managementStateService.Lifecycleosid.process.Process 
 state constraint managementStateService.StateConstraint  
 state propagation managementStateService.StatePropagation  
tagging TagServiceosid.ontology 
 hierarchical tags osid.ontology.Subject 
type TypeServiceosid.type 
 description

TypeService.Type.Name

TypeService.Type.Description

osid.type.Type.DisplayName

osid.type.Type.DisplayLabel

osid.type.Type.Description

 
 effective dating

TypeService.Type.EffectiveDate

TypeService.Type.ExpirationDate

 OSIDs do not model identifiers as being transient.
 equivalent typesTypeService.TypeTypeRelation.Typeosid.type.Type 
 hierarchical typesTypeService.TypeTypeRelation.Typeosid.type.Type 
 relationshipsTypeService.TypeTypeRelation

osid.type.Type

 

 
versioning VersionManagementServiceosid.journaling 
 branching osid.journaling.Branch 
 loggingVersionManagementService.Versionosid.journaling.JournalEntry 
  • No labels