Difference between revisions of "DiscoverEd Metadata"
(→CC-specific categories (fields)) |
|||
Line 1: | Line 1: | ||
__TOC__ | __TOC__ | ||
− | + | == General == | |
This document outlines the format in which ccLearn would like to receive syndication feeds for the data that will go into it's OER database. | This document outlines the format in which ccLearn would like to receive syndication feeds for the data that will go into it's OER database. | ||
− | The data must be supplied in an [http://www.atomenabled.org/developers/syndication/ Atom] or [http://www.rssboard.org/rss-specification RSS] format. These are two very well documented XML formats | + | The data must be supplied in an [http://www.atomenabled.org/developers/syndication/ Atom] or [http://www.rssboard.org/rss-specification RSS] format. These are two very well documented XML formats and are implemented by many content management systems. |
+ | |||
+ | '''NOTE''': The sample Atom and RSS feeds below mostly implement the minimum elements required by the respective specification plus the fields that ccLearn needs. For our purposes, a feed must minimally contain the elements in the examples below, but may also contain any other valid elements. | ||
Presently, ccLearn is looking for the following data: | Presently, ccLearn is looking for the following data: | ||
Line 15: | Line 17: | ||
* Subject (cc:subject): A more formal subject name e.g. Mathematics. | * Subject (cc:subject): A more formal subject name e.g. Mathematics. | ||
− | + | == CC-specific categories (fields) == | |
− | + | Some of these fields do not have native Atom or RSS element definitions. For these fields we suggest that they be embedded as tags. In order for us to be able to recognize these within the feed, the tag content should be of the format | |
<blockquote>cc:<field>:<data></blockquote> | <blockquote>cc:<field>:<data></blockquote> | ||
Line 33: | Line 35: | ||
* Grade level: cc:gradelevel:<data> | * Grade level: cc:gradelevel:<data> | ||
* Language: cc:lang:<data> | * Language: cc:lang:<data> | ||
+ | |||
+ | === Specifying Language === | ||
+ | |||
+ | When specifying the language for a resource, the value should be specifed as the [http://en.wikipedia.org/wiki/ISO_639-1 ISO-639-1] code. For example, <code>en</code> for English. When specifying a national dialect, the [http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 IS-3166 alpha-2] code should be appeneded. For example, to distinguish English (United States) from English (United Kindgom), the language would be specified as <code>en-US</code> and <code>en-GB</code>, respectively. | ||
=== Embedding license data === | === Embedding license data === | ||
+ | |||
Since the licensing of a resource is expected to be conveyed via URL, we can leverage the Atom <link> element. However we must markup the link element so as to identify is as a license URL. This is accomplished with adding an the attribute rel="license" to the <link> element. For example: | Since the licensing of a resource is expected to be conveyed via URL, we can leverage the Atom <link> element. However we must markup the link element so as to identify is as a license URL. This is accomplished with adding an the attribute rel="license" to the <link> element. For example: | ||
<pre><link rel="license" href="http://creativecommons.org/licenses/by/3.0/" /></pre> | <pre><link rel="license" href="http://creativecommons.org/licenses/by/3.0/" /></pre> | ||
+ | |||
+ | See the [[Atom|complete CC+Atom]] documentation for more information. | ||
+ | |||
+ | == Examples == | ||
=== Atom 1.0 example === | === Atom 1.0 example === |
Revision as of 08:34, 17 January 2008
Contents
General
This document outlines the format in which ccLearn would like to receive syndication feeds for the data that will go into it's OER database.
The data must be supplied in an Atom or RSS format. These are two very well documented XML formats and are implemented by many content management systems.
NOTE: The sample Atom and RSS feeds below mostly implement the minimum elements required by the respective specification plus the fields that ccLearn needs. For our purposes, a feed must minimally contain the elements in the examples below, but may also contain any other valid elements.
Presently, ccLearn is looking for the following data:
- Link: Full URL of the referenced resource.
- Title: A brief descriptive title for the resource.
- Summary: A relatively short summary/synopsis of the resource.
- License: This should be a URL to the license e.g. http://creativecommons.org/licenses/by/3.0/.
- Grade level (cc:gradelevel): What grade or level this material is suitable for.
- Language (cc:lang): The language of the referenced resource (not of the your site).
- Subject (cc:subject): A more formal subject name e.g. Mathematics.
CC-specific categories (fields)
Some of these fields do not have native Atom or RSS element definitions. For these fields we suggest that they be embedded as tags. In order for us to be able to recognize these within the feed, the tag content should be of the format
cc:<field>:
For example, the tag for Language would become something like:
cc:lang:es
Another example for Grade level could be:
cc:gradelevel:5-7
The "cc:" specific fields should be embedded precisely as specified above in parentheses:
- Subject: cc:subject:
- Grade level: cc:gradelevel:
- Language: cc:lang:
Specifying Language
When specifying the language for a resource, the value should be specifed as the ISO-639-1 code. For example, en
for English. When specifying a national dialect, the IS-3166 alpha-2 code should be appeneded. For example, to distinguish English (United States) from English (United Kindgom), the language would be specified as en-US
and en-GB
, respectively.
Embedding license data
Since the licensing of a resource is expected to be conveyed via URL, we can leverage the Atom <link> element. However we must markup the link element so as to identify is as a license URL. This is accomplished with adding an the attribute rel="license" to the <link> element. For example:
<link rel="license" href="http://creativecommons.org/licenses/by/3.0/" />
See the complete CC+Atom documentation for more information.
Examples
Atom 1.0 example
Here is a sample, one entry Atom 1.0 feed which implements the guidelines above.
<feed xmlns="http://www.w3.org/2005/Atom"> <id>http://oersite.org/cc/</id> <title>OER Aggregation Web Site</title> <updated>2008-01-16T12:00:00Z</updated> <link rel="self" href="http://oersite.org/cc/atom.xml" type="application/atom+xml" /> <author> <name>John Q. Public</name> <email>webmaster@oersite.org</email> </author> <entry> <id>tag:ocw.org,2007-10-15:/math/101</id> <updated>2007-10-15T12:00:00Z</updated> <link href="http://ocw.org/math/101" /> <title>Math 101</title> <summary>Basic mathematics for 5th graders</summary> <link rel="license" href="http://creativecommons.org/licenses/by/3.0/" /> <category term="cc:subject:Math" /> <category term="cc:gradelevel:5-7" /> <category term="cc:lang:en" /> </entry> </feed>
RSS 2.0 example
Here is a sample, one entry RSS 2.0 feed which implements the guidelines above.
<?xml version="1.0"?> <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" > <channel> <title>OER Web Site</title> <link>http://oersite.org/</link> <atom:link rel="self" href="http://oersite.org/cc/rss20.xml" type="application/atom+xml" /> <description>OER Aggregation Web Site</description> <lastBuildDate>Wed, 16 Jan 2008 15:00:00 -0800</lastBuildDate> <webMaster>webmaster@oersite.org (John Q. Public)</webMaster> <item> <guid isPermaLink="false">tag:ocw.org,2007-10-15:/math/101</guid> <pubDate>Mon, 12 Nov 2007 09:15:00 -0800</pubDate> <link>http://ocw.org/math/101</link> <title>Math 101</title> <description>Basic mathematics for 5th graders</description> <creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license> <category>cc:subject:Math</category> <category>cc:gradelevel:5-7</category> <category>cc:lang:en</category> </item> </channel> </rss>