LIS 2.0 Person
Learn person elements supported by LIS
Learn Users Field | Required For Insert | Unique | LIS Source Field |
---|---|---|---|
Added Node Batch Uid | No | No | Person Institutional Hierarchy Associations |
Available | No | No | |
Batch Uid | Yes | Yes | Person Sourced Id |
Birthdate | No | No | Person Birthdate |
City | No | No | Person City |
Company | No | No | |
Country | No | No | Person Country |
Data Source Key | Yes | No | Person Data Source |
Department | No | No | |
Education Level | No | No | |
No | No | Person Email | |
First Name | Yes | No | Person First Name |
Gender | No | No | Person Gender |
Home Fax | No | No | |
Home Phone | No | No | Person Home Primary Phone Number |
Home Phone (Secondary) | No | No | Person Home Secondary Phone Number |
Job Title | No | No | |
Last Name | Yes | No | Person Last Name |
Middle Name | No | No | Person Middle Name |
Mobile Phone | No | No | Person Mobile Number |
Other Name | No | No | Person Particle Name |
Password | Yes | No | Person Role Password |
Password Encryption Type | No | No | Person Role Password Encryption Type |
Primary Institution Role | No | No | Person Primary Institution Role |
Pronouns | No | No | Person Pronouns |
Replacement Batch Uid | No | Yes | Person Sourced Id |
Replacement Data Source Batch Uid | No | No | |
Row Status | No | No | |
Secondary Institution Roles | No | No | Person Secondary Institution Roles |
State / Province | No | No | Person Address State/Province |
Street 1 | No | No | Person Address Street 1 |
Street 2 | No | No | Person Address Street 2 |
Student ID | No | No | Person Role User Id |
Suffix | No | No | Person Suffix Name |
System Role | No | No | Person System Role |
Title | No | No | Person Prefix Name |
Username | Yes | Yes | Person Role User Id |
Website | No | No | Person Web Address |
Work Fax | No | No | Person Work Fax |
Work Phone | No | No | Person Work Primary Phone Number |
Work Phone (Secondary) | No | No | Person Work Secondary Phone Number |
Zip / Postal Code | No | No | Person Zip/Postal Code |
LIS person object
Supported Learn Objects are bold in the below descriptions, associated values are bold-italicized.
LIS SOAP Message Element | Comment Learn Object Relationship |
<SOAP-ENV:Body> <replacePersonRequest xmlns:pms="http://www.imsglobal.org/services/lis/pms2p0/wsdl11/sync/imspms_v2p0"> <sourcedId>AA0011</sourcedId> | SOAP-ENV Body element and element defining the request operation This sourcedId is the source Id for message None |
xmlns:pms= "http://www.imsglobal.org/services/lis/pms2p0/wsdl11/sync/imspms_v2p0"> | Begin the person record block None |
<sourcedGUID> <refAgentInstanceID>SIS</refAgentInstanceID> <sourcedId>55555</sourcedId> </sourcedGUID> | The SourcedGUID providing the unique identifier for this person record and the source of the identifier BATCH UID :: Person SourcedId |
<person> | Begin the person data None |
<formname> <formnameType> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http://www.imsglobal.org/lis/pmsv2p0/formatnmetypevocabularyv1p0 </instanceVocabulary> <instanceValue> <language>en</language> <textString>Full</textString> </instanceValue> </formnameType> <formattedName> <language>en</language> <textString> Dr. First Middle Last, Jr. </textString> </formattedName> </formname> | One component LIS formatting style is the blocking of elements and their attributes between supporting defining elements. In this case the formal name (formname), the Full name is blocked between identifiers which provide the language used for the data - in this case en, the textString - in this case Full, and the textString containing the actual data for the formattedName - in this case Dr. First Middle Last, Jr. Note the instanceVocabulary provides the IMS vocabulary for the object in question. None |
<name> <nameType> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http://www.imsglobal.org/lis/pmsv2p0...vocabularyv1p0 </instanceVocabulary> <instanceValue> <language>en</language> <textString>Full</textString> </instanceValue> </nameType> <partName> <instanceIdentifier> <language>en</language> <textString>Nickname</textString> </instanceIdentifier> <instanceVocabulary> Nickname not used </instanceVocabulary> <instanceName> <language>en</language> <textString>Nickname</textString> </instanceName> <instanceValue> <language>en</language> <textString> nickname </textString> </instanceValue> </partName> <partName> <instanceIdentifier> <language>en</language> <textString>Family</textString> </instanceIdentifier> <instanceVocabulary> Family </instanceVocabulary> <instanceName> <language>en</language> <textString> Family </textString> </instanceName> <instanceValue> <language>en</language> <textString>King</textString> </instanceValue> </partName> <partName> <instanceIdentifier> <language>en</language> <textString>Given</textString> </instanceIdentifier> <instanceVocabulary> Given </instanceVocabulary> <instanceName> <language>en</language> <textString>Given</textString> </instanceName> <instanceValue> <language>en</language> <textString>Martin</textString> </instanceValue> </partName> <partName> <instanceIdentifier> <language>en</language> <textString>Prefix</textString> </instanceIdentifier> <instanceVocabulary> Prefix </instanceVocabulary> <instanceName> <language>en</language> <textString>Prefix</textString> </instanceName> <instanceValue> <language>en</language> <textString> Dr. </textString> </instanceValue> </partName> <partName> <instanceIdentifier> <language>en</language> <textString>Suffix</textString> </instanceIdentifier> <instanceVocabulary> Suffix </instanceVocabulary> <instanceName> <language>en</language> <textString>Suffix</textString> </instanceName> <instanceValue> <language>en</language> <textString>Jr.</textString> </instanceValue> </partName> <partName> <instanceIdentifier> <language>en</language> <textString>Middle</textString> </instanceIdentifier> <instanceVocabulary> Middle </instanceVocabulary> <instanceName> <language>en</language> <textString>Middle</textString> </instanceName> <instanceValue> <language>en</language> <textString>Luther</textString> </instanceValue> </partName> </name> | An additional LIS style is the support for components of a multipart object such as a name which may be build from prefix, first, middle, last, and suffix parts. This is handled through the addition of "parts". Combined with the instance elements these multipart objects are easily describable and are enclosed in descriptive partName elements. Learn Title :: Person:Name:Prefix Learn First Name :: Person:Name:Given Learn Middle Name :: Person:Name:Middle Learn Last Name :: Person:Name:Last Learn Title :: Person:Name:Suffix Not supported by Learn: Person:Name:Nickname |
<address> <addressType> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/... </instanceVocabulary> <instanceValue> <language>en</language> <textString></textString> </instanceValue> </addressType> <addressPart> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/addresspartvocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>NonfieldedStreetAddress1</textString> </instanceName> <instanceValue> <language>en</language> <textString>1234 Street</textString> </instanceValue> </addressPart> <addressPart> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/addresspartvocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>NonfieldedStreetAddress2</textString> </instanceName> <instanceValue> <language>en</language> <textString>Apt. 122</textString> </instanceValue> </addressPart> <addressPart> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/addresspartvocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>City</textString> </instanceName> <instanceValue> <language>en</language> <textString>Atlanta</textString> </instanceValue> </addressPart> <addressPart> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/addresspartvocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>StatePr</textString> </instanceName> <instanceValue> <language>en</language> <textString>GA</textString> </instanceValue> </addressPart> <addressPart> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/addresspartvocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>Postcode</textString> </instanceName> <instanceValue> <language>en</language> <textString>12345</textString> </instanceValue> </addressPart> <addressPart> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/addresspartvocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>Country</textString> </instanceName> <instanceValue> <language>en</language> <textString>USA</textString> </instanceValue> </addressPart> </address> | The person address block follows the same pattern as the above name block. Learn Street1 :: Person:Address: NonFieldedStreetAddress1 Learn Street2 :: Person:Address:NonFieldedStreetAddress2 Learn City :: Person:Address:City Learn State/Province :: Person:Address:StatePr Learn Zip/Postal code:: Person:Address:Postcode Learn Country :: Person:Address:Country |
<contactinfo> <contactinfoType> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/contactinfotypevocabularyv1p0 </instanceVocabulary> <instanceValue> <language>en</language> <textString>EmailPrimary</textString> </instanceValue> </contactinfoType> <contactinfoValue> <language>en</language> <textString>[email protected]</textString><!--E-Mail Address VALUE --> </contactinfoValue> </contactinfo> | Contactinfo provides the email address associated with this person record. Learn email :: Person:ContactInfo:EmailPrimary |
<demographics> <demographicsType> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/demographicsinfovocabularyv1p0 </instanceVocabulary> <instanceValue> <language>en</language> <textString>Primary</textString> </instanceValue> </demographicsType> <eventDate> <instanceIdentifier> <language>en</language> <textString>Birth</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/eventdatevocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>Birth</textString> </instanceName> <instanceValue> <language>en</language> <textString>1972-03-05</textString><!-- Date of Birth VALUE (YYYY-MM-DD) --> </instanceValue> </eventDate> <eventDate> <instanceIdentifier> <language>en</language> <textString>Death</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/eventdatevocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>Death</textString> </instanceName> <instanceValue> <language>en</language> <textString></textString><!-- Date of Death IGNORED by Learn --> </instanceValue> </eventDate> <gender>male</gender><!-- Gender VALUE (male/female) --> <demographicInfo> <instanceIdentifier> <language>en</language> <textString>PlaceofBirth</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/demographicsinfovocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>PlaceofBirth</textString> </instanceName> <instanceValue> <language>en</language> <textString>Silver Spring</textString> </instanceValue> </demographicInfo> <demographicInfo> <instanceIdentifier> <language>en</language> <textString>MaritalStatus</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/demographicsinfovocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>MaritalStatus</textString> </instanceName> <instanceValue> <language>en</language> <textString>S</textString> </instanceValue> </demographicInfo> <demographicInfo> <instanceIdentifier> <language>en</language> <textString>Ethnicity</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/demographicsinfovocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>Ethnicity</textString> </instanceName> <instanceValue> <language>en</language> <textString>4</textString> </instanceValue> </demographicInfo> </demographics> | This section provides demographics information such as gender, date of birth, etc. Learn Birthdate :: Person:DemographicInfo:Birth Learn Gender :: Person:DemographicInfo:Gender Not supported by Learn Person:Demographics:Death Person:Demographics:MaritalStatus Person:Demographics:Ethnicity |
<roles> <enterpriserolesType> <instanceIdentifier> <language>en</language> <textString>StudentInformationSystem</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/epriserolestypevocabularyv1p0 </instanceVocabulary> <instanceName> <language>en</language> <textString>StudentInformationSystem</textString> </instanceName> <instanceValue> <language>en</language> <textString>role</textString> </instanceValue> </enterpriserolesType> <institutionRole> <institutionroletype> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/systemrolevocabularyv1p0 </instanceVocabulary> <instanceValue> <language>en</language> <textString>none</textString><!-- System Role VALUE --> </instanceValue> </institutionroletype> <primaryroletype>false</primaryroletype> </institutionRole> <institutionRole> <institutionroletype> <instanceIdentifier> <language>en</language> <textString>unknown</textString> </instanceIdentifier> <instanceVocabulary> http:00www.imsglobal.org/lis/pmsv2p0/systemrolevocabularyv1p0 </instanceVocabulary> <instanceValue> <language>en</language> <textString>Student</textString><!-- Institution Role VALUE --> </instanceValue> </institutionroletype> <primaryroletype>false</primaryroletype> </institutionRole> <userId> <userIdValue> <language>en</language> <textString>loginidblah</textString> </userIdValue> <userIdType> <language>en</language> <textString>Logon ID</textString> </userIdType> <password> <language>en</language> <textString> {SSHA}JCkADpIzxrezO7Y9H0Swprn6veJNUEMxTENRVg== </textString> </password> <pwEncryptionType> <language>en</language> <textString>SSHA</textString> </pwEncryptionType> <authenticationType> <language>en</language> <textString></textString> </authenticationType> </userId> <userId> <userIdValue> <language>en</language> <textString>A00001154</textString><!-- ID IGNORED by Learn --> </userIdValue> <userIdType> <language>en</language> <textString>SISID</textString> </userIdType> <password> <language>en</language> <textString> {SSHA}JCkADpIzxrezO7Y9H0Swprn6veJNUEMxTENRVg== </textString> </password> <pwEncryptionType> <language>en</language> <textString>SSHA</textString> </pwEncryptionType> <authenticationType> <language>en</language> <textString></textString> </authenticationType> </userId> <userId> <userIdValue> <language>en</language> <textString> user_firstlastname<!-- User_ID and Student_ID VALUE --> </textString> </userIdValue> <userIdType> <language>en</language> <textString>Email ID</textString> </userIdType> <password> <language>en</language> <textString>change_me</textString><!-- User Password VALUE --> </password> <pwEncryptionType> <language>en</language> <textString></textString><!-- Encryption value (if applicable) --> </pwEncryptionType> <authenticationType> <language>en</language> <textString></textString> </authenticationType> </userId> </roles> | The roles section provides the institutional role and account login information (username and password) for this person record. Learn Primary Institution Role :: Person:Roles:Role:InstitutionRole Learn System Role :: Person:Roles:Role:InstitutionRole See "Institution Roles" or "System Roles" in the System Admin panel for lists of valid Institution and System Roles. Learn Username and Student ID:: Person:Roles:Role:userId Learn Password: Person:Roles:Role:Password Learn Password Encryption Type: Person:Roles:Role:PwEncryptionType Important! Learn only uses the last userId record - if multiple userId records are provided ensure that the login information - username and password - are in the last userId record. So this sample person would login to Learn using username: user_firstlastname password: change_me Not supported by Learn authenticationType |
</person> </personRecord> </replacePersonRequest> </SOAP-ENV:Body> | Closing element tags. |
Blackboard extensions to LIS
Blackboard Learn supports data elements in addition to those defined in the standard.
LIS SOAP Message Element | Comment |
<extension> <extension> | Institution email is distinct from personal email and used for integrations requiring use of an official address such as the Microsoft Teams integration. Administrators can edit the institution through the SIS Framework, but there is no option for end users to edit. There are 2 scenarios to be considered: A. When Person Email is the Institution Email
Person Email is the Institution Email For scenario A, the Institution Email (inst_email) is by default set to person email within the SIS integration specifications, and therefore no additional action is required to change this on behalf of the administrator.
Person Email isn’t the institution email For scenario B, when the person email field isn’t the institution email address and there is a need to update/change this, it’s possible to use a script to populate the institutional email field values using field mapping rather than directly adding data to this field. This is an example script for populating the institution email field using the Use a custom script text box: (function() { It’s important to note that if required, an admin can revert the field mapping back to ‘Person Email’. If a custom script has been used, this will be preserved.
Multiple pronoun values for a person It’s possible to send multiple pronoun values per student. This is sent as a single fieldValue entry with the different values separated by commas. |
<extension> | Name pronunciation The name pronunciation field is text (unicode) to support phonetic spelling or a pronunciation guide. Exchange of audio recording files aren’t supported with the SIS integration framework. |