Enhancing the learning content through the
aggregation of social data.
Frans Van Assche University of Leuven
President of the ARIADNE Foundation
Paradata• What users say about a
resource; example: a rating of a Learning Object
• What users do with a resource: Usage Data; example a user edits metadata
The Experience API (xAPI) Propertyidactorverbobjectresultcontexttimestampstoredauthorityversionattachments
TypeUUIDUUIDObjectObjectObjectObjectDate/TimeDate/TimeObjectVersionArray of attachment Objects
xAPI example { "id": "12345678-1234-5678-1234-567812345678", "actor": { "mbox": "mailto:[email protected]" }, "verb": { "id": "http://adlnet.gov/expapi/verbs/created", "display": { "en-US": "created" } }, "object": { "id": "http://example.adlnet.gov/xapi/example/activity" } }
Contextualized Attention Metadata (CAM)
xAPI example
{ "event": { "name": "name", "datetime": "2011-02-02 14:49:21", "eventRelatedentityRelations": [{ "eventRelatedentityId": { "relatedentity": { "name": "name1", "type":"type1", "reference": "reference1", "mimetype": "mimetype1", "metadata": [{ "metadataHash": "METADATA HASHED IN SHA-512", "metadata": "metadata1", "metadataType": "metadataType1", "metadataBinding": "metadataBinding1" }] }, "role": "role1" } },{ "eventRelatedentityId": { "relatedentity": { ... }, "role": "role2" } }], "sessions": [{ "sessionId": "sessionId", "domain": "domain", "ipAddress": "ipAddress" }] } }
JSON Activity Streams Propertyactor content generator icon id object published provider target title updated url verb
TypeObjectJSON [RFC4627] StringObjectMedia LinkJSON [RFC4627] StringObject[RFC3339] date-timeObjectObjectJSON [RFC4627] String[RFC3339] date-timeJSON [RFC4627] StringJSON [RFC4627] String
xAPI example
{ "published": "2011-02-10T15:04:55Z", "actor": { "url": "http://example.org/martin", "objectType" : "person", "id": "tag:example.org,2011:martin", "image": { "url": "http://example.org/martin/image", "width": 250, "height": 250 }, "displayName": "Martin Smith" }, "verb": "post", "object" : { "url": "http://example.org/blog/2011/02/entry", "id": "tag:example.org,2011:abc123/xyz" }, "target" : { "url": "http://example.org/blog/", "objectType": "blog", "id": "tag:example.org,2011:abc123", "displayName": "Martin's Blog" } }
iTEC Usage Data PropertyIdActorVerbObjectResultTimestampStoredVersionipAddresssessionId
TypeID (iTEC)ID (iTEC)Character StringID (iTEC)ObjectDate/TimeDate/TimeCharacter StringURIIdentifier
iTEC Example
{ "id": "http://itec-directory.eun.org/Paradata/1234505", "actor": "http://itec-directory.eun.org/User/40903", "verb": "edit", "object": "http://itec-directory.eun.org/Event/205", "result": "ok", "stored": "29-07-2013T14:10:05.123", "version": "1.0", "ipAddress": "http://123.123.123.1", "sessionId": "85C69908F30B01C09E47D8698B75AEEE" }
Recommended JSON Binding Practice
WHY
• Make it easier to build front-ends
• On top of multiple back ends−Interoperability
• This is an invitation to technical people for collaboration
Recommended JSON Binding PracticeWHAT
• Element names• Identifiers• Date/Time & Period• LangString• VocabularyTerm• Vocabularies
Element names• Display_Name• display_name• display-name• displayName
• Camel case• Starting with lower case
Identifier Scheme• UUID or GUID – Good to know• RFC 4122. See
http://www.ietf.org/rfc/rfc4122.txt
• Example
f81d4fae-7dec-11d0-a765-00a0c91e6bf612345678-1234-5678-1234-567812345678
Date/Time & Duration• Based on ISO 8601• http://www.w3.org/TR/NOTE-datetime or
http://www.w3.org/TR/xmlschema-2/#isoformats • Example 29-07-2013T14:10:05.123Z
YYYY[-MM[-DD[Thh[:mm[:ss[.s[TZD]]]]]]] where:YYYY = four-digit yearMM = two-digit monthDD = two-digit day of monthhh = two digits of hour (00 through 23)mm = two digits of minute (00 through 59)ss = two digits of second (00 through 59)s = one or more digits representing a decimal fraction of a secondTZD = time zone designator ("Z" for UTC or +hh:mm or -hh:mm)
• Example Duration: P1Y3M5DT7H10M3.3S
LangString
"description": [ { "lang": "en", "text": "This learning object ..." }, { "lang": "nl", "text": "Dit leerobject ... " } ]
"description": [ {
"en": "This learning object ..." }, {
"nl": "Dit leerobject ... " } ]
Vocabulary Term
"subjects": [ "508", "974" ], "categories": [ "expert", "teacher" ]
A simple Token or identifier
{ "subjects": [ { "id": 508, "langString": [ { "en": "foreign language" }, { "nl": "Vreemde talen" } ] }, { "id": 974, "langString": [ { "en": "physical education" }, { "nl": "Lichamelijke opvoeding" } ] } ]}
Extended
{ "subjects": [ { "id": 508, "source": "http://voc1", "langString": [ { "en": "foreign language" }, { "nl": "Vreemde talen" } ] }, { "id": 974, "source": "http://voc2", "langString": [ { "en": "physical education" }, { "nl": "Lichamelijke opvoeding" } ] } ]}
Complete
Vocabulary Term
"subjects": [ "508", "974" ], "categories": [ "expert", "teacher" ]
Full Vocabulary needed
Enhancing the learning content through the aggregation of social data.
GRNET and AriadneNikos Manolis
Open Discovery Space
−A large-scale pilot project that tries to increase the adoption of digital learning resources by European schools
−An infrastructure to allow existing learning portals and repositories to be connected
Social Data types
Ratings Tags Comments Bookmarks Sharings
The need for aggregating• An important information source to
provide additional and more personalized access to learning objects
• Provide the opportunity to filter and recommend tailored information to a target user based on their social data profile
Developing a Social Data Management Layer
• Method:− A questionnaire was circulated among
data providers− Cross analysis of the questionnaire results− Analysis of the various social data
exposure protocols and interfaces − Social Data schema definition (existing
efforts from Organic Edunet, LRE and NSDL)
ODS basis schemataNr. Social metadata
requirements CAM
OrganicEdunet
format
Learning Registry NSDL
1 Rate + + + +2 Tag + + + +3 Bookmark + + + +4 Share (FB, twitter, e-mail) + - + +
5 share count + + - +6 Comment + + + +7 Join groups + - + -8 Posts
(discussion, blog, etc.)+ - +
(Google discussion)-
9 following/followers + - + -
Social data sum (+) 9 5 8 6
ODS Social Data schema
Technological Background• An extended version of Ariadne Harvester is used for
harvesting social data− Internal validation mechanism according to the
Social Data schema validation• An extended version of Ariadne Repository is used for
already harvested social data management− OAI-PMH endpoint for social data exposure− Social Data are also exposed in JSON format using
an extended version of the built-in RESTP API
Architecture.
Some indicative numbersProvider Tags Comme
nts Ratings Bookmarks
Sharings Posts Total
Mace 55619 147 476 0 0 0 56242
Organic Edunet 381 141 576 0 0 0 1098
Sum 56000 288 1052 0 0 0 57340
Next Steps• Harvest from more providers• Expose social data as Linked Data.• Connect LO Metadata with harvested
Social Data.• Integrate harvested social data to
Portal.−Recommender subsystem.−Search subsystem.
Thank you!