Enterprise OpenSocial Extensions

Person Object Modifications

Name Object

Switch to multiple names model... introduce pronunciation url parameter

"name" : {
    "givenName" : "...",
    "familyName": "...",
    "pronunciation" : "...",
    ... },
 "nativeName" : {
    "givenName" : "...",
    "familyName" : "...",
    "pronunciation" : "...",
    ... },
 "preferredName" : {
    "givenName" : "...",
    "familyName" : "...",
    "pronunciation" : "...",
    ... },
  "alternateName" : {
    "givenName" : "...",
    "familyName" : "...",
    "pronunciation" : "...",
    ... }

 person.name.givenName
 person.nativeName.givenName
 person.preferredName.pronunciation

Address Object

"addresses": [
   {
     ...
     "building": "bldgId",
     "floor": "floor",
     "office": "office number"
   }
 ]

Person Object

The job details in the person object are considered to be a point in time view and are not intended to provide a historical view of the persons employment.

{
   ...
   "dn": "distinguished name",
   "workExperienceSummary": "general statement about person's work experience",
   "contactPreference": "general statement about person's contact preferences",
   "jobCategory": "job category id",
   "employeeNumber": "employee serial number",
   "employeeType": "employee type code",
   "shift" : "work shift"
 }

Example:

{
   ...
   "dn" : "cn=James M Snell, o=ibm.com",
   "workExperienceSummary" : "I've done a lot of work on this stuff",
   "contactPreference" : "Please use my corporate instant messaging to contact me first. If I'm not available, use my mobile number"
   ...
 }

Group IDs @colleagues = organizational peers (e.g. people in same department, people with the same report to chain/network, etc)

@manager= report to chain / network (e.g. management chain)
@reports = people who report to this person
@assists= people for whom this person is an assistant
@colleagues = people with the same manager

<mdw Apr 11>
Would like to propose we change reportsTo to manager.
Added colleagues. This gives us the ability to do the entire org chart now.
</mdw

IMs, Emails, Phone Numbers

Restructuring of the "ims", "emails" and "phoneNumbers" properties on the person object....

"ims" : {
   "work":["...","..."],
   "home":["...","..."],
   "other":["...","..."],
   ...
 }

 "emails" : {
   "work":["...","..."],
   "home":["...","..."],
   "other":["...","..."],
   ...
 }

"phoneNumbers" : {
   "work":["...","..."],
   "home":["...","..."],
   "other":["...","..."],
   ...
 }

Link Collections

Restructure the "urls" property to align with the Standard Links structure in Activity Streams

"urls" : {
   "blog" : "http://.../blogs/@me",
   "calendar" : "http://.../calendar/@me",
   "stream" : "http://.../stream/@me"
 }