<!--{{{-->
<link rel='alternate' type='application/rss+xml' title='RSS' href='index.xml' />
<!--}}}-->
Background: #fff
Foreground: #000
PrimaryPale: #8cf
PrimaryLight: #18f
PrimaryMid: #04b
PrimaryDark: #014
SecondaryPale: #ffc
SecondaryLight: #fe8
SecondaryMid: #db4
SecondaryDark: #841
TertiaryPale: #eee
TertiaryLight: #ccc
TertiaryMid: #999
TertiaryDark: #666
Error: #f88
/*{{{*/
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}

a {color:[[ColorPalette::PrimaryMid]];}
a:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}
a img {border:0;}

h1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}
h1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}
h2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}

.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}
.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}
.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}

.header {background:[[ColorPalette::PrimaryMid]];}
.headerShadow {color:[[ColorPalette::Foreground]];}
.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}
.headerForeground {color:[[ColorPalette::Background]];}
.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}

.tabSelected{color:[[ColorPalette::PrimaryDark]];
	background:[[ColorPalette::TertiaryPale]];
	border-left:1px solid [[ColorPalette::TertiaryLight]];
	border-top:1px solid [[ColorPalette::TertiaryLight]];
	border-right:1px solid [[ColorPalette::TertiaryLight]];
}
.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}
.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}
.tabContents .button {border:0;}

#sidebar {}
#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}
#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}
#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}

.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}
.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}
.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}
.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];
	border:1px solid [[ColorPalette::PrimaryMid]];}
.wizardStep.wizardStepDone {background:[[ColorPalette::TertiaryLight]];}
.wizardFooter {background:[[ColorPalette::PrimaryPale]];}
.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}
.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;
	border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}
.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}
.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;
	border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}

.wizard .notChanged {background:transparent;}
.wizard .changedLocally {background:#80ff80;}
.wizard .changedServer {background:#8080ff;}
.wizard .changedBoth {background:#ff8080;}
.wizard .notFound {background:#ffff80;}
.wizard .putToServer {background:#ff80ff;}
.wizard .gotFromServer {background:#80ffff;}

#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}
#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}

.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}

.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}
.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}
.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}
.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}
.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}
.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}

.tiddler .defaultCommand {font-weight:bold;}

.shadow .title {color:[[ColorPalette::TertiaryDark]];}

.title {color:[[ColorPalette::SecondaryDark]];}
.subtitle {color:[[ColorPalette::TertiaryDark]];}

.toolbar {color:[[ColorPalette::PrimaryMid]];}
.toolbar a {color:[[ColorPalette::TertiaryLight]];}
.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}
.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}

.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}
.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}
.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}
.tagging .button, .tagged .button {border:none;}

.footer {color:[[ColorPalette::TertiaryLight]];}
.selected .footer {color:[[ColorPalette::TertiaryMid]];}

.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}
.sparktick {background:[[ColorPalette::PrimaryDark]];}

.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}
.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}
.lowlight {background:[[ColorPalette::TertiaryLight]];}

.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}

.imageLink, #displayArea .imageLink {background:transparent;}

.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}

.viewer .listTitle {list-style-type:none; margin-left:-2em;}
.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}
.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}

.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}
.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}
.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}

.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}
.viewer code {color:[[ColorPalette::SecondaryDark]];}
.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}

.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}

.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}
.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}
.editorFooter {color:[[ColorPalette::TertiaryMid]];}
.readOnly {background:[[ColorPalette::TertiaryPale]];}

#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}
#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }
#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}
#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}
#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}
#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}
.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}
.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}
#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity=60)';}
/*}}}*/
/*{{{*/
* html .tiddler {height:1%;}

body {font-size:.75em; font-family:arial,helvetica; margin:0; padding:0;}

h1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}
h1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}
h4,h5,h6 {margin-top:1em;}
h1 {font-size:1.35em;}
h2 {font-size:1.25em;}
h3 {font-size:1.1em;}
h4 {font-size:1em;}
h5 {font-size:.9em;}

hr {height:1px;}

a {text-decoration:none;}

dt {font-weight:bold;}

ol {list-style-type:decimal;}
ol ol {list-style-type:lower-alpha;}
ol ol ol {list-style-type:lower-roman;}
ol ol ol ol {list-style-type:decimal;}
ol ol ol ol ol {list-style-type:lower-alpha;}
ol ol ol ol ol ol {list-style-type:lower-roman;}
ol ol ol ol ol ol ol {list-style-type:decimal;}

.txtOptionInput {width:11em;}

#contentWrapper .chkOptionInput {border:0;}

.externalLink {text-decoration:underline;}

.indent {margin-left:3em;}
.outdent {margin-left:3em; text-indent:-3em;}
code.escaped {white-space:nowrap;}

.tiddlyLinkExisting {font-weight:bold;}
.tiddlyLinkNonExisting {font-style:italic;}

/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */
a.tiddlyLinkNonExisting.shadow {font-weight:bold;}

#mainMenu .tiddlyLinkExisting,
	#mainMenu .tiddlyLinkNonExisting,
	#sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}
#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}

.header {position:relative;}
.header a:hover {background:transparent;}
.headerShadow {position:relative; padding:4.5em 0 1em 1em; left:-1px; top:-1px;}
.headerForeground {position:absolute; padding:4.5em 0 1em 1em; left:0px; top:0px;}

.siteTitle {font-size:3em;}
.siteSubtitle {font-size:1.2em;}

#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}

#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}
#sidebarOptions {padding-top:0.3em;}
#sidebarOptions a {margin:0 0.2em; padding:0.2em 0.3em; display:block;}
#sidebarOptions input {margin:0.4em 0.5em;}
#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}
#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}
#sidebarOptions .sliderPanel input {margin:0 0 0.3em 0;}
#sidebarTabs .tabContents {width:15em; overflow:hidden;}

.wizard {padding:0.1em 1em 0 2em;}
.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0; margin:0.4em 0 0.2em;}
.wizardStep {padding:1em 1em 1em 1em;}
.wizard .button {margin:0.5em 0 0; font-size:1.2em;}
.wizardFooter {padding:0.8em 0.4em 0.8em 0;}
.wizardFooter .status {padding:0 0.4em; margin-left:1em;}
.wizard .button {padding:0.1em 0.2em;}

#messageArea {position:fixed; top:2em; right:0; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}
.messageToolbar {display:block; text-align:right; padding:0.2em;}
#messageArea a {text-decoration:underline;}

.tiddlerPopupButton {padding:0.2em;}
.popupTiddler {position: absolute; z-index:300; padding:1em; margin:0;}

.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}
.popup .popupMessage {padding:0.4em;}
.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0;}
.popup li.disabled {padding:0.4em;}
.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}
.listBreak {font-size:1px; line-height:1px;}
.listBreak div {margin:2px 0;}

.tabset {padding:1em 0 0 0.5em;}
.tab {margin:0 0 0 0.25em; padding:2px;}
.tabContents {padding:0.5em;}
.tabContents ul, .tabContents ol {margin:0; padding:0;}
.txtMainTab .tabContents li {list-style:none;}
.tabContents li.listLink { margin-left:.75em;}

#contentWrapper {display:block;}
#splashScreen {display:none;}

#displayArea {margin:1em 17em 0 14em;}

.toolbar {text-align:right; font-size:.9em;}

.tiddler {padding:1em 1em 0;}

.missing .viewer,.missing .title {font-style:italic;}

.title {font-size:1.6em; font-weight:bold;}

.missing .subtitle {display:none;}
.subtitle {font-size:1.1em;}

.tiddler .button {padding:0.2em 0.4em;}

.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}
.isTag .tagging {display:block;}
.tagged {margin:0.5em; float:right;}
.tagging, .tagged {font-size:0.9em; padding:0.25em;}
.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}
.tagClear {clear:both;}

.footer {font-size:.9em;}
.footer li {display:inline;}

.annotation {padding:0.5em; margin:0.5em;}

* html .viewer pre {width:99%; padding:0 0 1em 0;}
.viewer {line-height:1.4em; padding-top:0.5em;}
.viewer .button {margin:0 0.25em; padding:0 0.25em;}
.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}
.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}

.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}
.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}
table.listView {font-size:0.85em; margin:0.8em 1.0em;}
table.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}

.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}
.viewer code {font-size:1.2em; line-height:1.4em;}

.editor {font-size:1.1em;}
.editor input, .editor textarea {display:block; width:100%; font:inherit;}
.editorFooter {padding:0.25em 0; font-size:.9em;}
.editorFooter .button {padding-top:0px; padding-bottom:0px;}

.fieldsetFix {border:0; padding:0; margin:1px 0px;}

.sparkline {line-height:1em;}
.sparktick {outline:0;}

.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}
.zoomer div {padding:1em;}

* html #backstage {width:99%;}
* html #backstageArea {width:99%;}
#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em;}
#backstageToolbar {position:relative;}
#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em;}
#backstageButton {display:none; position:absolute; z-index:175; top:0; right:0;}
#backstageButton a {padding:0.1em 0.4em; margin:0.1em;}
#backstage {position:relative; width:100%; z-index:50;}
#backstagePanel {display:none; z-index:100; position:absolute; width:90%; margin-left:3em; padding:1em;}
.backstagePanelFooter {padding-top:0.2em; float:right;}
.backstagePanelFooter a {padding:0.2em 0.4em;}
#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}

.whenBackstage {display:none;}
.backstageVisible .whenBackstage {display:block;}
/*}}}*/
/***
StyleSheet for use when a translation requires any css style changes.
This StyleSheet can be used directly by languages such as Chinese, Japanese and Korean which need larger font sizes.
***/
/*{{{*/
body {font-size:0.8em;}
#sidebarOptions {font-size:1.05em;}
#sidebarOptions a {font-style:normal;}
#sidebarOptions .sliderPanel {font-size:0.95em;}
.subtitle {font-size:0.8em;}
.viewer table.listView {font-size:0.95em;}
/*}}}*/
/*{{{*/
@media print {
#mainMenu, #sidebar, #messageArea, .toolbar, #backstageButton, #backstageArea {display: none !important;}
#displayArea {margin: 1em 1em 0em;}
noscript {display:none;} /* Fixes a feature in Firefox 1.5.0.2 where print preview displays the noscript content */
}
/*}}}*/
<!--{{{-->
<div class='header' macro='gradient vert [[ColorPalette::PrimaryLight]] [[ColorPalette::PrimaryMid]]'>
<div class='headerShadow'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
<div class='headerForeground'>
<span class='siteTitle' refresh='content' tiddler='SiteTitle'></span>&nbsp;
<span class='siteSubtitle' refresh='content' tiddler='SiteSubtitle'></span>
</div>
</div>
<div id='mainMenu' refresh='content' tiddler='MainMenu'></div>
<div id='sidebar'>
<div id='sidebarOptions' refresh='content' tiddler='SideBarOptions'></div>
<div id='sidebarTabs' refresh='content' force='true' tiddler='SideBarTabs'></div>
</div>
<div id='displayArea'>
<div id='messageArea'></div>
<div id='tiddlerDisplay'></div>
</div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::ViewToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date'></span> (<span macro='message views.wikified.createdPrompt'></span> <span macro='view created date'></span>)</div>
<div class='tagging' macro='tagging'></div>
<div class='tagged' macro='tags'></div>
<div class='viewer' macro='view text wikified'></div>
<div class='tagClear'></div>
<!--}}}-->
<!--{{{-->
<div class='toolbar' macro='toolbar [[ToolbarCommands::EditToolbar]]'></div>
<div class='title' macro='view title'></div>
<div class='editor' macro='edit title'></div>
<div macro='annotations'></div>
<div class='editor' macro='edit text'></div>
<div class='editor' macro='edit tags'></div><div class='editorFooter'><span macro='message views.editor.tagPrompt'></span><span macro='tagChooser excludeLists'></span></div>
<!--}}}-->
To get started with this blank [[TiddlyWiki]], you'll need to modify the following tiddlers:
* [[SiteTitle]] & [[SiteSubtitle]]: The title and subtitle of the site, as shown above (after saving, they will also appear in the browser title bar)
* [[MainMenu]]: The menu (usually on the left)
* [[DefaultTiddlers]]: Contains the names of the tiddlers that you want to appear when the TiddlyWiki is opened
You'll also need to enter your username for signing your edits: <<option txtUserName>>
These [[InterfaceOptions]] for customising [[TiddlyWiki]] are saved in your browser

Your username for signing your edits. Write it as a [[WikiWord]] (eg [[JoeBloggs]])

<<option txtUserName>>
<<option chkSaveBackups>> [[SaveBackups]]
<<option chkAutoSave>> [[AutoSave]]
<<option chkRegExpSearch>> [[RegExpSearch]]
<<option chkCaseSensitiveSearch>> [[CaseSensitiveSearch]]
<<option chkAnimate>> [[EnableAnimations]]

----
Also see [[AdvancedOptions]]
<<importTiddlers>>
>It is characteristic of scientific life that it is easy when you have a problem to work on. The hard part is finding your problem.\n\nFreeman Dyson, from Creativity, by Mihaly Csikszentmihalyi
<<<\nIt is autonomy that leads to engagement and its engagement that allows us to learn. However, if we had to pick a model that excelled at stamping out autonomy, we'd do well to pick schools. Autonomy requires control over four key variables: task, technique, team and time. When we have autonomy, we are able to choose what to do (task), how to do it (technique), who to do it with (team), and when to do it (time). \n<<<\n\n[[Source|http://www.ed4wb.org/?p=472]]\n\n>how all too often learning instead remains process-driven and degenerates into schoolwork\n\n<<<\nThe work that characterizes classroom life may have originally been conceived with learning goals in mind, and it may even achieve some learning objectives, but from the standpoint of students, doing schoolwork is what school is about. It is their job, not attaining learning goals....We could find nothing in *children’s talk about their classrooms+ ... .to suggest that the children thought of themselves as learners ... .By interpreting learning activities as jobs to be done, students not only concretize them but assimilate them to the rich knowledge structure that surrounds work in industrialized societies. Even young children know something about what it means to have a job, to be a good worker, to take pride in a job well done, and so on. All this knowledge can immediately be brought to bear on schoolwork, making what might otherwise be an incomprehensible enterprise something easy to understand and adjust to. The drawback, however, is that schoolwork rather than learning becomes the object of effort.\n<<<
[[Notes from Fytton Roland 1998|http://www.bodley.ox.ac.uk/icsu/rowlandppr.htm]]\n\nbooks are for the teaching library, journals for the research library\n\n!!! Library Roles\nThe traditional roles of the librarian in the era of print can be defined as follows.\n\n* Collection development and acquisition: to select and purchase material - printed journals, abstracts and indexes, monographs, etc.\n* Cataloguing and classification: to organise and provide access to information - physically and via lists and catalogues.\n* Circulation: to reserve materials for and lend materials to users, and recover materials from them.\n* Reference work: to advise library users and to provide and facilitate quick and easy access to information.\n* Preservation, conservation and archiving: to archive, preserve and conserve information in perpetuit.
{{{\n<script type="text/javascript">\n\n/***********************************************\n* Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)\n* This notice MUST stay intact for legal use\n* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code\n***********************************************/\n\nvar bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)\nvar loadedobjects=""\nvar rootdomain="http://"+window.location.hostname\nvar bustcacheparameter=""\n\nfunction ajaxpage(url, containerid){\nvar page_request = false\nif (window.XMLHttpRequest) // if Mozilla, Safari etc\npage_request = new XMLHttpRequest()\nelse if (window.ActiveXObject){ // if IE\ntry {\npage_request = new ActiveXObject("Msxml2.XMLHTTP")\n} \ncatch (e){\ntry{\npage_request = new ActiveXObject("Microsoft.XMLHTTP")\n}\ncatch (e){}\n}\n}\nelse\nreturn false\npage_request.onreadystatechange=function(){\nloadpage(page_request, containerid)\n}\nif (bustcachevar) //if bust caching of external page\nbustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()\npage_request.open('GET', url+bustcacheparameter, true)\npage_request.send(null)\n}\n\nfunction loadpage(page_request, containerid){\nif (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))\ndocument.getElementById(containerid).innerHTML=page_request.responseText\n}\n\nfunction loadobjs(){\nif (!document.getElementById)\nreturn\nfor (i=0; i<arguments.length; i++){\nvar file=arguments[i]\nvar fileref=""\nif (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding\nif (file.indexOf(".js")!=-1){ //If object is a js file\nfileref=document.createElement('script')\nfileref.setAttribute("type","text/javascript");\nfileref.setAttribute("src", file);\n}\nelse if (file.indexOf(".css")!=-1){ //If object is a css file\nfileref=document.createElement("link")\nfileref.setAttribute("rel", "stylesheet");\nfileref.setAttribute("type", "text/css");\nfileref.setAttribute("href", file);\n}\n}\nif (fileref!=""){\ndocument.getElementsByTagName("head").item(0).appendChild(fileref)\nloadedobjects+=file+" " //Remember this object as being already added to page\n}\n}\n}\n\n</script>\n}}}
kinds of support provided to encourage success inclusive advising, entrepreneurial financial aid, creative student work opportunities, pragmatic career counseling, crisis interventions should be documented\n\nGaston, Paul L.; Schneider, Carol Geary (Foreword by). Challenge of Bologna : What United States Higher Education Has to Learn from Europe, and Why It Matters That We Learn It.\nSterling, VA, USA: Stylus Publishing, 2010. p 219.\nhttp://site.ebrary.com/lib/wcsueb/Doc?id=10545772&ppg=219\nCopyright © 2010. Stylus Publishing. All rights reserved.
/***\n|''Name''|SimpleSearchPlugin|\n|''Description''|displays search results as a simple list of matching tiddlers|\n|''Authors''|FND|\n|''Version''|0.4.0|\n|''Status''|stable|\n|''Source''|http://devpad.tiddlyspot.com/#SimpleSearchPlugin|\n|''CodeRepository''|http://svn.tiddlywiki.org/Trunk/contributors/FND/plugins/SimpleSearchPlugin.js|\n|''License''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|\n|''Keywords''|search|\n!Revision History\n!!v0.2.0 (2008-08-18)\n* initial release\n!!v0.3.0 (2008-08-19)\n* added Open All button (renders Classic Search option obsolete)\n* sorting by relevance (title matches before content matches)\n!!v0.4.0 (2008-08-26)\n* added tag matching\n!To Do\n* tag matching optional\n* animations for container creation and removal\n* when clicking on search results, do not scroll to the respective tiddler (optional)\n* use template for search results\n!Code\n***/\n//{{{\nif(!version.extensions.SimpleSearchPlugin) { //# ensure that the plugin is only installed once\nversion.extensions.SimpleSearchPlugin = { installed: true };\n\nif(!plugins) { var plugins = {}; }\nplugins.SimpleSearchPlugin = {\n heading: "Search Results",\n containerId: "searchResults",\n btnCloseLabel: "close",\n btnCloseTooltip: "dismiss search results",\n btnCloseId: "search_close",\n btnOpenLabel: "Open all",\n btnOpenTooltip: "open all search results",\n btnOpenId: "search_open",\n \n displayResults: function(matches, query) {\n story.refreshAllTiddlers(true); // update highlighting within story tiddlers\n var el = document.getElementById(this.containerId);\n query = '"""' + query + '"""'; // prevent WikiLinks\n if(el) {\n removeChildren(el);\n } else { //# fallback: use displayArea as parent\n var container = document.getElementById("displayArea");\n el = document.createElement("div");\n el.setAttribute("id", this.containerId);\n el = container.insertBefore(el, container.firstChild);\n }\n var msg = "!" + this.heading + "\sn";\n if(matches.length > 0) {\n msg += "''" + config.macros.search.successMsg.format([matches.length.toString(), query]) + ":''\sn";\n this.results = [];\n for(var i = 0 ; i < matches.length; i++) {\n this.results.push(matches[i].title);\n msg += "* [[" + matches[i].title + "]]\sn";\n }\n } else {\n msg += "''" + config.macros.search.failureMsg.format([query]) + "''"; // XXX: do not use bold here!?\n }\n createTiddlyButton(el, this.btnCloseLabel, this.btnCloseTooltip, plugins.SimpleSearchPlugin.closeResults, "button", this.btnCloseId);\n wikify(msg, el);\n if(matches.length > 0) { // XXX: redundant!?\n createTiddlyButton(el, this.btnOpenLabel, this.btnOpenTooltip, plugins.SimpleSearchPlugin.openAll, "button", this.btnOpenId);\n }\n },\n\n closeResults: function() {\n var el = document.getElementById(plugins.SimpleSearchPlugin.containerId);\n removeNode(el);\n plugins.SimpleSearchPlugin.results = null;\n highlightHack = null;\n },\n\n openAll: function(ev) {\n story.displayTiddlers(null, plugins.SimpleSearchPlugin.results);\n return false;\n }\n};\n\nconfig.shadowTiddlers.StyleSheetSimpleSearch = "/*{{{*/\sn" +\n "#" + plugins.SimpleSearchPlugin.containerId + " {\sn" +\n "\stoverflow: auto;\sn" +\n "\stpadding: 5px 1em 10px;\sn" +\n "\stbackground-color: [[ColorPalette::TertiaryPale]];\sn" +\n "}\sn\sn" +\n "#" + plugins.SimpleSearchPlugin.containerId + " h1 {\sn" +\n "\stmargin-top: 0;\sn" +\n "\stborder: none;\sn" +\n "}\sn\sn" +\n "#" + plugins.SimpleSearchPlugin.containerId + " ul {\sn" +\n "\stmargin: 0.5em;\sn" +\n "\stpadding-left: 1.5em;\sn" +\n "}\sn\sn" +\n "#" + plugins.SimpleSearchPlugin.containerId + " .button {\sn" +\n "\stdisplay: block;\sn" +\n "\stborder-color: [[ColorPalette::TertiaryDark]];\sn" +\n "\stpadding: 5px;\sn" +\n "\stbackground-color: [[ColorPalette::TertiaryLight]];\sn" +\n "}\sn\sn" +\n "#" + plugins.SimpleSearchPlugin.containerId + " .button:hover {\sn" +\n "\stborder-color: [[ColorPalette::SecondaryMid]];\sn" +\n "\stbackground-color: [[ColorPalette::SecondaryLight]];\sn" +\n "}\sn\sn" +\n "#" + plugins.SimpleSearchPlugin.btnCloseId + " {\sn" +\n "\stfloat: right;\sn" +\n "\stmargin: -5px -1em 5px 5px;\sn" +\n "}\sn\sn" +\n "#" + plugins.SimpleSearchPlugin.btnOpenId + " {\sn" +\n "\stfloat: left;\sn" +\n "\stmargin-top: 5px;\sn" +\n "}\sn" +\n "/*}}}*/";\nstore.addNotification("StyleSheetSimpleSearch", refreshStyles);\n\n// override Story.search()\nStory.prototype.search = function(text, useCaseSensitive, useRegExp) {\n highlightHack = new RegExp(useRegExp ? text : text.escapeRegExp(), useCaseSensitive ? "mg" : "img");\n var matches = store.search(highlightHack, null, "excludeSearch");\n var q = useRegExp ? "/" : "'";\n plugins.SimpleSearchPlugin.displayResults(matches, q + text + q);\n};\n\n// override TiddlyWiki.search() to sort by relevance\nTiddlyWiki.prototype.search = function(searchRegExp, sortField, excludeTag, match) {\n var candidates = this.reverseLookup("tags", excludeTag, !!match);\n var primary = [];\n var secondary = [];\n var tertiary = [];\n for(var t = 0; t < candidates.length; t++) {\n if(candidates[t].title.search(searchRegExp) != -1) {\n primary.push(candidates[t]);\n } else if(candidates[t].tags.join(" ").search(searchRegExp) != -1) {\n secondary.push(candidates[t]);\n } else if(candidates[t].text.search(searchRegExp) != -1) {\n tertiary.push(candidates[t]);\n }\n }\n var results = primary.concat(secondary).concat(tertiary);\n if(sortField) {\n results.sort(function(a, b) {\n return a[sortField] < b[sortField] ? -1 : (a[sortField] == b[sortField] ? 0 : +1);\n });\n }\n return results;\n};\n\n} //# end of "install only once"\n//}}}
[[This came from this article in XML.com|http://www.xml.com/pub/a/2003/03/05/tmrdb.html]]\n\n[img[/filestore/uploads/topic-maps/topic-maps.png]]\n\n>This approach is so powerful one might wonder whether all data could be stored as topics, associations, and occurrences.
[[Maco Reference|http://www.tiddlywiki.org/wiki/Category:Macros]]
Don't ever make the mistake [of thinking] that you can design something better than what you get from ruthless massively parallel trial-and-error with a feedback cycle. That's giving your intelligence much too much credit. (Linus Torvalds)
PageTemplate\nStyleSheet\nMainMenu\nDefaultTiddlers\n<<toggleSideBar>> \n
<<<\nAre universities mostly sorting devices to separate smart and hard-working high school students from their less-able fellows so that employers can more easily identify them? Are universities factories for the dissemination of job skills? Are universities mostly boot camps for adulthood, where young people learn how to drink moderately, fornicate meaningfully and hand things in on time?\n<<<\n\n[[David Brooks|http://www.nytimes.com/2013/04/05/opinion/Brooks-The-Practical-University.html?hp&_r=0]]\n\n<<<\nTo use one of Oakeshott's favorite examples, if one has no knowledge of cookery, a cookbook is useless. If, on the other hand, one is an experienced chef, a cookbook is superfluous. The cookbook is relevant only in a situation where either the great majority of cooks are relatively inexperienced and there is a dearth of connoisseurs or in a situation in which the traditions of cookery are in a state of confusion and a reminder is needed of some of the tradition's neglected resources.\n<<<\n\n<<<\nThe right pace, neither slow nor fast, cannot get into the hand unless it comes from the heart. It is a thing that cannot be put into words; there is an art in it that I cannot explain to my son\n<<<\n\n<<<\nthe ability to be assertive in a meeting; to disagree pleasantly; to know when to interrupt and when not to; to understand the flow of discussion and how to change people's minds; to attract mentors; to understand situations; to discern what can change and what can't\n<<<
<html>\n<div id="article-body" class="article-body">\n \n <div class="maintitle">\n<div id="icon-row" class="icons salaries">\n<a href="/article/Almanac-2013-Profession/140793/?sn" class="icon-salaries active" style="cursor: default;"><img src="/img/photos/biz/2013_profession_icon.gif" alt="" style="margin-left: 0px;"></a> <a href="/article/Almanac-2013-Students/140795/?sn" class="icon-demo"><img src="/img/photos/biz/2013_students_icon.gif" alt=""></a> <a href="/article/Almanac-2013-Diversity/140797/?sn" class="icon-access"><img src="/img/photos/biz/2013_diversity_icon.gif" alt=""></a> <a href="/article/Almanac-2013-Finance/140799/?sn" class="icon-finance"><img src="/img/photos/biz/2013_finance_icon.gif" alt=""></a> <a href="/article/Almanac-2013-Technology/140801/?sn" class="icon-tech"><img src="/img/photos/biz/2013_technology_icon.gif" alt=""></a> <a href="/article/Almanac-2012-International/140803/?sn" class="icon-international"><img src="/img/photos/biz/2013_international_icon.gif" alt=""></a> <a href="/article/Almanac-2012-States/140805/?sn" class="icon-states"><img src="/img/photos/biz/2013_states_icon.gif" alt=""></a></div>\n<h1>Institutions That Granted the Most Bachelor's Degrees in 2011</h1>\n</div>\n<div class="article-asset">Two for-profit institutions, the University of Phoenix and Ashford University, and one private religious institution, Brigham Young University, joined major public universities on the top-25 list. \n<div class="dataTables_wrapper"><table class="table-sort disable-length-change disable-info" border="0" cellspacing="0">\n<thead> \n<tr>\n<th class="disable-search enable-sort sorting_asc" style="width:48px;"><span class="col-title" id="col_title_0" style="margin-left:5px;">Rank</span></th> <th class="disable-search enable-sort sorting" style="width:346px;"><span class="col-title" id="col_title_1" style="margin-left:139px;">Institution</span></th> <th class="disable-search enable-sort sorting" style="width:175px;"><span class="col-title" id="col_title_2" style="margin-left:31px;"> Number of Degrees </span></th>\n</tr>\n</thead> \n\n<tbody><tr class="odd">\n<td class=" sorting_1">1.</td>\n<td class="align-left">U. of Phoenix-online campus</td>\n<td>21,638</td>\n</tr><tr class="even">\n<td class=" sorting_1">2.</td>\n<td class="align-left">Arizona State U.</td>\n<td>12,194</td>\n</tr><tr class="odd">\n<td class=" sorting_1">3.</td>\n<td class="align-left">Pennsylvania State U. at University Park</td>\n<td>11,438</td>\n</tr><tr class="even">\n<td class=" sorting_1">4.</td>\n<td class="align-left">U. of Central Florida</td>\n<td>10,646</td>\n</tr><tr class="odd">\n<td class=" sorting_1">5.</td>\n<td class="align-left">Ohio State U.</td>\n<td>10,291</td>\n</tr><tr class="even">\n<td class=" sorting_1">6.</td>\n<td class="align-left">U. of Texas at Austin</td>\n<td>9,054</td>\n</tr><tr class="odd">\n<td class=" sorting_1">7.</td>\n<td class="align-left">Ashford U.</td>\n<td>8,839</td>\n</tr><tr class="even">\n<td class=" sorting_1">8.</td>\n<td class="align-left">Texas A&amp;M U. at College Station</td>\n<td>8,748</td>\n</tr><tr class="odd">\n<td class=" sorting_1">9.</td>\n<td class="align-left">U. of Florida</td>\n<td>8,685</td>\n</tr><tr class="even">\n<td class=" sorting_1">10.</td>\n<td class="align-left">Michigan State U.</td>\n<td>8,018</td>\n</tr><tr class="odd">\n<td class=" sorting_1">11.</td>\n<td class="align-left">Florida State U.</td>\n<td>7,886</td>\n</tr><tr class="even">\n<td class=" sorting_1">12.</td>\n<td class="align-left">U. of Washington</td>\n<td>7,590</td>\n</tr><tr class="odd">\n<td class=" sorting_1">13.</td>\n<td class="align-left">U. of California at Los Angeles</td>\n<td>7,546</td>\n</tr><tr class="even">\n<td class=" sorting_1">14.</td>\n<td class="align-left">U. of California at Berkeley</td>\n<td>7,466</td>\n</tr><tr class="odd">\n<td class=" sorting_1">15.</td>\n<td class="align-left">U. of Illinois at Urbana-Champaign</td>\n<td>7,342</td>\n</tr><tr class="even">\n<td class=" sorting_1">16.</td>\n<td class="align-left">Indiana U. at Bloomington</td>\n<td>7,155</td>\n</tr><tr class="odd">\n<td class=" sorting_1">17.</td>\n<td class="align-left">Brigham Young U.</td>\n<td>7,097</td>\n</tr><tr class="even">\n<td class=" sorting_1">18.</td>\n<td class="align-left">Purdue U. at West Lafayette</td>\n<td>7,049</td>\n</tr><tr class="odd">\n<td class=" sorting_1">19.</td>\n<td class="align-left">U. of Minnesota-Twin Cities</td>\n<td>7,031</td>\n</tr><tr class="even">\n<td class=" sorting_1">20.</td>\n<td class="align-left">U. of Maryland at College Park</td>\n<td>6,987</td>\n</tr><tr class="odd">\n<td class=" sorting_1">21.</td>\n<td class="align-left">California State U. at Fullerton</td>\n<td>6,875</td>\n</tr><tr class="even">\n<td class=" sorting_1">22.</td>\n<td class="align-left">U. of Georgia</td>\n<td>6,845</td>\n</tr><tr class="odd">\n<td class=" sorting_1">23.</td>\n<td class="align-left">U. of South Florida</td>\n<td>6,766</td>\n</tr><tr class="even">\n<td class=" sorting_1">24.</td>\n<td class="align-left">California State U. at Long Beach</td>\n<td>6,746</td>\n</tr><tr class="odd">\n<td class=" sorting_1">25.</td>\n<td class="align-left">California State U. at Northridge</td>\n<td>6,723</td>\n</tr></tbody></table></div>\n<br> Note: Only first majors are counted in the total number of degrees per institution.<br>\n<div>Source: U.S. Education Department</div>\n</div>\n </div>\n</html>
[img[/filestore/uploads/highered/collegegraph.png]]
<<<\nPerhaps most important, this new wave of innovation relies on a disaggregation within higher education, a common phenomenon in mature industries but one that the higher education industry has remarkably resisted for centuries. Indeed, one could argue that the core of the educational enterprise has always been vertically integrated in the body of the faculty. That is, faculty members have thought up new courses and programs, developed syllabi, outlined learning objectives, "curated" the necessary content and learning artifacts (mostly choosing books and chapters and articles), walked the proposed courses/programs through necessary approvals (governance), taught the courses/programs, advised students, stepped in when students needed help, administered assessments and graded performance, and periodically revised the course/program. That was the way of the world until online technology entered the picture.\n\nOnline learning has disaggregated the model. Today, various players perform various aspects of what was once the exclusive province of faculty:\n\n* A faculty member might be hired as the subject matter expert to develop a course but never teach it or be involved in it again.\n* Faculty might be hired to teach a course that is already developed and handed to them, with little room for them to change the course (common in large-scale programs where standardization is important).\n* Third-party providers (e.g., Smarthinking) might provide student tutorial help.\n* Students might turn to a peer-to-peer learning network (e.g., OpenStudy) instead of to faculty when they run into trouble.\n* Adaptive learning technologies might intelligently guide a student's pathway through the learning content.\n* The person assessing a student's work might not be the faculty member teaching the course (e.g., Western Governors University) and some MOOCs using peer assessment).\n* Self-guided learning models (e.g., the College for America program at Southern New Hampshire University) might have no faculty instruction at all.\n\n<<<
<<bibliography Bibliography showAll>>
!!!Basic declarations\nThis section contains topic declarations for the fifteen core metadata elements, in aform which can be inserted directly into a topic map.\n4.1\n \nNames\nThe element title is represented as a topic name of type dc:title, since it is clearly anaming property:[title = "Title"@"http://purl.org/dc/elements/1.1/title"]\n\n4.2\n \n!!!Occurrences\nThe elements date, description, identifier and rights are represented as occurrencesof the corresponding type, since their values are strings, dates or URIs:\n[date = "Date"@"http://purl.org/dc/elements/1.1/date"][description = "Description"@"http://purl.org/dc/elements/1.1/description"][identifier = "Identifier"@"http://purl.org/dc/elements/1.1/identifier"][rights = "Rights"@"http://purl.org/dc/elements/1.1/rights"]\n4.3\n \n!!!Associations\nThe elements contributor, coverage, creator,format,language,publisher,relation,source,subject and type are represented as associations of the correspondingtype; in each case, the role played by the resource to which the metadata is bein
<<<\nAnother important factor has been the shift toward competency-based education. At first glance, this seems just the right thing—learners will be taught and then assessed not only on what they know, but mostly on what they can do. Yet at its core, competency-based education means setting the same bar for every learner and doing so at the same relatively low level. Once the educational focus is on competency, the attainment of excellence moves to the back burner. Furthermore, by expecting every student and resident to focus on the same competencies, we tend to overlook each learner's distinctive interests, aptitudes, and experiences, which often end up suffering from inattention.\n<<<
Thomas Krichel talking about librarians\n>Things like digital preservation, repositories, structured metatdata services, recommender services etc don't just appear. Somebody has to build them. They provide equivalents of what physical libraries used to do. If we don't look at this as our job, we will be much reduced in the future.
Moocs come in two flavors, c and x. Below is a graphic that tries to be the best of both. \n\n[img[/filestore/uploads/moocs/dual-mooc.jpg]]\n\n[EduGeek[|http://www.edugeekjournal.com/2014/05/04/designing-a-dual-layer-cmoocxmooc/]]
http://koansys.com/tech/building-python-with-enable-shared-in-non-standard-location
http://www.switch.ch/collection/spec/\n\nhttp://www.cs.colorado.edu/~kena/classes/7818/f06/lectures/19/index.html
Cataloguers: We want something better than MARC.\n\nLoC: Okay, did you have anything specific in mind?\n\nCataloguers: Not really, just.. you know, better.\n\nLoC: Okay, here you go <produces MODS>\n\nCataloguers: No, no, that's not good enough. <insert reason du jour>\n\n!!! Ancillary\n* Reference librarians are whiny and demanding.\n* Systems librarians are arrogant and rude.\n* Users are clueless and uninformed.
http://www.austlit.edu.au:7777/DataModel/inventory.html\n!!!Topic Codes\nhttp://www.austlit.edu.au:7777/Tech%20Doco/systemDocs/codes.html\n\n!!!Main topic types are:\n<html>\n<TABLE BORDER='1'>\n<TR><TD>Code</TD><TD>Name</TD><TD>Comments</TD></TR>\n<TR><TD>A</TD><TD>agent</TD></TR> \n \n<TR><TD>Y</TD><TD>award</TD></TR> \n<TR><TD>R</TD><TD>concept</TD></TR> \n<TR><TD>V</TD><TD>date</TD><TD>stored in its own table</TD></TR> \n \n<TR><TD>L</TD><TD>ethnicity</TD></TR> \n<TR><TD>Z</TD><TD>event</TD></TR> \n\n<TR><TD>E</TD><TD>expression</TD></TR> \n<TR><TD>U</TD><TD>externalReference</TD><TD>typically a URL stored in its own table</TD></TR> \n<TR><TD>i</TD><TD>form</TD></TR> \n<TR><TD>q</TD><TD>formOfExpression</TD></TR> \n<TR><TD>z</TD><TD>gender</TD></TR> \n \n<TR><TD>j</TD><TD>genre</TD></TR> \n<TR><TD>Q</TD><TD>hierarchy</TD></TR> \n<TR><TD>I</TD><TD>institution</TD><TD>stored in its own table</TD></TR> \n<TR><TD>y</TD><TD>language</TD></TR> \n<TR><TD>H</TD><TD>localHoldingInfo</TD><TD>stored in its own table</TD></TR> \n<TR><TD>F</TD><TD>manifestation</TD></TR> \n<TR><TD>G</TD><TD>manifestationAsPart</TD></TR> \n<TR><TD>X</TD><TD>name</TD><TD>stored in its own table - free text indexed</TD></TR> \n<TR><TD>M</TD><TD>nationality</TD></TR> \n<TR><TD>W</TD><TD>periodicalIssue</TD><TD>stored in its own table - record vol, number, period</TD></TR> \n<TR><TD>N</TD><TD>place</TD></TR> \n<TR><TD>a</TD><TD>relationshipType</TD></TR> \n \n<TR><TD>w</TD><TD>reprint</TD></TR> \n<TR><TD>b</TD><TD>roleType</TD></TR> \n<TR><TD>s</TD><TD>subjectiveRank</TD></TR> \n<TR><TD>t</TD><TD>targetUse</TD></TR> \n<TR><TD>T</TD><TD>text</TD><TD>stored in its own table</TD></TR> \n<TR><TD>S</TD><TD>title</TD><TD>stored in its own table - free text indexed</TD></TR> \n<TR><TD>f</TD><TD>topicType</TD></TR> \n<TR><TD>u</TD><TD>user</TD><TD>stored in its own table - defines access profiles</TD></TR> \n<TR><TD>C</TD><TD>work</TD></TR> \n \n<TR><TD>h</TD><TD>workType</TD></TR> \n</TABLE></html>\n\n!!!Codes used for topics, events, identifiers and topicrelationships\n<html>\n<TABLE BORDER=1>\n<TR><TH>Code type</TH><TH>Code</TH><TH>Description</TH></TR>\n<TR><TD>eventType</TD><TD>ZA</TD><TD>creation</TD></TR> \n<TR><TD>eventType</TD><TD>ZA1</TD><TD>creationAllAgents</TD></TR> \n<TR><TD>eventType</TD><TD>ZB</TD><TD>modification</TD></TR> \n<TR><TD>eventType</TD><TD>ZB1</TD><TD>translation</TD></TR> \n<TR><TD>eventType</TD><TD>ZB2</TD><TD>extraction</TD></TR> \n<TR><TD>eventType</TD><TD>ZB3</TD><TD>summarisation</TD></TR> \n<TR><TD>eventType</TD><TD>ZB4</TD><TD>compilation</TD></TR> \n<TR><TD>eventType</TD><TD>ZB5</TD><TD>edited</TD></TR> \n<TR><TD>eventType</TD><TD>ZC</TD><TD>realisation</TD></TR> \n<TR><TD>eventType</TD><TD>ZD</TD><TD>embodiment</TD></TR> \n<TR><TD>eventType</TD><TD>ZP</TD><TD>birth</TD></TR> \n<TR><TD>eventType</TD><TD>ZQ</TD><TD>death</TD></TR> \n<TR><TD>eventType</TD><TD>ZR</TD><TD>employed</TD></TR> \n<TR><TD>eventType</TD><TD>ZS</TD><TD>resident</TD></TR> \n<TR><TD>idType</TD><TD>A</TD><TD>austlitAuthorId</TD></TR> \n<TR><TD>idType</TD><TD>B</TD><TD>austlitBRN</TD></TR> \n<TR><TD>idType</TD><TD>I</TD><TD>ISBN</TD></TR> \n<TR><TD>idType</TD><TD>LA</TD><TD>LuReesAuthorId</TD></TR> \n<TR><TD>idType</TD><TD>NA</TD><TD>NLAAuthorId</TD></TR> \n<TR><TD>idType</TD><TD>NI</TD><TD>NLAImageId</TD></TR> \n<TR><TD>idType</TD><TD>NK</TD><TD>NLAKineticaId</TD></TR> \n<TR><TD>idType</TD><TD>S</TD><TD>ISSN</TD></TR> \n<TR><TD>idType</TD><TD>z</TD><TD>editSeq</TD></TR> \n<TR><TD>relType</TD><TD>D1</TD><TD>workType</TD></TR> \n<TR><TD>relType</TD><TD>D2</TD><TD>form</TD></TR> \n<TR><TD>relType</TD><TD>D3</TD><TD>genre</TD></TR> \n<TR><TD>relType</TD><TD>D6</TD><TD>topic</TD></TR> \n<TR><TD>relType</TD><TD>D8</TD><TD>topicSpatial</TD></TR> \n<TR><TD>relType</TD><TD>D9</TD><TD>topicTemporal</TD></TR> \n<TR><TD>relType</TD><TD>DF</TD><TD>settingSpatial</TD></TR> \n<TR><TD>relType</TD><TD>DG</TD><TD>settingTemporal</TD></TR> \n<TR><TD>relType</TD><TD>Da</TD><TD>isReviewOf</TD></TR> \n<TR><TD>relType</TD><TD>Dg</TD><TD>firstKnownOverrideDate</TD></TR> \n<TR><TD>relType</TD><TD>Dh</TD><TD>subjectWork</TD></TR> \n<TR><TD>relType</TD><TD>Di</TD><TD>subjectAgent</TD></TR> \n<TR><TD>relType</TD><TD>Dk</TD><TD>hasAward</TD></TR> \n<TR><TD>relType</TD><TD>Dm</TD><TD>hasLanguage</TD></TR> \n<TR><TD>relType</TD><TD>Dp</TD><TD>hasFormOfExpression</TD></TR> \n<TR><TD>relType</TD><TD>Dr</TD><TD>hasRepresentationalAttribute</TD></TR> \n<TR><TD>relType</TD><TD>Ds</TD><TD>hasSubjectiveRank</TD></TR> \n<TR><TD>relType</TD><TD>Dt</TD><TD>hasTargetUse</TD></TR> \n<TR><TD>relType</TD><TD>Dx</TD><TD>isManuscript</TD></TR> \n<TR><TD>relType</TD><TD>Dy</TD><TD>hasReprint</TD></TR> \n<TR><TD>relType</TD><TD>E</TD><TD>creator</TD></TR> \n<TR><TD>relType</TD><TD>E1</TD><TD>author</TD></TR> \n<TR><TD>relType</TD><TD>E2</TD><TD>illustrator</TD></TR> \n<TR><TD>relType</TD><TD>E3</TD><TD>translator</TD></TR> \n<TR><TD>relType</TD><TD>E4</TD><TD>sponsor</TD></TR> \n<TR><TD>relType</TD><TD>E5</TD><TD>editor</TD></TR> \n<TR><TD>relType</TD><TD>E6</TD><TD>compiler</TD></TR> \n<TR><TD>relType</TD><TD>E8</TD><TD>publisher</TD></TR> \n<TR><TD>relType</TD><TD>E9</TD><TD>printer</TD></TR> \n<TR><TD>relType</TD><TD>F</TD><TD>hasAnyTitle</TD></TR> \n<TR><TD>relType</TD><TD>F1</TD><TD>title</TD></TR> \n<TR><TD>relType</TD><TD>F2</TD><TD>subtitle</TD></TR> \n<TR><TD>relType</TD><TD>F3</TD><TD>alternateTitle</TD></TR> \n<TR><TD>relType</TD><TD>F4</TD><TD>firstLineOfVerse</TD></TR> \n<TR><TD>relType</TD><TD>F9</TD><TD>hasTitleAtLowerLevel</TD></TR> \n<TR><TD>relType</TD><TD>FX</TD><TD>exactTitle</TD></TR> \n<TR><TD>relType</TD><TD>G1</TD><TD>influencedByWork</TD></TR> \n<TR><TD>relType</TD><TD>G2</TD><TD>influencedByAgent</TD></TR> \n<TR><TD>relType</TD><TD>GA</TD><TD>relatedTo</TD></TR> \n<TR><TD>relType</TD><TD>Ga</TD><TD>isNonALEG</TD></TR> \n<TR><TD>relType</TD><TD>Go</TD><TD>isOrganisation</TD></TR> \n<TR><TD>relType</TD><TD>H1</TD><TD>hasHolding</TD></TR> \n<TR><TD>relType</TD><TD>I</TD><TD>hasIssueDetails</TD></TR> \n<TR><TD>relType</TD><TD>J</TD><TD>isIssueOf</TD></TR> \n<TR><TD>relType</TD><TD>K</TD><TD>partOf</TD></TR> \n<TR><TD>relType</TD><TD>Ka</TD><TD>containedAsPartOf</TD></TR> \n<TR><TD>relType</TD><TD>M1</TD><TD>usesPseudoAgent</TD></TR> \n<TR><TD>relType</TD><TD>N</TD><TD>hasAnyName</TD></TR> \n<TR><TD>relType</TD><TD>N1</TD><TD>name</TD></TR> \n<TR><TD>relType</TD><TD>N2</TD><TD>alternateName</TD></TR> \n<TR><TD>relType</TD><TD>N3</TD><TD>realLegalName</TD></TR> \n<TR><TD>relType</TD><TD>N4</TD><TD>birthName</TD></TR> \n<TR><TD>relType</TD><TD>N5</TD><TD>marriedName</TD></TR> \n<TR><TD>relType</TD><TD>NX</TD><TD>hasExactName</TD></TR> \n<TR><TD>relType</TD><TD>P1</TD><TD>gender</TD></TR> \n<TR><TD>relType</TD><TD>P2</TD><TD>ethnicity</TD></TR> \n<TR><TD>relType</TD><TD>P3</TD><TD>nationality</TD></TR> \n<TR><TD>relType</TD><TD>Q1</TD><TD>note</TD></TR> \n<TR><TD>relType</TD><TD>Q2</TD><TD>abstract</TD></TR> \n<TR><TD>relType</TD><TD>Q3</TD><TD>biography</TD></TR> \n<TR><TD>relType</TD><TD>Q5</TD><TD>bioSource</TD></TR> \n<TR><TD>relType</TD><TD>QA</TD><TD>shortUpdateHistory</TD></TR> \n<TR><TD>relType</TD><TD>Qa</TD><TD>pagination</TD></TR> \n<TR><TD>relType</TD><TD>Qb</TD><TD>illustrations</TD></TR> \n<TR><TD>relType</TD><TD>Qe</TD><TD>physicalDescription</TD></TR> \n<TR><TD>relType</TD><TD>Qj</TD><TD>hasEditionInfo</TD></TR> \n<TR><TD>relType</TD><TD>Qk</TD><TD>hasLimitedEditionInfo</TD></TR> \n<TR><TD>relType</TD><TD>Ql</TD><TD>noteMaintenance</TD></TR> \n<TR><TD>relType</TD><TD>Qm</TD><TD>lawGenre</TD></TR> \n<TR><TD>relType</TD><TD>Qn</TD><TD>lawSource</TD></TR> \n<TR><TD>relType</TD><TD>Qo</TD><TD>lawEditHistory</TD></TR> \n<TR><TD>relType</TD><TD>Qp</TD><TD>lawLocationPapers</TD></TR> \n<TR><TD>relType</TD><TD>Qq</TD><TD>lawFurtherDetails</TD></TR> \n<TR><TD>relType</TD><TD>Qr</TD><TD>lawConversion</TD></TR> \n<TR><TD>relType</TD><TD>Qs</TD><TD>tempSubjects</TD></TR> \n<TR><TD>relType</TD><TD>Qw</TD><TD>tempStmtOfResp</TD></TR> \n<TR><TD>relType</TD><TD>Qx</TD><TD>tempAustlitUpdateInfo</TD></TR> \n<TR><TD>relType</TD><TD>Qy</TD><TD>tempReview</TD></TR> \n<TR><TD>relType</TD><TD>Qz</TD><TD>tempSource</TD></TR> \n<TR><TD>relType</TD><TD>R1</TD><TD>hasExternalReference</TD></TR> \n<TR><TD>relType</TD><TD>U1</TD><TD>birthOf</TD></TR> \n<TR><TD>relType</TD><TD>U5</TD><TD>deathOf</TD></TR> \n<TR><TD>relType</TD><TD>V</TD><TD>hasDate</TD></TR> \n<TR><TD>relType</TD><TD>V2</TD><TD>hasFromDate</TD></TR> \n<TR><TD>relType</TD><TD>V3</TD><TD>hasToDate</TD></TR> \n<TR><TD>relType</TD><TD>W1</TD><TD>hasPlace</TD></TR> \n<TR><TD>relType</TD><TD>Y</TD><TD>usedInput</TD></TR> \n<TR><TD>relType</TD><TD>Z</TD><TD>producedOutput</TD></TR> \n<TR><TD>topicGroup</TD><TD>A</TD><TD>agent</TD></TR> \n<TR><TD>topicGroup</TD><TD>B</TD><TD>agentNonALEG</TD></TR> \n<TR><TD>topicGroup</TD><TD>C</TD><TD>work</TD></TR> \n<TR><TD>topicGroup</TD><TD>D</TD><TD>workNonALEG</TD></TR> \n<TR><TD>topicGroup</TD><TD>E</TD><TD>expression</TD></TR> \n<TR><TD>topicGroup</TD><TD>F</TD><TD>manifestation</TD></TR> \n<TR><TD>topicGroup</TD><TD>G</TD><TD>manifestationAsPart</TD></TR> \n<TR><TD>topicGroup</TD><TD>H</TD><TD>localHoldingInfo</TD></TR> \n<TR><TD>topicGroup</TD><TD>I</TD><TD>institution</TD></TR> \n<TR><TD>topicGroup</TD><TD>L</TD><TD>ethnicity</TD></TR> \n<TR><TD>topicGroup</TD><TD>M</TD><TD>nationality</TD></TR> \n<TR><TD>topicGroup</TD><TD>N</TD><TD>place</TD></TR> \n<TR><TD>topicGroup</TD><TD>Q</TD><TD>hierarchy</TD></TR> \n<TR><TD>topicGroup</TD><TD>R</TD><TD>concept</TD></TR> \n<TR><TD>topicGroup</TD><TD>S</TD><TD>title</TD></TR> \n<TR><TD>topicGroup</TD><TD>T</TD><TD>text</TD></TR> \n<TR><TD>topicGroup</TD><TD>U</TD><TD>externalReference</TD></TR> \n<TR><TD>topicGroup</TD><TD>V</TD><TD>date</TD></TR> \n<TR><TD>topicGroup</TD><TD>W</TD><TD>periodicalIssue</TD></TR> \n<TR><TD>topicGroup</TD><TD>X</TD><TD>name</TD></TR> \n<TR><TD>topicGroup</TD><TD>Y</TD><TD>award</TD></TR> \n<TR><TD>topicGroup</TD><TD>Z</TD><TD>event</TD></TR> \n<TR><TD>topicGroup</TD><TD>a</TD><TD>relationshipType</TD></TR> \n<TR><TD>topicGroup</TD><TD>b</TD><TD>roleType</TD></TR> \n<TR><TD>topicGroup</TD><TD>c</TD><TD>eventType</TD></TR> \n<TR><TD>topicGroup</TD><TD>d</TD><TD>eventRelationshipType</TD></TR> \n<TR><TD>topicGroup</TD><TD>e</TD><TD>generalAttributeValue</TD></TR> \n<TR><TD>topicGroup</TD><TD>f</TD><TD>topicType</TD></TR> \n<TR><TD>topicGroup</TD><TD>h</TD><TD>workType</TD></TR> \n<TR><TD>topicGroup</TD><TD>i</TD><TD>form</TD></TR> \n<TR><TD>topicGroup</TD><TD>j</TD><TD>genre</TD></TR> \n<TR><TD>topicGroup</TD><TD>q</TD><TD>formOfExpression</TD></TR> \n<TR><TD>topicGroup</TD><TD>r</TD><TD>representationalAttribute</TD></TR> \n<TR><TD>topicGroup</TD><TD>s</TD><TD>subjectiveRank</TD></TR> \n<TR><TD>topicGroup</TD><TD>t</TD><TD>targetUse</TD></TR> \n<TR><TD>topicGroup</TD><TD>u</TD><TD>user</TD></TR> \n<TR><TD>topicGroup</TD><TD>w</TD><TD>reprint</TD></TR> \n<TR><TD>topicGroup</TD><TD>x</TD><TD>dummy</TD></TR> \n<TR><TD>topicGroup</TD><TD>y</TD><TD>language</TD></TR> \n<TR><TD>topicGroup</TD><TD>z</TD><TD>gender</TD></TR> \n</TABLE></html>
!!! What are the intents\n* Knowledge duplication (Mitx, Stanford)\n* Knowledge generation (George Siemens)
The government generates lots of information. [[Here's a link|https://metadata.dod.mil/mdr/irs/DDMS/]] to the Department of Defense Metadata Standard
* Object metadata (collection or content, system generated or not)\n* Membership metadata\n* Owner metadata\n* ERC metadata\n* Ingest metadata\n* Resource Map (OAI-RE)\n* Service Level metadata\n* Rights Metadata
Pipeline for handling digital objects \n\n[img[/filestore/uploads/repositories/micro-curation.png]]
!!! Example Site\nThis is from Pearson itself. They just loaded a bunch of stuff from OAI (open archives) sites but it give you some idea of how it might be usefull\nhttp://oer.equella.com/access/home.do\n\n!!!What a repository does\n[img[http://image.slidesharecdn.com/repositoriestheroadlesstravelledmoodlemootnewzealand2011-110728153241-phpapp01/95/slide-10-728.jpg?1311885749]]\n\nExample Site: http://solr.bccampus.ca:8001/bcc/access/home.do\n\n!!!Case Studies\nBritish Columbia: http://www.bccampus.ca/assets/Blog_Photos/Regional-Repositories-Case-Study.pdf\nKentucky: https://depot.kylearningdepot.org/\n\n!!! Digital Repository\nfor Moodle: http://www.slideshare.net/ghenrick/a-look-at-moodle-2-repositories\n\n[img[http://image.slidesharecdn.com/alookatmoodle2repositories-1-0-111014044218-phpapp01/95/slide-14-1024.jpg?1318585620]]\n\n!!!Integration Matrix\n\n[img[http://image.slidesharecdn.com/alookatmoodle2repositories-1-0-111014044218-phpapp01/95/slide-18-1024.jpg?1318585620]]\n\n!!! Sites\n[[Penn State Share|https://psu.equella.ecollege.com/access/home.do]]\n[[Notes from Utah|http://slccarchivesir.wordpress.com/archives-ir-digital-collections/needs-assessments/equella-training-6-august-2012/]]
* {{{<br>}}} forces a manual line break\n* {{{----}}} creates a horizontal ruler\n* [http://www.tiddlywiki.com/#HtmlEntities HTML entities]\n* {{{<<macroName>>}}} calls the respective [[macro|Macros]]\n* To hide text within a tiddler so that it is not displayed, it can be wrapped in {{{/%}}} and {{{%/}}}.<br/>This can be a useful trick for hiding drafts or annotating complex markup.\n* To prevent wiki markup from taking effect for a particular section, that section can be enclosed in three double quotes: e.g. {{{"""WikiWord"""}}}.
>Traditionally, universities have been the sites of knowledge production, storage, dissemination and authorization\n\n> Universities provide three key value points for learners and society (see Figure 3): content creation and navigation, interactions between learners and faculty, and accreditation. -- George Siemens\n\n!!!But these are changing rapidly. \n* Good content is available on the net\n* Communication (conversation) happens on the net (participatory pedagogies.)\n* We've still got the lock on accreditation but this might be changing\n\n!!!Participatory Learning\n>IT tends to be top-down, designer determined, administratively driven, commercially fashioned. In participatory learning, out- comes are typically customizable by the participants.
<tabs mytabs>\n<tab Introduction>\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc dolor elit, sollicitudin vel, suscipit vitae, pretium quis, ante. Fusce dapibus. Maecenas non eros. Fusce venenatis est ac eros. Integer vitae metus. In luctus dolor sed tortor. Nam leo. Ut dapibus vehicula tellus. Aenean laoreet pretium urna. Maecenas suscipit, velit sit amet laoreet varius, ligula mi lacinia ligula, sit amet semper ipsum nulla id arcu. Nam vel nisi. Integer at neque eget mi ullamcorper aliquet. Mauris dignissim orci. Vestibulum ornare iaculis elit. Duis eu orci nec nisl pulvinar lobortis. Nunc diam mi, porta quis, accumsan sed, dapibus id, nibh. Cras vel metus. \n</tab>\n\n<tab Links>\n[[Let's Go to MIT|http://mit.edu]]\n[[Let's Go to Harvard|http://harvard.edu]]\n</tab>\n<tab Databases for this topic>\nThis is my third tab\nwith more than one line\n</tab>\n\n<tab Reference Works for this topic>\n[[CINAHL with Full Text|http://library.wcsu.edu/cgi-bin/go_db.py?db=Cinahl]]\n\n CINAHL is an acronym for Cumulated Index to Nursing and Allied Health Literature. CINAHL with Full Text is the world's most comprehensive source of current full text (up-to-the-minute content with no embargo*) for nursing & allied health journals, providing full text for more than 600 journals indexed in CINAHL. The database is designed to meet the information needs of nursing and allied health professionals. This premier database is recommended as a first choice for nursing research.\n\nCINAHL contains more than 1,000,000 item records dating back to 1982. It provides complete coverage of English-language nursing journals and publications from the National League for Nursing and the American Nurses' Association. CINAHL covers nursing, biomedicine, health sciences librarianship, alternative/complementary medicine, consumer health and 17 allied health disciplines. Examples of titles offered in CINAHL include: AANA Journal, Gastroenterology Nursing, Maternal and Child Health Journal, Paediatric Nursing, Parents, etc.\n\nCINAHL with Full Text also includes the Pre-CINAHL dataset. Pre-CINAHL is intended to provide current awareness of new journal articles, and is a collection of records that provide basic bibliographic information before they are indexed with CINAHL Headings.\n\nIn addition, this database offers access to health care books, nursing dissertations, selected conference proceedings, standards of practice, educational software, audiovisuals and book chapters. Searchable cited references for more than 1,150 journals are also included. Full text material includes more than 70 journals plus legal cases, clinical innovations, critical paths, drug records, research instruments and clinical trials.\n</tab>\n\n</tabs>\n
[img[/filestore/uploads/learning/commoncartridge.jpg]]
[[ Michael Feldstein about Sakai|http://mfeldstein.com/sakai-3-the-benefits-of-everything-is-content/]]\n\nThis post has some good observations about what is wrong with current LMS and where things are going.
[img[/filestore/uploads/systems/cal_technical_model_full.jpg]]\n\n!!!Notes\nThey are using Nuexo and Drupal\n\nI don't know where I got the above but [[CollectionsSpace Wiki|http://wiki.collectionspace.org/display/collectionspace/Functional+Team+Home]] has some good ideas about what //functions// have to be in place and how they are describing their resources.
Powered by [[TiddlyWiki|http://tiddlywiki.org]] and [[Zope|http://zope.org]]
[[Home of Xtiger and AXEL|http://media.epfl.ch/Templates/]]\n\n[[Paper describing these process|http://hal.inria.fr/docs/00/52/21/75/PDF/DocEng2010.pdf]]
/***\n|''Name:''|JsDoIt|\n|''Version:''|1.0.1|\n|''Source:''|[[AiddlyWiki|http://aiddlywiki.sourceforge.net]]|\n|''Author:''|[[Arphen Lin|mailto:arphenlin@gmail.com]]|\n|''Type:''|Macro extension|\n|''Required:''|TiddlyWiki 2.0.0|\n!Description\nJsDoIt lets you execute Javascript executable codes immediately when you click on a JsDoIt macro button.\n!Syntax\n{{{<<}}}JsDoIt {label} {prompt} {jsEntity} [[jsEntity2] [jsEntity3] ... [jsEntityN]]{{{>>}}}\nparameters:\n* label - caption text of the JsDoIt button\n* prompt - tip text of the JsDoIt button\n* jsEntity - javascript that would be executed\n** javascript code - begin with ''javascript:''\n** javascript tiddler - tiddler that contains javascript code\n** external javascript source - including URIs and local files\n!Example & Demo\n* execute javascript code(s):\n<<<\n{{{<<JsDoIt 'click me!' 'execute javascript code' 'javascript:alert("Hello world!");'>>}}}\n<<JsDoIt 'click me!' 'execute javascript code' 'javascript:alert("Hello world!");'>>\n<<<\n* execute javascript tiddler(s):\n<<<\n{{{<<JsDoIt 'click me!' 'execute javascript tiddler(s)' 'code1.js' 'code2.js'>>}}}\n<<JsDoIt 'click me!' 'execute javascript tiddler(s)' 'code1.js' 'code2.js'>>\n<<<\n* execute external javascript source\n<<<\n{{{<<JsDoIt 'click me!' 'execute external javascript' 'external.js'>>}}}\n<<JsDoIt 'click me!' 'execute external javascript' 'external.js'>>\n{{{<<JsDoIt 'click me!' 'execute external javascript' 'http://aiddlywiki.sourceforge.net/external.js'>>}}}\n<<JsDoIt 'click me!' 'execute external javascript' 'http://aiddlywiki.sourceforge.net/external.js'>>\n<<<\n!Revision history\n*v1.0.1 (2006/1/6)\n**fixed for(var key in params){} problem\n*v1.0.0 (2006/1/4)\n**Initial release\n!Code\n***/\n//{{{\nconfig.macros.JsDoIt = {major: 1, minor: 0, revision: 1, date: new Date(2006,1,6)};\nconfig.macros.JsDoIt.handler = function(place,macroName,params,wikifier,allParams,tiddler){\n if(params.length<=2){ throw 'not enough parameters'; }\n var button = createTiddlyButton(place, params[0], params[1]);\n button.onclick = function(){\n for(var paramIndex=2; paramIndex<params.length; paramIndex++){\n var p=params[paramIndex];\n if(p.trim().search(/javascript:/gi)===0){\n eval(p.trim().replace(/javascript:/gi,''));\n }else{\n var t=store.getTiddler(p);\n if(t){\n eval(t.text);\n }else{\n var rs=document.createElement('script');\n rs.type = 'text/javascript';\n rs.src = p.trim();\n try{\n document.body.appendChild(rs);\n document.body.removeChild(rs);\n }catch(e){\n displayMessage('load ' + p + ' error: ' + e);\n }\n }\n }\n }\n };\n};\n//}}}
{{{\n@TECHREPORT{AgaGel:03,\n author = {Agarwal, D. K. and Gelfand, A. E.},\n title = "Slice Gibbs sampling for simulation based fitting of spatial data models",\n institution = {University of Connecticut},\n year = {2003},\n}\n\n@ARTICLE{Ait:91,\n author = {Aitkin, M.},\n title = {Posterior Bayes factors},\n journal = {Journal of the Royal Statistical Society B},\n year = {1991},\n volume = {53},\n pages = {111-142},\n}\n\n@ARTICLE{AlbChi:93,\n author = {Albert, J. H. and Chib, S.},\n title = {Bayesian Analysis of Binary and Polychotomous Response Data},\n journal = {Journal of the American Statistical Association},\n year = {1993},\n volume = {88},\n number = {422},\n pages = {669-679},\n}\n\n@ARTICLE{BerChe:93,\n author = {Berger, J. O. and Chen, M.- H.},\n title = {Predicting retirement patterns: prediction for a multinomial distribution with constrained parameter space},\n journal = {The Statistician},\n year = {1993},\n volume = {42},\n pages = {427-443},\n}\n\n@ARTICLE{BesGre:93,\n author = {Besag, J. and Green, P. J.},\n title = {Spatial Statistics and Bayesian Computation},\n journal = {Journal of the Royal Statistical Society B},\n year = {1993},\n volume = {55},\n number = {1},\n pages = {25-37},\n}\n\n@MANUAL{Coda:97,\n title = {CODA - Convergence Diagnosis and Output Analysis software for Gibbs sampling output: Version 0.4},\n author = {Best, N. and Cowles, M. K. and Vines, K.},\n organization = {MRC Biostatistics Unit},\n address = {Cambrigde},\n year = {1997},\n}\n\n@TECHREPORT{Bro.R:95,\n author = {Brooks, S. and Roberts, G.},\n title = {Assessing convergence of Markov chain Monte Carlo algorithms},\n institution = {Department of Pure Mathematics and Mathematical Statistics, University of Cambridge},\n year = {1995},\n number = {12},\n}\n\n@ARTICLE{Car.C:95,\n author = {Carlin, B. P. and Chib, S.},\n title = {Bayesian model choice via Markov chain Monte Carlo methods},\n journal = {Journal of the Royal Statistical Society B},\n year = {1995},\n volume = {57},\n pages = {473-484},\n}\n\n@ARTICLE{Cas.G:92,\n author = {Casella, G. and George, E. I.},\n title = {Explaining the Gibbs Sampler},\n journal = {The American Statistician},\n year = {1992},\n volume = {46},\n number = {3},\n pages = {167--174},\n}\n\n@ARTICLE{CasLAvRob:01,\n author = {Casella, G. and Lavine, M. and Robert, C. P.},\n title = {Explaining the Perfect Sampler},\n journal = {The American Statistician},\n year = {2001},\n volume = {55},\n number = {4},\n pages = {299-305},\n}\n\n@ARTICLE{ChaVan:01,\n author = {Chauveau, D. and Vandekerkhove, P.},\n title = {Improving convergence of the Hastings-Metropolis Algorithm with a learning proposal},\n journal = {Scandinavian Journal of Statistics},\n year = {2001},\n volume = {29},\n number = {1},\n pages = {13-29},\n}\n\n@TECHREPORT{Che,\n author = {Chen, M.-H.},\n title = {Markov Chain Monte Carlo Sampling for Evaluating Multidimensional Integrals With Application to Bayesian Computation},\n institution = {Dept of Mathematical Sciences, WPI},\n}\n\n@ARTICLE{Chi.G:95,\n author = {Chib, S. and Greenberg, E.},\n title = {Understanding the Metropolis-Hastings algorithm},\n journal = {The American Statistician},\n year = {1995},\n volume = {49},\n number = {4},\n pages = {327-335},\n}\n\n@ARTICLE{Coo.B:95,\n author = {Cook, P. and Broemeling, L.D.},\n title = {Bayesian statistics using Mathematica},\n journal = {The American Statistician},\n year = {1995},\n volume = {49},\n pages = {70-76},\n}\n\n@ARTICLE{Cow.C:96,\n author = {Cowles, M. K. and Carlin, B. P.},\n title = {Markov chain Monte Carlo convergence diagnostics: a comparative review},\n journal = {Journal of the American Statistical Association},\n year = {1996},\n volume = {91},\n pages = {883-904},\n}\n\n@ARTICLE{DamWakWal:99,\n author = {Damien, P. and Wakefield, J. and Walker, S.},\n title = {Gibbs sampling for Bayesian non-conjugate and hierarchical models by using auxiliary variables},\n journal = {Journal of the Royal Statistical Society B},\n year = {1999},\n volume = {61},\n number = {Part 2},\n pages = {331-344},\n}\n\n@TECHREPORT{DouGodRob,\n author = {Doucet, A. and Godsill, S. J. and Robert, C. P.},\n title = {Marginal Maximum A Posteriori Estimation using Markov Chain Monte Carlo},\n institution = {Signal Processing Group, University of Cambridge},\n}\n\n@ARTICLE{Gel.S:90,\n author = {Gelfand, A. E. and Smith, A. F. M.},\n title = {Sampling-based approaches to calculating marginal densities},\n journal = {Journal of the American Statistical Association},\n year = {1990},\n volume = {85},\n number = {410},\n pages = {398-409},\n}\n\n@ARTICLE{GelSmiLee:92,\n author = {Gelfand, A. E. and Smith, A. F. M. and Lee, T.-M.},\n title = {Bayesian Analysis of Constrained Parameter and Truncated Data Problems Using Gibbs Sampling},\n journal = {Journal of the American Statistical Association},\n year = {1992},\n volume = {87},\n number = {418},\n pages = {523-532},\n}\n\n@ARTICLE{Gel.D:94,\n author = {Gelfand, A. E. G. and Dey, D. K.},\n title = {Bayesian model choice: asymptotics and exact calculations},\n journal = {Journal of the Royal Statistical Society B},\n year = {1994},\n volume = {56},\n pages = {501-514},\n}\n\n@ARTICLE{Gel.H.R.S:90,\n author = {Gelfand, A. E. G. and Hills, S. E. and Racine-Poon, A. and Smith, A. F. M.},\n title = {Illustration of Bayesian inference in normal data models using Gibbs sampling},\n journal = {Journal of the American Statistical Association},\n year = {1990},\n volume = {85},\n pages = {972-985},\n}\n\n@INCOLLECTION{GelMen:96,\n author = {Gelman, A. and Meng, X.-L.},\n booktitle = {Markov Chain Monte Carlo in Practice},\n title = {Model checking and model improvement},\n publisher = {Chapman and Hall, London},\n year = {1996},\n editor = {Gilks, W. R. and Richardson, S. and Spiegelhalter, D. J.},\n pages = {189-202},\n}\n\n@ARTICLE{Gem.G:84,\n author = {Geman, S. and Geman, D.},\n title = {Stochastic relaxation, Gibbs distributions, and the Bayesian restoration of images},\n journal = {IEEE Transactions on Pattern Analysis and Machine Intelligence},\n year = {1984},\n volume = {6},\n pages = {721-741},\n}\n\n@INPROCEEDINGS{Gew:92,\n author = {Geweke, J.},\n title = {Evaluating the accuracy of sampling-based approaches to calculating posterior moments},\n booktitle = {Bayesian Statistics 4},\n year = {1992},\n editor = {Bernardo, J. M. and Berger, J. O. and Dawid, A. P. and Smith, A. F. M.},\n pages = {169-193},\n address = {Oxford},\n publisher = {University Press},\n}\n\n@ARTICLE{Gey:92,\n author = {Geyer, C. J.},\n title = {Pratical Markov Chain Monte Carlo},\n journal = {Statistical Science},\n year = {1992},\n volume = {7},\n number = {4},\n pages = {473-511},\n}\n\n@ARTICLE{Gil.C.S.B.M.S.K:93,\n author = {Gilks, W. R. and Clayton, D. G. and Spiegelhalter, D. J. and Best, N. G. and McNeil, A. J. and Sharples, L. D. and Kirby, A. J.},\n title = {Modelling complexity: applications of Gibbs sampling in medicine},\n journal = {Journal of the Royal Statistical Society B},\n year = {1993},\n volume = {55},\n pages = {39-52},\n}\n\n@ARTICLE{GilTS:94,\n author = {Gilks, W. R. and Thomas, A. and Spiegelhalter, D. J.},\n title = {A language and program for complex Bayesian modelling},\n journal = {The Statistician},\n year = {1994},\n volume = {43},\n pages = {169-178},\n}\n\n@ARTICLE{Gil.B.T:95,\n author = {Gilks, W.R. and Best, N.G. and Tan, K.K.C.},\n title = {Adaptive rejection Metropolis sampling within Gibbs sampling},\n journal = {Applied Statistics},\n year = {1995},\n volume = {44},\n pages = {455-472},\n}\n\n@ARTICLE{Gil.W:92,\n author = {Gilks, W.R. and Wild, P.},\n title = {Adaptive rejection sampling for Gibbs sampling},\n journal = {Applied Statistics},\n year = {1992},\n volume = {41},\n pages = {337-348},\n}\n\n@TECHREPORT{GreMir,\n author = {Green, P. J. and Mira, A.},\n title = {Delayed Rejection in Reversible Jump Metropolis-Hastings},\n}\n\n@ARTICLE{HanCar:01,\n author = {Han, C. and Carlin, B. R.},\n title = {Markov Chain Monte Carlo Methods for Computing Bayes Factors: A Comparative Review},\n journal = {Journal of the American Statistical Association},\n year = {2001},\n volume = {96},\n number = {455},\n pages = {1122-1132},\n}\n\n@ARTICLE{Has:70,\n author = {Hastings, W.K.},\n title = {Monte Carlo sampling methods using Markov chains and their applications},\n journal = {Biometrika},\n year = {1970},\n volume = {57},\n pages = {97-109},\n}\n\n@ARTICLE{Hei.W:83,\n author = {Heidelberger, P. and Welch, P.},\n title = {Simulation run length control in the presence of an initial transient},\n journal = {Operations Research},\n year = {1983},\n volume = {31},\n pages = {1109-1144},\n}\n\n@TECHREPORT{Hig:96,\n author = {Higdon, D. M.},\n title = {Auxiliary Variable Methods for Markov Chain Monte Carlo with Applications},\n institution = {Jasa},\n year = {1996},\n journal = {Jasa Theory and Methods},\n}\n\n@INPROCEEDINGS{Hil.S:92,\n author = {Hills, S.E. and Smith, A.F.M.},\n title = {Parameterization issues in Bayesian inference},\n booktitle = {Bayesian Statistics 4},\n year = {1992},\n editor = {Bernardo, J.M. and Berger, J.O. and Dawid, A.P. and Smith, A.F.M.},\n pages = {227-246},\n publisher = {Oxford University Press},\n}\n\n@ARTICLE{IhaGen:96,\n author = {Ihaka, R. and Gentleman, R.},\n title = {R: A Language for Data Analysis and Graphics},\n journal = {Journal of Computational and Graphical Statistics},\n year = {1996},\n volume = {5},\n number = {3},\n pages = {299-314},\n}\n\n@ARTICLE{Ing:94,\n author = {Ingrassia, S.},\n title = {On the rate of convergence of the Metropolis algorithm and Gibbs sampler by geometric bounds},\n journal = {The Annals of Applied Probability},\n year = {1994},\n volume = {31},\n pages = {347-389},\n}\n\n@ARTICLE{JonHob:01,\n author = {Jones, G. L. and Hobert, J. P.},\n title = {Honest Exploration of Intractable Probability Distributions via Markov Chain Monte Carlo},\n journal = {Statistical Science},\n year = {2001},\n volume = {16},\n number = {4},\n pages = {312-334},\n}\n\n@ARTICLE{KasRaf:95,\n author = {Kass, R. E. and Raftery, A.E.},\n title = {Bayes Factors},\n journal = {Journal of the American Statistical Association},\n year = {1995},\n volume = {90},\n number = {430},\n pages = {773-795},\n}\n\n@ARTICLE{Kas.C.G.N:98,\n author = {Kass, R.E. and Carlin, B.P. and Gelman, A. and Neal, R.M.},\n title = {Markov chain Monte Carlo in practice: a roundtable discussion},\n journal = {The American Statistician},\n year = {1998},\n volume = {52},\n pages = {93-100},\n}\n\n@INPROCEEDINGS{Key.P.S:98,\n author = {Key, J.T. and Pericchi, L.R. and Smith, A.F.M.},\n title = {Bayesian model choice: what and why?},\n booktitle = {Bayesian Statistics 6},\n year = {1998},\n editor = {Bernardo, J.M. and Berger, J.O. and Dawid, A.P. and Smith, A.F.M.},\n pages = {0-0},\n publisher = {Oxford University Press},\n}\n\n@ARTICLE{Leo:78,\n author = {Leonard, T.},\n title = {Density estimation, stochastic processes and prior information},\n journal = {Journal of the Royal Statistical Society B},\n year = {1978},\n volume = {40},\n pages = {113-146},\n}\n\n@TECHREPORT{Liu,\n author = {Liu, J. S.},\n title = {Metropolized Independent Sampling with Comparisons to Rejection Sampling and Importance Sampling},\n institution = {Department of Statistics, Stanford University},\n}\n\n@TECHREPORT{Liu2,\n author = {Liu, J. S.},\n title = {Markov Chain Monte Carlo and Related Topics},\n institution = {Department of Statistics, Stanford University},\n}\n\n@TECHREPORT{MacPer:96,\n author = {MacEachern, S. N. and Peruggia, M.},\n title = {Subsampling the Gibbs Sampler: Variance Reduction},\n institution = {Department of Statistics, The Ohio State University},\n year = {1996},\n}\n\n@ARTICLE{Mac.B:94,\n author = {MacEachern, S.N. and Berliner, L.M.},\n title = {Subsampling the Gibbs sampler},\n journal = {The American Statistician},\n year = {1994},\n volume = {48},\n pages = {188-190},\n}\n\n@MANUAL{Splus:98,\n title = {S-Plus: Version 4.5},\n author = {MathSoft},\n organization = {Data Analysis Products Division, MathSoft, Inc.},\n address = {Seatle},\n year = {1998},\n}\n\n@TECHREPORT{WWW,\n author = {Mengersen, K.L. and Robert, C.P. and Guihenneuc-Jouyaux},\n title = {MCMC convergence diagnostics: a Rclassification},\n institution = {Laboratoire de Statistique, CREST, INSEE, Paris},\n year = {1998},\n number = {16},\n}\n\n@ARTICLE{Met:87,\n author = {Metropolis, N.},\n title = {The beginning of the Monte Carlo method},\n journal = {Los Alamos Science},\n year = {1987},\n number = {Special issue},\n pages = {125-130},\n}\n\n@ARTICLE{Met.R.R.T.T:53,\n author = {Metropolis, N. and Rosenbluth, A.W. and Rosenbluth, M.N. and Teller, A.H. and Teller, E.},\n title = {Equations of state calculations by fast computing machine},\n journal = {J. Chem. Phys.},\n year = {1953},\n volume = {21},\n pages = {1087-1091},\n}\n\n@ARTICLE{MirTie,\n author = {Mira, A. and Tierney, L.},\n title = {Efficiency and Convergence Properties of Slice Samplers},\n journal = {Scand. J. Statist.},\n year = {2002},\n volume = {29},\n pages = {1-12},\n institution = {School of Statistics, University of Minnesota},\n}\n\n@ARTICLE{Nea:03,\n author = {Neal, R. M.},\n title = {Slice Sampling},\n journal = {The Annals of Statistics},\n year = {2003},\n volume = {31},\n number = {3},\n pages = {705-767},\n}\n\n@ARTICLE{Nea:01,\n author = {Neal, R. M.},\n title = {Annealed importance sampling},\n journal = {Statistics and Computing},\n year = {2001},\n volume = {11},\n pages = {125-139},\n}\n\n@TECHREPORT{Nea:93,\n author = {Neal, R. M.},\n title = {Probabilistic Inference Using Markov Chain Monte Carlo Methods},\n institution = {Department of Computer Science, University of Toronto},\n year = {1993},\n}\n\n@ARTICLE{NeaSam:97,\n author = {Neath, A. A. and Samaniego, F. J.},\n title = {On the Efficacy of Bayesian Inference for Nonidentifiable Models},\n journal = {The American Statistician},\n year = {1997},\n volume = {51},\n number = {3},\n pages = {225-232},\n}\n\n@MANUAL{Fbayes:96,\n title = {First Bayes: Version 1.3},\n author = {O'Hagan, A.},\n organization = {Data Analysis Products Division, MathSoft, Inc.},\n address = {Nottingham},\n year = {1996},\n}\n\n@ARTICLE{PauPer:94,\n author = {Paulino, C. D. M. and Pereira, C. A. B.},\n title = {On Identifiability of Parametric Statistical Models},\n journal = {Journal of the Italian Statistical Society},\n year = {1994},\n volume = {3},\n number = {1},\n pages = {125-151},\n}\n\n@ARTICLE{Pes:73,\n author = {Peskun, P. H.},\n title = {Optimum Monte-Carlo sampling using Markov chains},\n journal = {Biometrika},\n year = {1973},\n volume = {60},\n number = {3},\n pages = {607},\n}\n\n@INPROCEEDINGS{Raf.L:92,\n author = {Raftery, A.L. and Lewis, S.},\n title = {How many iterations in the Gibbs sampler?},\n booktitle = {Bayesian Statistics 4},\n year = {1992},\n editor = {Bernardo, J.M. and Berger,J.O. and Dawid, A.P. and Smith, A.F.M.},\n pages = {763-774},\n address = {Oxford},\n publisher = {University Press},\n}\n\n@ARTICLE{Rit.T:92,\n author = {Ritter, C. and Tanner, M.A.},\n title = {Facilitating the Gibbs sampler: the Gibbs stopper and the Griddy-Gibbs sampler},\n journal = {Journal of the American Statistical Association},\n year = {1992},\n volume = {87},\n pages = {861-868},\n}\n\n@ARTICLE{Rob:92,\n author = {Roberts, G. O.},\n title = {Convergence Diagnostics of the Gibbs Sampler},\n journal = {Bayesian Statistics},\n year = {1992},\n volume = {4},\n pages = {775-782},\n}\n\n@ARTICLE{RobRos:99,\n author = {Roberts, G. O. and Rosenthal, J. S.},\n title = {Convergence of slice sampler Markov chains},\n journal = {Journal of the Royal Statistical Society B},\n year = {1999},\n volume = {61},\n pages = {643-660},\n}\n\n@ARTICLE{RobSmi:94,\n author = {Roberts, G. O. and Smith, A. F. M.},\n title = {Simple conditions for the convergence of the Gibbs sampler and Metropolis-Hastings algorithms},\n journal = {Stochastic Processes and their Applications},\n year = {1994},\n volume = {49},\n pages = {207-216},\n}\n\n@ARTICLE{Rob.P:94,\n author = {Roberts, G.O. and Polson, N.G.},\n title = {On the geometric convergence of the Gibbs sampler},\n journal = {Journal of the Royal Statistical Society B},\n year = {1994},\n volume = {56},\n pages = {377-384},\n}\n\n@ARTICLE{Smi.G:92,\n author = {Smith, A.F.M. and Gelfand, A.E.},\n title = {Bayesian statistics without tears: a sampling-resampling perspective},\n journal = {The American Statistician},\n year = {1992},\n volume = {46},\n pages = {84-88},\n}\n\n@ARTICLE{Smi.R:93,\n author = {Smith, A.F.M. and Roberts, G.O.},\n title = {Bayesian computation via the Gibbs sampler and related Markov chain Monte Carlo methods},\n journal = {Journal of the Royal Statistical Society B},\n year = {1993},\n volume = {55},\n pages = {3-23},\n}\n\n@MANUAL{BOA,\n title = {Bayesian Output Analysis Program (BOA), Version 1.1 User's manual},\n author = {Smith, B. J. },\n year = {2004},\n}\n\n@TECHREPORT{Spi.B.C:98,\n author = {Spiegelhalter, D. and Best, N. and Carlin, B.P.},\n title = {Bayesian deviance, the effective number of parameters, and the comparison of arbitrarily complex models},\n institution = {Division of Biostatiscs, University of Minneasota},\n year = {1998},\n number = {9},\n}\n\n@MANUAL{Winbugs:98,\n title = {WinBUGS - Bayesian inference using Gibbs sampling for Windows: Version 1.1.1},\n author = {Spiegelhalter, D. and Thomas, A. and Best, N.},\n organization = {MRC Biostatistics Unit},\n address = {Cambrigde},\n year = {1998},\n}\n\n@MANUAL{Bugs:97,\n title = {BUGS - Bayesian inference using Gibbs sampling: Version 0.6},\n author = {Spiegelhalter, D. and Thomas, A. and Best, N. and Gilks, W.},\n organization = {MRC Biostatistics Unit},\n address = {Cambrigde},\n year = {1997},\n}\n\n@ARTICLE{Spial:02,\n author = {Spiegelhalter, D. J. and Best, N. G. and Carlin, B. P. and van der Linde, A.},\n title = {Bayesian Measures of model complexity and fit},\n journal = {Journal of the Royal Statistical Society B},\n year = {2002},\n number = {64},\n pages = {583-639},\n}\n\n@MANUAL{Stata:97,\n title = {Stata Statistical Software: Release 5.0},\n author = {Stata-Corporation},\n organization = {College Station, Stata Corporation},\n address = {Texas},\n year = {1997},\n}\n\n@UNPUBLISHED{Ste:03,\n author = {Steinhaus, S.},\n title = {Comparison of mathematical programs for data analysis},\n year = {2003},\n url = {http://www.scientificweb.com/ncrunch/ncrunch4.pdf},\n}\n\n@TECHREPORT{StrTwe:98,\n author = {Stramer, O. and Tweedie, R. L.},\n title = {Self-Targeting Candidates for Metropolis-Hastings Algorithms },\n institution = {University of Iowa and Colorado State University },\n year = {1998},\n}\n\n@ARTICLE{Tan.W:87,\n author = {Tanner, M.A. and Wong, W.H.},\n title = {The calculation of posterior distributions by data augmentation (with discussion)},\n journal = {Journal of the American Statistical Association},\n year = {1987},\n volume = {82},\n pages = {528-550},\n}\n\n@INPROCEEDINGS{Tho.S.G:92,\n author = {Thomas, A. and Spiegelhalter, D.J. and Gilks, W.R.},\n title = {BUGS: a program to perform Bayesian inference using Gibbs sampling},\n booktitle = {Bayesian Statistics 4},\n year = {1992},\n editor = {Bernardo, J.M. and Berger, J.O. and Dawid, A.P. and Smith, A.F.M.},\n pages = {837-842},\n publisher = {Oxford University Press},\n}\n\n@ARTICLE{Tie:94,\n author = {Tierney, L.},\n title = {Markov chains for exploring posterior distributions},\n journal = {The Annals of Statistics},\n year = {1994},\n volume = {22},\n pages = {1701-1762},\n}\n\n@ARTICLE{TieMir:99,\n author = {Tierney, L. and Mira, A.},\n title = {Some Adaptive Monte Carlo Methods For Bayesian Inference},\n journal = {Statistics in Medicine},\n year = {1999},\n number = {18},\n pages = {2507-2515},\n}\n\n@ARTICLE{VanMen:01,\n author = {Van Dyk, D. A. and Meng, X.},\n title = {The Art of Data Augmentation},\n journal = {Journal of the American Statistical Association},\n year = {2001},\n volume = {10},\n number = {1},\n pages = {1-50},\n}\n\n@ARTICLE{Wil.G:93,\n author = {Wild, P. and Gilks, W.R.},\n title = {Adaptive rejection sampling for log-concave density functions},\n journal = {Applied Statistics},\n year = {1993},\n volume = {42},\n pages = {701-709},\n}\n\n@BOOK{Wol:03,\n title = {The Mathematica Book},\n publisher = {Wolfram Media/Cambridge University Press},\n year = {2003},\n author = {Wolfram, S.},\n edition = {Fifth},\n}\n\n@ARTICLE{Zel.M:95,\n author = {Zellner, A. and Min, C.},\n title = {Gibbs sampler convergence criteria},\n journal = {Journal of the American Statistical Association},\n year = {1995},\n volume = {90},\n pages = {921-927},\n}\n}}}
!!!Generic Competences \n* Capacity for analysis and synthesis \n* Capacity for applying knowledge in practice \n* Planning and time management \n* Basic general knowledge in the field of study \n* Grounding in basic knowledge of the profession in practice \n* Oral and written communication in your native language \n* Knowledge of a second language \n* Elementary computing skills \n* Research skills \n* Capacity to learn \n* Information management skills (ability to retrieve and analyse information from different sources)\n* Critical and self-critical abilities \n* Capacity to adapt to new situations \n* Capacity for generating new ideas (creativity) \n* Problem solving \n* Decision-making \n* Teamwork \n* Interpersonal skills \n* Leadership \n* Ability to work in an interdisciplinary team \n* Ability to communicate with non-experts (in the field) \n* Appreciation of diversity and the multicultural aspect \n* Ability to work in an international context \n* Understanding of cultures and customs of other countries \n* Ability to work autonomously \n* Project design and management \n* Initiative and entrepreneurial spirit \n* Ethical commitment \n* Concern for quality \n* Will to succeed \n\n[[Specific Compentencies|http://www.unideusto.org/tuningeu/competences/specific.html]]\n\n<<<\nThe project has come up with substantive and helpful definitions of these concepts. Thus it defines "learning outcomes" as "statements of what a learner is expected to know, understand and/or be able to demonstrate after completion of learning. Learning outcomes specify the requirements for award of credit" (Tuning 2007, p. 3). "Competences"' are defined as "a dynamic combination of knowledge, understanding, skills, and abilities. Fostering competences is the object of educational programmes. Competences will be formed in various course units and assessed at different stages." \n<<<\n
[img[/filestore/uploads/highered/caputuring-user-data-for-edu.png ]]\n!!! Intent\nWhat is the learning trying to do\n!!! Behavior\nWhat actions and resources does the learner do to trying to accomplish their goals\n!!! Social\nHow are the people this user is connected with. \n!!! Sentiment Analysis\nGenerally speaking, sentiment analysis aims to determine the attitude of a speaker or a writer with respect to some topic or the overall contextual polarity of a document. T
http://www.rexx.com/~dkuhlman/#generateds-py-generate-python-data-bindings-from-xml-schema
/***\n|Name:|HideWhenPlugin|\n|Description:|Allows conditional inclusion/exclusion in templates|\n|Version:|3.1 ($Rev: 3919 $)|\n|Date:|$Date: 2008-03-13 02:03:12 +1000 (Thu, 13 Mar 2008) $|\n|Source:|http://mptw.tiddlyspot.com/#HideWhenPlugin|\n|Author:|Simon Baird <simon.baird@gmail.com>|\n|License:|http://mptw.tiddlyspot.com/#TheBSDLicense|\nFor use in ViewTemplate and EditTemplate. Example usage:\n{{{<div macro="showWhenTagged Task">[[TaskToolbar]]</div>}}}\n{{{<div macro="showWhen tiddler.modifier == 'BartSimpson'"><img src="bart.gif"/></div>}}}\n***/\n//{{{\n\nwindow.hideWhenLastTest = false;\n\nwindow.removeElementWhen = function(test,place) {\n window.hideWhenLastTest = test;\n if (test) {\n removeChildren(place);\n place.parentNode.removeChild(place);\n }\n};\n\n\nmerge(config.macros,{\n\n hideWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( eval(paramString), place);\n }},\n\n showWhen: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( !eval(paramString), place);\n }},\n\n hideWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( tiddler.tags.containsAll(params), place);\n }},\n\n showWhenTagged: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( !tiddler.tags.containsAll(params), place);\n }},\n\n hideWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( tiddler.tags.containsAny(params), place);\n }},\n\n showWhenTaggedAny: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( !tiddler.tags.containsAny(params), place);\n }},\n\n hideWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( tiddler.tags.containsAll(params), place);\n }},\n\n showWhenTaggedAll: { handler: function (place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( !tiddler.tags.containsAll(params), place);\n }},\n\n hideWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0]), place);\n }},\n\n showWhenExists: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( !(store.tiddlerExists(params[0]) || store.isShadowTiddler(params[0])), place);\n }},\n\n hideWhenTitleIs: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( tiddler.title == params[0], place);\n }},\n\n showWhenTitleIs: { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( tiddler.title != params[0], place);\n }},\n\n 'else': { handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n removeElementWhen( !window.hideWhenLastTest, place);\n }}\n\n});\n\n//}}}\n
<<<\n!!!We like people who:\n\n* are tenacious and creative problem solvers\n* work hard, break hard problems into small, achievable pieces and focus on delivery\n* are good communicators who enjoy discussion and argument\n\n<<<
* What units within your university deal with instructional content? (e.g. Libraries distance education, bookstores, individual instructors, academic departments, marketing.)\n* What software applications are currently being used to produce and manage content? (e.g. Content management systems, learning management systems, publisher websites, faculty blogs, wikis.)\n* From whom is the university sourcing content, and what are the processes used to source content? (e.g. Library subscriptions, textbook publishers, instructors, simulation companies.)\n* Who within the institution is producing content? (e.g. Instructors, academic departments, marketing.)\n* How do the various units within the institution communicate with each other about their content practices? Do they?
{{{\n#element{\n filter:alpha(opacity=50);\n -moz-opacity:0.5;\n -khtml-opacity: 0.5;\n opacity: 0.5;\n }\n}}}
!!Developing a Content Strategy\n* ePublishing revolution\n\n!!!The technology issues facing us today\n* identity, \n* communication, \n* privacy, \n* regulation\n\n!!! Content Components\n* Text Modules\n* Media Assets\n* Data Sources\n* Relationship links\n* Metadata properties\n* Concept taxonomies\n* Assembly maps\n* Governing models\n* Processing rules\n* Formatting instructions\n* Distribution rights\n\n!!! Technology Components\n* Management systems\n* Authoring environments\n* Publishing Processes\n** Mobile\n* Discovery Frameworks\n* Social interaction\n\n!!! From publications to apps\n* UX design\n\n!!! Leveraging Vendors\n\n\n!!!Graphics\n\nThe following images come from [[Joe Gollner's Blog|http://jgollner.typepad.com/]]\n\n[img[/files/zopestore/uploads/content/content-model.jpg]]\n\n[img[/files/zopestore/uploads/content/content-solution.jpg]]\n
> 1. FR reduces duplication of metadata, and therefore effort/cost, by splitting the current unit of process from one bibliographic record into three or four (WEM/I); LLD goes much further by focussing on the smallest possible unit of process, the metadata statement/triple - \n>2. LLD allows effective interoperability between metadata generated by professionals/cataloguers, amateurs/users, and machines) and ideological (most librarians operate in open, communitarian environments, which can be significantly enriched by the open/global focus of LLD).
!!! Move from documents to entities\n[img[/filestore/uploads/semantic/Semantic-CMS.png]]
{{{\nThis code assumes that readXML is the name of a Javascript function that uses the global variable xmlDoc to access the DOM tree, and that initLibrary() is called with the onload handler from the HTML body tag like this: \n<body onload="initLibrary()">\nThe file name passed into the importXML function can of course be changed to any local or remote XML file name, depending on which one you want to load.\n\n var xmlDoc;\n var xmlloaded = false;\n\n function initLibrary()\n {\n importXML("http:///www.somedomain.com/somesubdir/somefile.xml");\n }\n\n function importXML(xmlfile)\n {\n try\n {\n var xmlhttp = new XMLHttpRequest();\n xmlhttp.open("GET", xmlfile, false);\n }\n catch (Exception)\n {\n var ie = (typeof window.ActiveXObject != 'undefined');\n\n if (ie)\n {\n xmlDoc = new ActiveXObject("Microsoft.XMLDOM");\n xmlDoc.async = false;\n while(xmlDoc.readyState != 4) {};\n xmlDoc.load(xmlfile);\n readXML();\n xmlloaded = true;\n }\n else\n {\n xmlDoc = document.implementation.createDocument("", "", null);\n xmlDoc.onload = readXML;\n xmlDoc.load(xmlfile);\n xmlloaded = true;\n }\n }\n\n if (!xmlloaded)\n {\n xmlhttp.setRequestHeader('Content-Type', 'text/xml')\n xmlhttp.send("");\n xmlDoc = xmlhttp.responseXML;\n readXML();\n xmlloaded = true;\n }\n }\n}}}\n [[from|http://www.steveborn.com/codenotes/LoadingXML.htm]]
[img[/filestore/uploads/content/research-infrastructure.png]]\n\n__''What access to all of these resource is different that access to journal literature (Educational Databases)''__\n\n!!!Cognitive Sciences facilities\n* facilities for neurological/psychological research on speech/textual, visual, audio, tactile and olfactory stimuli used in linguistics, \n* phonetics, \n* musicology, \n* art history, \n* anthropology, etc.\n\n!!!Research facilities for Cultural Heritage objects\n* facilities to do research in and perform restoration and conservation of cultural heritage\n!!!Music and instrument collections\n* collections of musical scores, \n* recordings, \n* musical instru-ments and relevant \n* musicological data\n\n!!! Literature and text archives\n* text collections/repositories of literary works,\n* databases of analytical data and metadata\n\n!!!Language resources, tools and services\n* language resources (corpora, lexica, grammars), \n* tools and services made by language and speech technologies\n!!!History archives/databases\n* archives of historical documents (texts, maps, pictures,etc.), \n* databases of analytical historical data and metadata\n\n!!!Digitised manuscript databases/ collections/ repositories\n* image/text collections/repositories of digitised manuscripts, \n* databases of analytical data and metadata\n\n!!!Arts & Art History databases/collections/repositories\n* collections/repositories of works of art/their digital rep- licas, \n* in situ locations, \n* databases of art history data and analyses\n\n!!! Archaeology, Anthropology and Ethnology \n* databases/ collections/ repositories findings/digital replicas, \n* in situ locations, \n* databases of archaeological/anthropological/ethnological data and analyses\n\n! How do you traverse this infrastructure?\n* Libraries and archives\n* Bibliographies\n* Conceptual models, ontologies, thesauri\n* Timeline facilities\n* Visualization facilities\n* Software development facilities\n\n//see also:// [[Discover, Gather, Create, Share]]\n\n[img[/filestore/uploads/content/repo-tech.png]]\n\nthis came from [[The European Science Foundation|http://kompetenzzentrum.uni-trier.de/files/4613/2741/4260/spb42_RI_DigitalHumanities.pdf]]
I saw this on the web. Every **Item** would be an entity which could use the simple name of the property. This would be just like a Dublin Core Description set. The main (page) would have includes to the entities and the stylesheet would create the html with the rdf stuff embedded\n{{{\nItem \nType: http://schema.org/photograph \nname = Tree Branches \nencodings = Item( 1 ) \ndescription = Tree Branches \nauthor = Ian Britton \npublisher = Freefoto.com \nisfamilyfriendly = true \nkeywords = tree branches , tree , branches , , gateshead , tyne and \nwear , united kingdom , february , 9911-02-0 , blog images , 9911-00-0 \nFreeFoto.com, Free Pictures, Stock Photography, Royalty Free... \ndatepublished = 2011-02-12 \ncontentlocation = Item( 2 ) \nItem 1 \nType: http://schema.org/imageobject \nthumbnail = http://i3.freefoto.com//images/9911/02/9911_02_2920_thumb.jpg \nname = /images/9911/02/9911_02_2920---Tree-Branches_web.jpg \nrepresentativeofpage = true \ncontenturl = http://www.freefoto.com/images/9911/02/9911_02_2920---Tree-Branches_web.jpg \nItem 2 \nType: http://schema.org/place \ngeo = Item( 3 ) \nItem 3 \nType: http://schema.org/geocoordinates \nlatitude = 54.8969 \nlatitude = -1.6453 \n}}}\n\n[[source|http://groups.google.com/group/schemaorg-discussion/tree/browse_frm/month/2011-06/89a15d46fe272d65?rnum=31&_done=%2Fgroup%2Fschemaorg-discussion%2Fbrowse_frm%2Fmonth%2F2011-06%3F]]
{{{\n<script type="text/javascript"> \nvar APP = { \n"ajaxGet" : function(loc, dir) { \n $.ajax({ \n url : loc, \n type : "GET", \n data : "", \n dataType: "json", \n error : function() { alert("Error loading html document"); }, \n success : function(res) { \n // Update appropriate web page portions \n APP.updatePage(res); \n // Update analytics to track usage \n APP.updateAnalytics(loc); \n /* \n Push loc in history stack to enable browser back button, \n but do it only if the dir (direction) is not "back" \n otherwise history will get filled with "previous" location \n thereby setting a never-ending loop. \n */ \n if (dir !== "back") { \n history.pushState(null, null, loc); \n } \n } \n }); \n}, \n"updatePage" : function() { \n}, \n"updateAnalytics" : function() { \n}; \n \n \n$(document).ready(function() { \n /* \n Enable each link to fire the ajaxGet() function \n on being clicked. Send an empty string for "dir". \n */ \n $("a").click(function() { \n APP.ajaxGet($(this).attr("href"), ""); \n /* \n returning false ensures that the href \n in the anchor is not fired, and instead, \n ajaxGet() is used \n */ \n return false; \n }); \n /* \n The following bit of code enables the browser back button. \n When the user clicks the back button, the location from \n the history stack is fed to ajaxGet() to restore the previous \n web page. \n */ \n window.setTimeout(function() { \n window.addEventListener( \n "popstate", \n function(e) { \n APP.ajaxGet(location.href, "back"); \n }, \n false \n ); \n }, 1); \n}); \n</script> \n}}}
* http://www.freewebsitetemplates.com/preview/media/ (modern but not too busy)\n* http://www.freewebsitetemplates.com/preview/architecture/\n* http://www.freewebsitetemplates.com/preview/hardwarestore/\n* http://www.freewebsitetemplates.com/preview/template28/ (interesting)\n* http://www.soros.org/initiatives (not great but a possibility)\n\nhttp://www.iriss.org.uk/ (steal this?)\n\ncheck this site out form simplicity : https://shellycloud.com/\n
<<<\nHowever, talk of online educations current transformative revolutionary and (worst of all) disruptive impact on traditional higher education ignores the fact that one of the core components of online higher education has improved only imperceptibly during last two decades. Online instructional content ,the instructional media and activities presented to students ,remains largely stuck in the 1990s, barely scratching the potential that we once imagined\n<<<\n[[MANAGEMENT & STRATEGY IN DIGITAL HIGHER ED|http://higheredmanagement.net/2014/05/19/three-pieces-of-the-puzzle-instructional-content-in-online-higher-education/]]
<html>\n<table width="484" border="2" align="center" cellpadding="3" bordercolor="#000000">\n <tbody><tr>\n <td width="85" bgcolor="#FFFF99" class="textBody-smallBold"><div align="center" class="subTitle-sm-Bold">Levels</div></td>\n <td width="200" bgcolor="#FFFF99" class="textBody-smallBold"><div align="center" class="subTitle-sm-Bold">Technology Role </div></td>\n <td width="163" bgcolor="#FFFF99"><div align="center" class="subTitle-sm-Bold">Purpose</div></td>\n </tr>\n <tr>\n <td bgcolor="#00FFFF" class="textBody-smallBold">Data</td>\n <td bgcolor="#FFFFCC" class="textBody-small">Collect data </td>\n <td bgcolor="#FFFFCC" class="textBody-small">Data processing </td>\n </tr>\n <tr>\n <td bgcolor="#00FFFF" class="textBody-smallBold">Information</td>\n <td bgcolor="#FFFFCC" class="textBody-small">Integrate and summarize information </td>\n <td bgcolor="#FFFFCC" class="textBody-small">Information Management <br>\n (decision making) </td>\n </tr>\n <tr>\n <td bgcolor="#00FFFF" class="textBody-smallBold">Knowledge</td>\n <td valign="top" bgcolor="#FFFFCC" class="textBody-small">Knowledge discovery, creation, and retrieval </td>\n <td bgcolor="#FFFFCC" class="textBody-small">Knowledge Management <br>\n (problem solving) </td>\n </tr>\n </tbody></table>\n</html>\n\n[[from Cognitive Design Solutions|http://www.cognitivedesignsolutions.com/KM/KnowledgeManagement1.htm]]
[img[filestore/uploads/datamodels/741px-3-4_Data_model_roles.svg.png]]
[[Prices|http://www.lib.iup.edu/digitalr/contentcosts.htm]]\n\n[[Features from JISC|http://www.jiscdigitalmedia.ac.uk/stillimages/advice/image-management-oclc-contentdm/]]
[[This document|/zopestore/uploads/highered/UV-Newsletter-Holiday-Edition-Whitepaper.pdf']] has got a lot of ideas about what to expect.
!!!Meta data as indexing language\nList of words =>Synonyms =>Taxonomy =>Thesaurus \nINCREASING COMPLEXITY / RICHNESS\n\nList of words = Ambiguity control \nSynonyms = Synonym control\nTaxonomy = Ambiguity control + Synonym contorl\nThesaurus = Amiguity control + synonynm control + Hierarchical + Associative relations
<<<\nOur ultimate goal is to create an environment that facilitates end-users in seeing meaningful connections among individual items (stories, photos, graphics, videos) through underlying knowledge of the descriptions of the items, their relationships and related background knowledge. This requires semantic metadata models to improve metadata interoperability along the entire production chain.\n<<<\nby Raphael Troncy "Bringing the IPTC News Architecture in the Semantic Web" from "The Semantic Web - ISWC 2008"
[[CDL Kernel Spec|http://dublincore.org/groups/kernel/spec/]]\n\nThe above is basics of what you need. Start here and then be able to convert this to what ever you need. A question I have is how to keep track of the basic entities still.
* Deposit - uploading simple or multi-part objects, singly or in bulk\n* Manage - editing and updating an object's content, metadata and permissions\n* Search - full-text and fielded search supporting user discovery as well as administration\n* Browse - sequential viewing of objects by collection, attribute or ad hoc filtering\n* Deliver - viewing, downloading and otherwise disseminating objects through Hydra applications, web services and third party applications\n
[img[/filestore/uploads/tech/regular_expressions_cheat_sheet.png]]\n\n[[Learn Regex the Hard Way|http://regex.learncodethehardway.org/book/]]
What if information literacy were about:\n\n> archive, organize, and curate one's own compositions and connect them to the larger community of data..\n\nfrom [[Alex Reid|http://alex-reid.net/2014/05/why-teaching-college-composition-is-getting-harder.html]]
[[The LOCAH Project has a post by Pete Johnston|http://blogs.ukoln.ac.uk/locah/2011/03/17/describing-the-"things"-the-rdf-terms-used-part-2/]] where he talks about the things that make up an EAD document. The thing is to write some xslt to grab that data from the EAD doc\n\n!!! Urls for "things"\n> http://{domain}/id/{concept}/{reference}\n>where:\n>concept is a name for a class (resource type), like person\n>reference is a name for an individual instance of that class or type\n\n[[This post has all the xpaths that he is using|http://blogs.ukoln.ac.uk/locah/2010/11/16/identifying-the-things-uri-patterns-for-the-hub-linked-data/]]
!!! How to ''embed'' xml data in a tiddler\nPut in in a script element\n\n<xml>\n\n<status xmlns="http://example.com/ns/status-markup">\n <title>Some XML</title>\n <p xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"\n geo:lat="18.88579" geo:long="2.2948">Not an HTML paragraph\n about the <link href="http://en.wikipedia.org/wiki/Eiffel_tower">Eiffel\n Tower</link>.</p>\n</status>\n\n</xml>\n\nLet's see if this works\n\nIt doesn't show but takes up space.\n
/***\n|Name|ImportTiddlersPlugin|\n|Source|http://www.TiddlyTools.com/#ImportTiddlersPlugin|\n|Documentation|http://www.TiddlyTools.com/#ImportTiddlersPluginInfo|\n|Version|4.5.0|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides|config.macros.importTiddlers.handler|\n|Description|interactive controls for import/export with filtering.|\nCombine tiddlers from any two TiddlyWiki documents. An interactive control panel lets you pick a source document and import selected tiddlers, with prompting for skip, rename, merge or replace actions when importing tiddlers that match existing titles. Generates a detailed report of import 'history' in ImportedTiddlers.\n!!!!!Documentation\n<<<\nsee [[ImportTiddlersPluginInfo]] for details\n<<<\n!!!!!interactive control panel:\n<<<\n<<importTiddlers inline>>\n{{clear{\n^^(see also: [[ImportTiddlers]] shadow tiddler)^^}}}\n<<<\n!!!!!Revisions\n<<<\n2009.05.04 [4.5.0] import from CSV-formatted files\n|please see [[ImportTiddlersPluginInfo]] for additional revision details|\n2005.07.20 [1.0.0] Initial Release\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.ImportTiddlersPlugin= {major: 4, minor: 5, revision: 0, date: new Date(2009,5,4)};\n\n// IE needs explicit global scoping for functions/vars called from browser events\nwindow.onClickImportButton=onClickImportButton;\nwindow.refreshImportList=refreshImportList;\n\n// default cookie/option values\nif (!config.options.chkImportReport) config.options.chkImportReport=true;\n\n// default shadow definition\nconfig.shadowTiddlers.ImportTiddlers='<<importTiddlers inline>>';\n\n// use shadow tiddler content in backstage panel\nif (config.tasks) config.tasks.importTask.content='<<tiddler ImportTiddlers>>' // TW2.2 or above\n//}}}\n//{{{\n// backward-compatiblity for TW2.0.x and TW1.2.x\nif (config.macros.importTiddlers==undefined) config.macros.importTiddlers={};\nif (typeof merge=='undefined') {\n function merge(dst,src,preserveExisting) {\n for(var i in src) { if(!preserveExisting || dst[i] === undefined) dst[i] = src[i]; }\n return dst;\n }\n}\nif (config.browser.isGecko===undefined)\n config.browser.isGecko=(config.userAgent.indexOf('gecko')!=-1);\n//}}}\n//{{{\nmerge(config.macros.importTiddlers,{\n $: function(id) { return document.getElementById(id); }, // abbreviation\n label: 'import tiddlers',\n prompt: 'Copy tiddlers from another document',\n openMsg: 'Opening %0',\n openErrMsg: 'Could not open %0 - error=%1',\n readMsg: 'Read %0 bytes from %1',\n foundMsg: 'Found %0 tiddlers in %1',\n filterMsg: "Filtered %0 tiddlers matching '%1'",\n summaryMsg: '%0 tiddler%1 in the list',\n summaryFilteredMsg: '%0 of %1 tiddler%2 in the list',\n plural: 's are',\n single: ' is',\n countMsg: '%0 tiddlers selected for import',\n processedMsg: 'Processed %0 tiddlers',\n importedMsg: 'Imported %0 of %1 tiddlers from %2',\n loadText: 'please load a document...',\n closeText: 'close',\n doneText: 'done',\n startText: 'import',\n stopText: 'stop',\n local: true, // default to import from local file\n src: '', // path/filename or URL of document to import (retrieved from SiteUrl)\n proxy: '', // URL for remote proxy script (retrieved from SiteProxy)\n useProxy: false, // use specific proxy script in front of remote URL\n inbound: null, // hash-indexed array of tiddlers from other document\n newTags: '', // text of tags added to imported tiddlers\n addTags: true, // add new tags to imported tiddlers\n listsize: 10, // # of lines to show in imported tiddler list\n importTags: true, // include tags from remote source document when importing a tiddler\n keepTags: true, // retain existing tags when replacing a tiddler\n sync: false, // add 'server' fields to imported tiddlers (for sync function)\n lastFilter: '', // most recent filter (URL hash) applied\n lastAction: null, // most recent collision button performed\n index: 0, // current processing index in import list\n sort: '' // sort order for imported tiddler listbox\n});\n//}}}\n//{{{\n// hijack core macro handler\nif (config.macros.importTiddlers.coreHandler==undefined)\n config.macros.importTiddlers.coreHandler=config.macros.importTiddlers.handler;\n\nconfig.macros.importTiddlers.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n if (!params[0] || params[0].toLowerCase()=='core') { // default to built in\n if (config.macros.importTiddlers.coreHandler)\n config.macros.importTiddlers.coreHandler.apply(this,arguments);\n else \n createTiddlyButton(place,this.label,this.prompt,onClickImportMenu);\n } else if (params[0]=='link') { // show link to floating panel\n createTiddlyButton(place,params[1]||this.label,params[2]||this.prompt,onClickImportMenu);\n } else if (params[0]=='inline') {// show panel as INLINE tiddler content\n createImportPanel(place);\n this.$('importPanel').style.position='static';\n this.$('importPanel').style.display='block';\n } else if (config.macros.loadTiddlers)\n config.macros.loadTiddlers.handler(place,macroName,params); // any other params: loadtiddlers\n}\n//}}}\n//{{{\n// Handle link click to create/show/hide control panel\nfunction onClickImportMenu(e) { var e=e||window.event;\n var parent=resolveTarget(e).parentNode;\n var panel=document.getElementById('importPanel');\n if (panel==undefined || panel.parentNode!=parent) panel=createImportPanel(parent);\n var isOpen=panel.style.display=='block';\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(panel,!isOpen,false,'none'));\n else\n panel.style.display=isOpen?'none':'block';\n e.cancelBubble = true; if (e.stopPropagation) e.stopPropagation(); return(false);\n}\n//}}}\n//{{{\n// Create control panel: HTML, CSS\nfunction createImportPanel(place) {\n var cmi=config.macros.importTiddlers; // abbrev\n var panel=cmi.$('importPanel');\n if (panel) { panel.parentNode.removeChild(panel); }\n setStylesheet(cmi.css,'importTiddlers');\n panel=createTiddlyElement(place,'span','importPanel',null,null)\n panel.innerHTML=cmi.html;\n refreshImportList();\n var siteURL=store.getTiddlerText('SiteUrl'); if (!siteURL) siteURL='';\n cmi.$('importSourceURL').value=siteURL;\n cmi.src=siteURL;\n var siteProxy=store.getTiddlerText('SiteProxy'); if (!siteProxy) siteProxy='SiteProxy';\n cmi.$('importSiteProxy').value=siteProxy;\n cmi.proxy=siteProxy;\n if (config.browser.isGecko) { // FF3 FIXUP\n cmi.$('fileImportSource').style.display='none';\n cmi.$('importLocalPanelFix').style.display='block';\n }\n cmi.$('chkSync').checked=cmi.sync;\n cmi.$('chkImportTags').checked=cmi.importTags;\n cmi.$('chkKeepTags').checked=cmi.keepTags;\n cmi.$('chkAddTags').checked=cmi.addTags;\n cmi.$('txtNewTags').value=cmi.newTags;\n cmi.$('txtNewTags').style.display=cmi.addTags?'block':'none';\n cmi.$('chkSync').checked=cmi.sync;\n cmi.$('chkImportReport').checked=config.options.chkImportReport;\n return panel;\n}\n//}}}\n//{{{\nconfig.macros.importTiddlers.css = '\s\n#importPanel {\s\n display: none; position:absolute; z-index:11; width:35em; right:105%; top:3em;\s\n background-color: #eee; color:#000; font-size: 8pt; line-height:110%;\s\n border:1px solid black; border-bottom-width: 3px; border-right-width: 3px;\s\n padding: 0.5em; margin:0em; -moz-border-radius:1em;-webkit-border-radius:1em;\s\n}\s\n#importPanel a, #importPanel td a { color:#009; display:inline; margin:0px; padding:1px; }\s\n#importPanel table { width:100%; border:0px; padding:0px; margin:0px; font-size:8pt; line-height:110%; background:transparent; }\s\n#importPanel tr { border:0px;padding:0px;margin:0px; background:transparent; }\s\n#importPanel td { color:#000; border:0px;padding:0px;margin:0px; background:transparent; }\s\n#importPanel select { width:100%;margin:0px;font-size:8pt;line-height:110%;}\s\n#importPanel input { width:98%;padding:0px;margin:0px;font-size:8pt;line-height:110%}\s\n#importPanel .box { border:1px solid #000; background-color:#eee; padding:3px 5px; margin-bottom:5px; -moz-border-radius:5px;-webkit-border-radius:5px;}\s\n#importPanel .topline { border-top:1px solid #999; padding-top:2px; margin-top:2px; }\s\n#importPanel .rad { width:auto; }\s\n#importPanel .chk { width:auto; margin:1px;border:0; }\s\n#importPanel .btn { width:auto; }\s\n#importPanel .btn1 { width:98%; }\s\n#importPanel .btn2 { width:48%; }\s\n#importPanel .btn3 { width:32%; }\s\n#importPanel .btn4 { width:23%; }\s\n#importPanel .btn5 { width:19%; }\s\n#importPanel .importButton { padding: 0em; margin: 0px; font-size:8pt; }\s\n#importPanel .importListButton { padding:0em 0.25em 0em 0.25em; color: #000000; display:inline }\s\n#backstagePanel #importPanel { left:10%; right:auto; }\s\n';\n//}}}\n//{{{\nconfig.macros.importTiddlers.html = '\s\n<!-- source and report -->\s\n<table><tr><td align=left>\s\n import from\s\n <input type="radio" class="rad" name="importFrom" id="importFromFile" value="file" CHECKED\s\n onclick="onClickImportButton(this,event)" title="show file controls"> local file\s\n <input type="radio" class="rad" name="importFrom" id="importFromWeb" value="http"\s\n onclick="onClickImportButton(this,event)" title="show web controls"> web server\s\n</td><td align=right>\s\n <input type=checkbox class="chk" id="chkImportReport"\s\n onClick="config.options[\s'chkImportReport\s']=this.checked;"> create report\s\n</td></tr></table>\s\n\s\n<div class="box" id="importSourcePanel" style="margin:.5em">\s\n<div id="importLocalPanel" style="display:block;margin-bottom:2px;"><!-- import from local file -->\s\nenter or browse for source path/filename<br>\s\n<input type="file" id="fileImportSource" size=57 style="width:100%"\s\n onKeyUp="config.macros.importTiddlers.src=this.value"\s\n onChange="config.macros.importTiddlers.src=this.value;document.getElementById(\s'importLoad\s').onclick()">\s\n<div id="importLocalPanelFix" style="display:none"><!-- FF3 FIXUP -->\s\n <input type="text" id="fileImportSourceFix" style="width:90%"\s\n title="Enter a path/file to import"\s\n onKeyUp="config.macros.importTiddlers.src=this.value"\s\n onChange="config.macros.importTiddlers.src=this.value;document.getElementById(\s'importLoad\s').onclick()">\s\n <input type="button" id="fileImportSourceFixButton" style="width:7%" value="..."\s\n title="Select a path/file to import"\s\n onClick="var r=config.macros.importTiddlers.askForFilename(this); if (!r||!r.length) return;\s\n document.getElementById(\s'fileImportSourceFix\s').value=r;\s\n config.macros.importTiddlers.src=r;\s\n document.getElementById(\s'importLoad\s').onclick()">\s\n</div><!--end FF3 FIXUP-->\s\n</div><!--end local-->\s\n<div id="importHTTPPanel" style="display:none;margin-bottom:2px;"><!-- import from http server -->\s\n<table><tr><td align=left>\s\n enter a URL or <a href="javascript:;" id="importSelectFeed"\s\n onclick="onClickImportButton(this,event)" title="select a pre-defined \s'systemServer\s' URL">\s\n select a server</a><br>\s\n</td><td align=right>\s\n <input type="checkbox" class="chk" id="importUsePassword"\s\n onClick="config.macros.importTiddlers.usePassword=this.checked;\s\n config.macros.importTiddlers.showPanel(\s'importIDPWPanel\s',this.checked,true);">password\s\n <input type="checkbox" class="chk" id="importUseProxy"\s\n onClick="config.macros.importTiddlers.useProxy=this.checked;\s\n config.macros.importTiddlers.showPanel(\s'importSiteProxy\s',this.checked,true);">proxy\s\n</td></tr></table>\s\n<input type="text" id="importSiteProxy" style="display:none;margin-bottom:1px" onfocus="this.select()" value="SiteProxy"\s\n onKeyUp="config.macros.importTiddlers.proxy=this.value"\s\n onChange="config.macros.importTiddlers.proxy=this.value;">\s\n<input type="text" id="importSourceURL" onfocus="this.select()" value="SiteUrl"\s\n onKeyUp="config.macros.importTiddlers.src=this.value"\s\n onChange="config.macros.importTiddlers.src=this.value;">\s\n<div id="importIDPWPanel" style="text-align:center;margin-top:2px;display:none";>\s\nusername: <input type=text id="txtImportID" style="width:25%" \s\n onChange="config.options.txtRemoteUsername=this.value;">\s\n password: <input type=password id="txtImportPW" style="width:25%" \s\n onChange="config.options.txtRemotePassword=this.value;">\s\n</div><!--end idpw-->\s\n</div><!--end http-->\s\n</div><!--end source-->\s\n\s\n<div class="box" id="importSelectPanel" style="display:none;margin:.5em;">\s\n<table><tr><td align=left>\s\nselect:\s\n<a href="javascript:;" id="importSelectAll"\s\n onclick="onClickImportButton(this);return false;" title="SELECT all tiddlers">\s\n all</a>\s\n&nbsp;<a href="javascript:;" id="importSelectNew"\s\n onclick="onClickImportButton(this);return false;" title="SELECT tiddlers not already in destination document">\s\n added</a>\s\n&nbsp;<a href="javascript:;" id="importSelectChanges"\s\n onclick="onClickImportButton(this);return false;" title="SELECT tiddlers that have been updated in source document">\s\n changes</a>\s\n&nbsp;<a href="javascript:;" id="importSelectDifferences"\s\n onclick="onClickImportButton(this);return false;" title="SELECT tiddlers that have been added or are different from existing tiddlers">\s\n differences</a>\s\n</td><td align=right>\s\n<a href="javascript:;" id="importListSmaller"\s\n onclick="onClickImportButton(this);return false;" title="SHRINK list size">\s\n &nbsp;&#150;&nbsp;</a>\s\n<a href="javascript:;" id="importListLarger"\s\n onclick="onClickImportButton(this);return false;" title="GROW list size">\s\n &nbsp;+&nbsp;</a>\s\n<a href="javascript:;" id="importListMaximize"\s\n onclick="onClickImportButton(this);return false;" title="MAXIMIZE/RESTORE list size">\s\n &nbsp;=&nbsp;</a>\s\n</td></tr></table>\s\n<select id="importList" size=8 multiple\s\n onchange="setTimeout(\s'refreshImportList(\s'+this.selectedIndex+\s')\s',1)">\s\n <!-- NOTE: delay refresh so list is updated AFTER onchange event is handled -->\s\n</select>\s\n<div style="text-align:center">\s\n <a href="javascript:;"\s\n title="click for help using filters..."\s\n onclick="alert(\s'A filter consists of one or more space-separated combinations of:\s\sn\s\sntiddler titles\s\sntag:[[tagvalue]]\s\sntag:[[tag expression]] (requires MatchTagsPlugin)\s\snstory:[[TiddlerName]]\s\snsearch:[[searchtext]]\s\sn\s\snUse a blank filter for all tiddlers.\s')"\s\n >filter</a>\s\n <input type="text" id="importLastFilter" style="margin-bottom:1px; width:65%"\s\n title="Enter a combination of one or more filters. Use a blank filter for all tiddlers."\s\n onfocus="this.select()" value=""\s\n onKeyUp="config.macros.importTiddlers.lastFilter=this.value"\s\n onChange="config.macros.importTiddlers.lastFilter=this.value;">\s\n <input type="button" id="importApplyFilter" style="width:20%" value="apply"\s\n title="filter list of tiddlers to include only those that match certain criteria"\s\n onclick="onClickImportButton(this)">\s\n </div>\s\n</div><!--end select-->\s\n\s\n<div class="box" id="importOptionsPanel" style="text-align:center;margin:.5em;display:none;">\s\n apply tags: <input type=checkbox class="chk" id="chkImportTags" checked\s\n onClick="config.macros.importTiddlers.importTags=this.checked;">from source&nbsp;\s\n <input type=checkbox class="chk" id="chkKeepTags" checked\s\n onClick="config.macros.importTiddlers.keepTags=this.checked;">keep existing&nbsp;\s\n <input type=checkbox class="chk" id="chkAddTags" \s\n onClick="config.macros.importTiddlers.addTags=this.checked;\s\n config.macros.importTiddlers.showPanel(\s'txtNewTags\s',this.checked,false);\s\n if (this.checked) document.getElementById(\s'txtNewTags\s').focus();">add tags<br>\s\n <input type=text id="txtNewTags" style="margin-top:4px;display:none;" size=15\s onfocus="this.select()" \s\n title="enter tags to be added to imported tiddlers" \s\n onKeyUp="config.macros.importTiddlers.newTags=this.value;\s\n document.getElementById(\s'chkAddTags\s').checked=this.value.length>0;" autocomplete=off>\s\n <nobr><input type=checkbox class="chk" id="chkSync" \s\n onClick="config.macros.importTiddlers.sync=this.checked;">\s\n link tiddlers to source document (for sync later)</nobr>\s\n</div><!--end options-->\s\n\s\n<div id="importButtonPanel" style="text-align:center">\s\n <input type=button id="importLoad" class="importButton btn3" value="open"\s\n title="load listbox with tiddlers from source document"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importOptions" class="importButton btn3" value="options..."\s\n title="set options for tags, sync, etc."\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importStart" class="importButton btn3" value="import"\s\n title="start/stop import of selected source tiddlers into current document"\s\n onclick="onClickImportButton(this)">\s\n <input type=button id="importClose" class="importButton btn3" value="done"\s\n title="clear listbox or hide control panel"\s\n onclick="onClickImportButton(this)">\s\n</div>\s\n\s\n<div class="none" id="importCollisionPanel" style="display:none;margin:.5em 0 .5em .5em;">\s\n <table><tr><td style="width:65%" align="left">\s\n <table><tr><td align=left>\s\n tiddler already exists:\s\n </td><td align=right>\s\n <input type=checkbox class="chk" id="importApplyToAll" \s\n onclick="document.getElementById(\s'importRename\s').disabled=this.checked;"\s\n checked>apply to all\s\n </td></tr></table>\s\n <input type=text id="importNewTitle" size=15 autocomplete=off">\s\n </td><td style="width:34%" align="center">\s\n <input type=button id="importMerge"\s\n class="importButton" style="width:47%" value="merge"\s\n title="append the incoming tiddler to the existing tiddler"\s\n onclick="onClickImportButton(this)"><!--\s\n --><input type=button id="importSkip"\s\n class="importButton" style="width:47%" value="skip"\s\n title="do not import this tiddler"\s\n onclick="onClickImportButton(this)"><!--\s\n --><br><input type=button id="importRename"\s\n class="importButton" style="width:47%" value="rename"\s\n title="rename the incoming tiddler"\s\n onclick="onClickImportButton(this)"><!--\s\n --><input type=button id="importReplace"\s\n class="importButton" style="width:47%" value="replace"\s\n title="discard the existing tiddler"\s\n onclick="onClickImportButton(this)">\s\n </td></tr></table>\s\n</div><!--end collision-->\s\n';\n//}}}\n//{{{\n// process control interactions\nfunction onClickImportButton(which,event) {\n var cmi=config.macros.importTiddlers; // abbreviation\n var list=cmi.$('importList'); if (!list) return;\n var thePanel=cmi.$('importPanel');\n var theCollisionPanel=cmi.$('importCollisionPanel');\n var theNewTitle=cmi.$('importNewTitle');\n var count=0;\n switch (which.id)\n {\n case 'importFromFile': // show local panel\n case 'importFromWeb': // show HTTP panel\n cmi.local=(which.id=='importFromFile');\n cmi.showPanel('importLocalPanel',cmi.local);\n cmi.showPanel('importHTTPPanel',!cmi.local);\n break;\n case 'importOptions': // show/hide options panel\n cmi.showPanel('importOptionsPanel',cmi.$('importOptionsPanel').style.display=='none');\n break;\n case 'fileImportSource':\n case 'importLoad': // load import source into hidden frame\n importReport(); // if an import was in progress, generate a report\n cmi.inbound=null; // clear the imported tiddler buffer\n refreshImportList(); // reset/resize the listbox\n if (cmi.src=='') break;\n // Load document, read it's DOM and fill the list\n cmi.loadRemoteFile(cmi.src,cmi.filterTiddlerList);\n break;\n case 'importSelectFeed': // select a pre-defined systemServer feed URL\n var p=Popup.create(which); if (!p) return;\n var tids=store.getTaggedTiddlers('systemServer');\n if (!tids.length)\n createTiddlyText(createTiddlyElement(p,'li'),'no pre-defined server feeds');\n for (var t=0; t<tids.length; t++) {\n var u=store.getTiddlerSlice(tids[t].title,'URL');\n var d=store.getTiddlerSlice(tids[t].title,'Description');\n if (!d||!d.length) d=store.getTiddlerSlice(tids[t].title,'description');\n if (!d||!d.length) d=u;\n createTiddlyButton(createTiddlyElement(p,'li'),tids[t].title,d,\n function(){\n var u=this.getAttribute('url');\n document.getElementById('importSourceURL').value=u;\n config.macros.importTiddlers.src=u;\n document.getElementById('importLoad').onclick();\n },\n null,null,null,{url:u});\n }\n Popup.show(p,false);\n event.cancelBubble = true;\n if (event.stopPropagation) event.stopPropagation();\n return(false);\n // create popup with feed list\n // onselect, insert feed URL into input field.\n break;\n case 'importSelectAll': // select all tiddler list items (i.e., not headings)\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < list.options.length; t++) {\n if (list.options[t].value=='') continue;\n list.options[t].selected=true;\n count++;\n }\n clearMessage(); displayMessage(cmi.countMsg.format([count]));\n cmi.$('importStart').disabled=!count;\n break;\n case 'importSelectNew': // select tiddlers not in current document\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < list.options.length; t++) {\n list.options[t].selected=false;\n if (list.options[t].value=='') continue;\n list.options[t].selected=!store.tiddlerExists(list.options[t].value);\n count+=list.options[t].selected?1:0;\n }\n clearMessage(); displayMessage(cmi.countMsg.format([count]));\n cmi.$('importStart').disabled=!count;\n break;\n case 'importSelectChanges': // select tiddlers that are updated from existing tiddlers\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < list.options.length; t++) {\n list.options[t].selected=false;\n if (list.options[t].value==''||!store.tiddlerExists(list.options[t].value)) continue;\n for (var i=0; i<cmi.inbound.length; i++) // find matching inbound tiddler\n { var inbound=cmi.inbound[i]; if (inbound.title==list.options[t].value) break; }\n list.options[t].selected=(inbound.modified-store.getTiddler(list.options[t].value).modified>0); // updated tiddler\n count+=list.options[t].selected?1:0;\n }\n clearMessage(); displayMessage(cmi.countMsg.format([count]));\n cmi.$('importStart').disabled=!count;\n break;\n case 'importSelectDifferences': // select tiddlers that are new or different from existing tiddlers\n importReport(); // if an import was in progress, generate a report\n for (var t=0,count=0; t < list.options.length; t++) {\n list.options[t].selected=false;\n if (list.options[t].value=='') continue;\n if (!store.tiddlerExists(list.options[t].value)) { list.options[t].selected=true; count++; continue; }\n for (var i=0; i<cmi.inbound.length; i++) // find matching inbound tiddler\n { var inbound=cmi.inbound[i]; if (inbound.title==list.options[t].value) break; }\n list.options[t].selected=(inbound.modified-store.getTiddler(list.options[t].value).modified!=0); // changed tiddler\n count+=list.options[t].selected?1:0;\n }\n clearMessage(); displayMessage(cmi.countMsg.format([count]));\n cmi.$('importStart').disabled=!count;\n break;\n case 'importApplyFilter': // filter list to include only matching tiddlers\n importReport(); // if an import was in progress, generate a report\n clearMessage();\n if (!cmi.all) // no tiddlers loaded = '0 selected'\n { displayMessage(cmi.countMsg.format([0])); return false; }\n var hash=cmi.$('importLastFilter').value;\n cmi.inbound=cmi.filterByHash('#'+hash,cmi.all);\n refreshImportList(); // reset/resize the listbox\n break;\n case 'importStart': // initiate the import processing\n importReport(); // if an import was in progress, generate a report\n cmi.$('importApplyToAll').checked=false;\n cmi.$('importStart').value=cmi.stopText;\n if (cmi.index>0) cmi.index=-1; // stop processing\n else cmi.index=importTiddlers(0); // or begin processing\n importStopped();\n break;\n case 'importClose': // unload imported tiddlers or hide the import control panel\n // if imported tiddlers not loaded, close the import control panel\n if (!cmi.inbound) { thePanel.style.display='none'; break; }\n importReport(); // if an import was in progress, generate a report\n cmi.inbound=null; // clear the imported tiddler buffer\n refreshImportList(); // reset/resize the listbox\n break;\n case 'importSkip': // don't import the tiddler\n cmi.lastAction=which;\n var theItem = list.options[cmi.index];\n for (var j=0;j<cmi.inbound.length;j++)\n if (cmi.inbound[j].title==theItem.value) break;\n var theImported = cmi.inbound[j];\n theImported.status='skipped after asking'; // mark item as skipped\n theCollisionPanel.style.display='none';\n cmi.index=importTiddlers(cmi.index+1); // resume with NEXT item\n importStopped();\n break;\n case 'importRename': // change name of imported tiddler\n cmi.lastAction=which;\n var theItem = list.options[cmi.index];\n for (var j=0;j<cmi.inbound.length;j++)\n if (cmi.inbound[j].title==theItem.value) break;\n var theImported = cmi.inbound[j];\n theImported.status = 'renamed from '+theImported.title; // mark item as renamed\n theImported.set(theNewTitle.value,null,null,null,null); // change the tiddler title\n theItem.value = theNewTitle.value; // change the listbox item text\n theItem.text = theNewTitle.value; // change the listbox item text\n theCollisionPanel.style.display='none';\n cmi.index=importTiddlers(cmi.index); // resume with THIS item\n importStopped();\n break;\n case 'importMerge': // join existing and imported tiddler content\n cmi.lastAction=which;\n var theItem = list.options[cmi.index];\n for (var j=0;j<cmi.inbound.length;j++)\n if (cmi.inbound[j].title==theItem.value) break;\n var theImported = cmi.inbound[j];\n var theExisting = store.getTiddler(theItem.value);\n var theText = theExisting.text+'\sn----\sn^^merged from: ';\n theText +='[['+cmi.src+'#'+theItem.value+'|'+cmi.src+'#'+theItem.value+']]^^\sn';\n theText +='^^'+theImported.modified.toLocaleString()+' by '+theImported.modifier+'^^\sn'+theImported.text;\n var theDate = new Date();\n var theTags = theExisting.getTags()+' '+theImported.getTags();\n theImported.set(null,theText,null,theDate,theTags);\n theImported.status = 'merged with '+theExisting.title; // mark item as merged\n theImported.status += ' - '+theExisting.modified.formatString('MM/DD/YYYY 0hh:0mm:0ss');\n theImported.status += ' by '+theExisting.modifier;\n theCollisionPanel.style.display='none';\n cmi.index=importTiddlers(cmi.index); // resume with this item\n importStopped();\n break;\n case 'importReplace': // substitute imported tiddler for existing tiddler\n cmi.lastAction=which;\n var theItem = list.options[cmi.index];\n for (var j=0;j<cmi.inbound.length;j++)\n if (cmi.inbound[j].title==theItem.value) break;\n var theImported = cmi.inbound[j];\n var theExisting = store.getTiddler(theItem.value);\n theImported.status = 'replaces '+theExisting.title; // mark item for replace\n theImported.status += ' - '+theExisting.modified.formatString('MM/DD/YYYY 0hh:0mm:0ss');\n theImported.status += ' by '+theExisting.modifier;\n theCollisionPanel.style.display='none';\n cmi.index=importTiddlers(cmi.index); // resume with THIS item\n importStopped();\n break;\n case 'importListSmaller': // decrease current listbox size, minimum=5\n if (list.options.length==1) break;\n list.size-=(list.size>5)?1:0;\n cmi.listsize=list.size;\n break;\n case 'importListLarger': // increase current listbox size, maximum=number of items in list\n if (list.options.length==1) break;\n list.size+=(list.size<list.options.length)?1:0;\n cmi.listsize=list.size;\n break;\n case 'importListMaximize': // toggle listbox size between current and maximum\n if (list.options.length==1) break;\n list.size=(list.size==list.options.length)?cmi.listsize:list.options.length;\n break;\n }\n}\n//}}}\n//{{{\nconfig.macros.importTiddlers.showPanel=function(place,show,skipAnim) {\n if (typeof place=='string') var place=document.getElementById(place);\n if (!place||!place.style) return;\n if(!skipAnim && anim && config.options.chkAnimate) anim.startAnimating(new Slider(place,show,false,'none'));\n else place.style.display=show?'block':'none';\n}\n//}}}\n//{{{\nfunction refreshImportList(selectedIndex) {\n var cmi=config.macros.importTiddlers; // abbrev\n var list=cmi.$('importList'); if (!list) return;\n // if nothing to show, reset list content and size\n if (!cmi.inbound) {\n while (list.length > 0) { list.options[0] = null; }\n list.options[0]=new Option(cmi.loadText,'',false,false);\n list.size=cmi.listsize;\n cmi.$('importLoad').disabled=false;\n cmi.$('importLoad').style.display='inline';\n cmi.$('importStart').disabled=true;\n cmi.$('importOptions').disabled=true;\n cmi.$('importOptions').style.display='none';\n cmi.$('fileImportSource').disabled=false;\n cmi.$('importFromFile').disabled=false;\n cmi.$('importFromWeb').disabled=false;\n cmi.$('importStart').value=cmi.startText;\n cmi.$('importClose').value=cmi.doneText;\n cmi.$('importSelectPanel').style.display='none';\n cmi.$('importOptionsPanel').style.display='none';\n return;\n }\n // there are inbound tiddlers loaded...\n cmi.$('importLoad').disabled=true;\n cmi.$('importLoad').style.display='none';\n cmi.$('importOptions').style.display='inline';\n cmi.$('importOptions').disabled=false;\n cmi.$('fileImportSource').disabled=true;\n cmi.$('importFromFile').disabled=true;\n cmi.$('importFromWeb').disabled=true;\n cmi.$('importClose').value=cmi.closeText;\n if (cmi.$('importSelectPanel').style.display=='none')\n cmi.showPanel('importSelectPanel',true);\n\n // get the sort order\n if (!selectedIndex) selectedIndex=0;\n if (selectedIndex==0) cmi.sort='title'; // heading\n if (selectedIndex==1) cmi.sort='title';\n if (selectedIndex==2) cmi.sort='modified';\n if (selectedIndex==3) cmi.sort='tags';\n if (selectedIndex>3) {\n // display selected tiddler count\n for (var t=0,count=0; t < list.options.length; t++) {\n if (!list.options[t].selected) continue;\n if (list.options[t].value!='')\n count+=1;\n else { // if heading is selected, deselect it, and then select and count all in section\n list.options[t].selected=false;\n for ( t++; t<list.options.length && list.options[t].value!=''; t++) {\n list.options[t].selected=true;\n count++;\n }\n }\n }\n clearMessage(); displayMessage(cmi.countMsg.format([count]));\n }\n cmi.$('importStart').disabled=!count;\n if (selectedIndex>3) return; // no refresh needed\n\n // get the alphasorted list of tiddlers\n var tiddlers=cmi.inbound;\n tiddlers.sort(function (a,b) {if(a['title'] == b['title']) return(0); else return (a['title'] < b['title']) ? -1 : +1; });\n // clear current list contents\n while (list.length > 0) { list.options[0] = null; }\n // add heading and control items to list\n var i=0;\n var indent=String.fromCharCode(160)+String.fromCharCode(160);\n if (cmi.all.length==tiddlers.length)\n var summary=cmi.summaryMsg.format([tiddlers.length,(tiddlers.length!=1)?cmi.plural:cmi.single]);\n else\n var summary=cmi.summaryFilteredMsg.format([tiddlers.length,cmi.all.length,(cmi.all.length!=1)?cmi.plural:cmi.single]);\n list.options[i++]=new Option(summary,'',false,false);\n list.options[i++]=new Option(((cmi.sort=='title' )?'>':indent)+' [by title]','',false,false);\n list.options[i++]=new Option(((cmi.sort=='modified')?'>':indent)+' [by date]','',false,false);\n list.options[i++]=new Option(((cmi.sort=='tags')?'>':indent)+' [by tags]','',false,false);\n // output the tiddler list\n switch(cmi.sort) {\n case 'title':\n for(var t = 0; t < tiddlers.length; t++)\n list.options[i++] = new Option(tiddlers[t].title,tiddlers[t].title,false,false);\n break;\n case 'modified':\n // sort descending for newest date first\n tiddlers.sort(function (a,b) {if(a['modified'] == b['modified']) return(0); else return (a['modified'] > b['modified']) ? -1 : +1; });\n var lastSection = '';\n for(var t = 0; t < tiddlers.length; t++) {\n var tiddler = tiddlers[t];\n var theSection = tiddler.modified.toLocaleDateString();\n if (theSection != lastSection) {\n list.options[i++] = new Option(theSection,'',false,false);\n lastSection = theSection;\n }\n list.options[i++] = new Option(indent+indent+tiddler.title,tiddler.title,false,false);\n }\n break;\n case 'tags':\n var theTitles = {}; // all tiddler titles, hash indexed by tag value\n var theTags = new Array();\n for(var t=0; t<tiddlers.length; t++) {\n var title=tiddlers[t].title;\n var tags=tiddlers[t].tags;\n if (!tags || !tags.length) {\n if (theTitles['untagged']==undefined) { theTags.push('untagged'); theTitles['untagged']=new Array(); }\n theTitles['untagged'].push(title);\n }\n else for(var s=0; s<tags.length; s++) {\n if (theTitles[tags[s]]==undefined) { theTags.push(tags[s]); theTitles[tags[s]]=new Array(); }\n theTitles[tags[s]].push(title);\n }\n }\n theTags.sort();\n for(var tagindex=0; tagindex<theTags.length; tagindex++) {\n var theTag=theTags[tagindex];\n list.options[i++]=new Option(theTag,'',false,false);\n for(var t=0; t<theTitles[theTag].length; t++)\n list.options[i++]=new Option(indent+indent+theTitles[theTag][t],theTitles[theTag][t],false,false);\n }\n break;\n }\n list.selectedIndex=selectedIndex; // select current control item\n if (list.size<cmi.listsize) list.size=cmi.listsize;\n if (list.size>list.options.length) list.size=list.options.length;\n}\n//}}}\n//{{{\n// re-entrant processing for handling import with interactive collision prompting\nfunction importTiddlers(startIndex) {\n var cmi=config.macros.importTiddlers; // abbrev\n if (!cmi.inbound) return -1;\n var list=cmi.$('importList'); if (!list) return;\n var t;\n // if starting new import, reset import status flags\n if (startIndex==0)\n for (var t=0;t<cmi.inbound.length;t++)\n cmi.inbound[t].status='';\n for (var i=startIndex; i<list.options.length; i++) {\n // if list item is not selected or is a heading (i.e., has no value), skip it\n if ((!list.options[i].selected) || ((t=list.options[i].value)==''))\n continue;\n for (var j=0;j<cmi.inbound.length;j++)\n if (cmi.inbound[j].title==t) break;\n var inbound = cmi.inbound[j];\n var theExisting = store.getTiddler(inbound.title);\n // avoid redundant import for tiddlers that are listed multiple times (when 'by tags')\n if (inbound.status=='added')\n continue;\n // don't import the 'ImportedTiddlers' history from the other document...\n if (inbound.title=='ImportedTiddlers')\n continue;\n // if tiddler exists and import not marked for replace or merge, stop importing\n if (theExisting && (inbound.status.substr(0,7)!='replace') && (inbound.status.substr(0,5)!='merge'))\n return i;\n // assemble tags (remote + existing + added)\n var newTags = '';\n if (cmi.importTags)\n newTags+=inbound.getTags() // import remote tags\n if (cmi.keepTags && theExisting)\n newTags+=' '+theExisting.getTags(); // keep existing tags\n if (cmi.addTags && cmi.newTags.trim().length)\n newTags+=' '+cmi.newTags; // add new tags\n inbound.set(null,null,null,null,newTags.trim());\n // set the status to 'added' (if not already set by the 'ask the user' UI)\n inbound.status=(inbound.status=='')?'added':inbound.status;\n // set sync fields\n if (cmi.sync) {\n if (!inbound.fields) inbound.fields={}; // for TW2.1.x backward-compatibility\n inbound.fields['server.page.revision']=inbound.modified.convertToYYYYMMDDHHMM();\n inbound.fields['server.type']='file';\n inbound.fields['server.host']=(cmi.local?'file://':'')+cmi.src;\n }\n // do the import!\n store.suspendNotifications();\n store.saveTiddler(inbound.title, inbound.title, inbound.text, inbound.modifier, inbound.modified, inbound.tags, inbound.fields, true, inbound.created);\n store.fetchTiddler(inbound.title).created = inbound.created; // force creation date to imported value (needed for TW2.1.x and earlier)\n store.resumeNotifications();\n }\n return(-1); // signals that we really finished the entire list\n}\nfunction importStopped() {\n var cmi=config.macros.importTiddlers; // abbrev\n var list=cmi.$('importList'); if (!list) return;\n var theNewTitle=cmi.$('importNewTitle');\n if (cmi.index==-1){ \n cmi.$('importStart').value=cmi.startText;\n importReport(); // import finished... generate the report\n } else {\n // import collision...\n // show the collision panel and set the title edit field\n cmi.$('importStart').value=cmi.stopText;\n cmi.showPanel('importCollisionPanel',true);\n theNewTitle.value=list.options[cmi.index].value;\n if (cmi.$('importApplyToAll').checked && cmi.lastAction && cmi.lastAction.id!='importRename')\n onClickImportButton(cmi.lastAction);\n }\n}\n//}}}\n//{{{\nfunction importReport() {\n var cmi=config.macros.importTiddlers; // abbrev\n if (!cmi.inbound) return;\n // if import was not completed, the collision panel will still be open... close it now.\n var panel=cmi.$('importCollisionPanel'); if (panel) panel.style.display='none';\n // get the alphasorted list of tiddlers\n var tiddlers = cmi.inbound;\n // gather the statistics\n var count=0; var total=0;\n for (var t=0; t<tiddlers.length; t++) {\n if (!tiddlers[t].status || !tiddlers[t].status.trim().length) continue;\n if (tiddlers[t].status.substr(0,7)!='skipped') count++;\n total++;\n }\n // generate a report\n if (total) displayMessage(cmi.processedMsg.format([total]));\n if (count && config.options.chkImportReport) {\n // get/create the report tiddler\n var theReport = store.getTiddler('ImportedTiddlers');\n if (!theReport) { theReport=new Tiddler(); theReport.title='ImportedTiddlers'; theReport.text=''; }\n // format the report content\n var now = new Date();\n var newText = 'On '+now.toLocaleString()+', '+config.options.txtUserName\n newText +=' imported '+count+' tiddler'+(count==1?'':'s')+' from\sn[['+cmi.src+'|'+cmi.src+']]:\sn';\n if (cmi.addTags && cmi.newTags.trim().length)\n newText += 'imported tiddlers were tagged with: "'+cmi.newTags+'"\sn';\n newText += '<<<\sn';\n for (var t=0; t<tiddlers.length; t++) if (tiddlers[t].status)\n newText += '#[['+tiddlers[t].title+']] - '+tiddlers[t].status+'\sn';\n newText += '<<<\sn';\n // update the ImportedTiddlers content and show the tiddler\n theReport.text = newText+((theReport.text!='')?'\sn----\sn':'')+theReport.text;\n theReport.modifier = config.options.txtUserName;\n theReport.modified = new Date();\n store.saveTiddler(theReport.title, theReport.title, theReport.text, theReport.modifier, theReport.modified, theReport.tags, theReport.fields);\n story.displayTiddler(null,theReport.title,1,null,null,false);\n story.refreshTiddler(theReport.title,1,true);\n }\n // reset status flags\n for (var t=0; t<cmi.inbound.length; t++) cmi.inbound[t].status='';\n // mark document as dirty and let display update as needed\n if (count) { store.setDirty(true); store.notifyAll(); }\n // always show final message when tiddlers were actually loaded\n if (count) displayMessage(cmi.importedMsg.format([count,tiddlers.length,cmi.src.replace(/%20/g,' ')]));\n}\n//}}}\n//{{{\n// // File and XMLHttpRequest I/O\nconfig.macros.importTiddlers.askForFilename=function(here) {\n var msg=here.title; // use tooltip as dialog box message\n var path=getLocalPath(document.location.href);\n var slashpos=path.lastIndexOf('/'); if (slashpos==-1) slashpos=path.lastIndexOf('\s\s'); \n if (slashpos!=-1) path = path.substr(0,slashpos+1); // remove filename from path, leave the trailing slash\n var file='';\n var result='';\n if(window.Components) { // moz\n try {\n netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');\n\n var nsIFilePicker = window.Components.interfaces.nsIFilePicker;\n var picker = Components.classes['@mozilla.org/filepicker;1'].createInstance(nsIFilePicker);\n picker.init(window, msg, nsIFilePicker.modeOpen);\n var thispath = Components.classes['@mozilla.org/file/local;1'].createInstance(Components.interfaces.nsILocalFile);\n thispath.initWithPath(path);\n picker.displayDirectory=thispath;\n picker.defaultExtension='html';\n picker.defaultString=file;\n picker.appendFilters(nsIFilePicker.filterAll|nsIFilePicker.filterText|nsIFilePicker.filterHTML);\n if (picker.show()!=nsIFilePicker.returnCancel) var result=picker.file.persistentDescriptor;\n }\n catch(e) { alert('error during local file access: '+e.toString()) }\n }\n else { // IE\n try { // XPSP2 IE only\n var s = new ActiveXObject('UserAccounts.CommonDialog');\n s.Filter='All files|*.*|Text files|*.txt|HTML files|*.htm;*.html|';\n s.FilterIndex=3; // default to HTML files;\n s.InitialDir=path;\n s.FileName=file;\n if (s.showOpen()) var result=s.FileName;\n }\n catch(e) { // fallback\n var result=prompt(msg,path+file);\n }\n }\n return result;\n}\n\nconfig.macros.importTiddlers.loadRemoteFile = function(src,callback) {\n if (src==undefined || !src.length) return null; // filename is required\n var original=src; // URL as specified\n var hashpos=src.indexOf('#'); if (hashpos!=-1) src=src.substr(0,hashpos); // URL with #... suffix removed (needed for IE)\n clearMessage();\n displayMessage(this.openMsg.format([src.replace(/%20/g,' ')]));\n if (src.substr(0,5)!='http:' && src.substr(0,5)!='file:') { // if not a URL, read from local filesystem\n var txt=loadFile(src);\n if (!txt) { // file didn't load, might be relative path.. try fixup\n var pathPrefix=document.location.href; // get current document path and trim off filename\n var slashpos=pathPrefix.lastIndexOf('/'); if (slashpos==-1) slashpos=pathPrefix.lastIndexOf('\s\s'); \n if (slashpos!=-1 && slashpos!=pathPrefix.length-1) pathPrefix=pathPrefix.substr(0,slashpos+1);\n src=pathPrefix+src;\n if (pathPrefix.substr(0,5)!='http:') src=getLocalPath(src);\n var txt=loadFile(src);\n }\n if (!txt) { // file still didn't load, report error\n displayMessage(config.macros.importTiddlers.openErrMsg.format([src.replace(/%20/g,' '),'(filesystem error)']));\n } else {\n displayMessage(config.macros.importTiddlers.readMsg.format([txt.length,src.replace(/%20/g,' ')]));\n if (callback) callback(true,original,convertUTF8ToUnicode(txt),src,null);\n }\n } else {\n var name=config.options.txtRemoteUsername; var pass=config.options.txtRemotePassword;\n var xhr=doHttp('GET',src,null,null,name,pass,callback,original,null)\n if (!xhr) displayMessage(config.macros.importTiddlers.openErrMsg.format([src,'(XMLHTTPRequest error)']));\n }\n}\n\nconfig.macros.importTiddlers.readTiddlersFromHTML=function(html)\n{\n var remoteStore=new TiddlyWiki();\n remoteStore.importTiddlyWiki(html);\n return remoteStore.getTiddlers('title'); \n}\n\nconfig.macros.importTiddlers.readTiddlersFromCSV=function(CSV) {\n var remoteStore=new TiddlyWiki();\n var lines=CSV.split('\sn'); var names=lines[0].split(','); CSV=lines.join('\sn')\n // ENCODE commas and newlines within quoted values\n var comma='!~comma~!'; var commaRE=new RegExp(comma,'g');\n var newline='!~newline~!'; var newlineRE=new RegExp(newline,'g');\n CSV=CSV.replace(/\sx22((?:[^\sx22]|\sx22\sx22)*?)\sx22/g,\n function(x){ return x.substr(1,x.length-2).replace(/\s,/g,comma).replace(/\sn/g,newline); });\n // PARSE lines\n var lines=CSV.split('\sn');\n for (var i=1; i<lines.length; i++) { if (!lines[i].length) continue;\n var values=lines[i].split(',');\n // DECODE commas, newlines and doubled-quotes within quoted values\n for (var v=0; v<values.length; v++)\n values[v]=values[v].replace(commaRE,',').replace(newlineRE,'\sn').replace(/\sx22\sx22/g,'\sx22');\n // EXTRACT tiddler values\n var title=''; var text=''; var tags=[]; var fields={};\n var created=null; var when=new Date(); var who=config.options.txtUserName;\n for (var v=0; v<values.length; v++) { var val=values[v];\n if (names[v]) switch(names[v].toLowerCase()) {\n case 'title': title=val.replace(/\s[\s]\s|/g,'_'); break;\n case 'created': created=new Date(val); break;\n case 'modified':when=new Date(val); break;\n case 'modifier':who=val; break;\n case 'text': text=val; break;\n case 'tags': tags=val.readBracketedList(); break;\n default: fields[names[v].toLowerCase()]=val; break;\n }\n }\n // CREATE tiddler in temporary store\n if (title.length) remoteStore.saveTiddler(title,title,text,who,when,tags,fields,true,created||when);\n }\n return remoteStore.getTiddlers('title'); \n}\n\nconfig.macros.importTiddlers.filterTiddlerList=function(success,params,txt,src,xhr) {\n var cmi=config.macros.importTiddlers; // abbreviation\n var src=src.replace(/%20/g,' ');\n if (!success) { displayMessage(cmi.openErrMsg.format([src,xhr.status])); return; }\n cmi.all=cmi.readTiddlersFromHTML(txt);\n if (!cmi.all||!cmi.all.length) cmi.all=cmi.readTiddlersFromCSV(txt)\n var count=cmi.all?cmi.all.length:0;\n var querypos=src.lastIndexOf('?'); if (querypos!=-1) src=src.substr(0,querypos);\n displayMessage(cmi.foundMsg.format([count,src]));\n cmi.inbound=cmi.filterByHash(params,cmi.all); // use full URL including hash (if any)\n cmi.$('importLastFilter').value=cmi.lastFilter;\n window.refreshImportList(0);\n}\n\nconfig.macros.importTiddlers.filterByHash=function(src,tiddlers)\n{\n var hashpos=src.lastIndexOf('#'); if (hashpos==-1) return tiddlers;\n var hash=src.substr(hashpos+1); if (!hash.length) return tiddlers;\n var tids=[];\n var params=hash.parseParams('anon',null,true,false,false);\n for (var p=1; p<params.length; p++) {\n switch (params[p].name) {\n case 'anon':\n case 'open':\n tids.pushUnique(params[p].value);\n break;\n case 'tag':\n if (store.getMatchingTiddlers) { // for boolean expressions - see MatchTagsPlugin\n var r=store.getMatchingTiddlers(params[p].value,null,tiddlers);\n for (var t=0; t<r.length; t++) tids.pushUnique(r[t].title);\n } else for (var t=0; t<tiddlers.length; t++)\n if (tiddlers[t].isTagged(params[p].value))\n tids.pushUnique(tiddlers[t].title);\n break;\n case 'story':\n for (var t=0; t<tiddlers.length; t++)\n if (tiddlers[t].title==params[p].value) {\n tiddlers[t].changed();\n for (var s=0; s<tiddlers[t].links.length; s++)\n tids.pushUnique(tiddlers[t].links[s]);\n break;\n }\n break;\n case 'search':\n for (var t=0; t<tiddlers.length; t++)\n if (tiddlers[t].text.indexOf(params[p].value)!=-1)\n tids.pushUnique(tiddlers[t].title);\n break;\n }\n }\n var matches=[];\n for (var t=0; t<tiddlers.length; t++)\n if (tids.contains(tiddlers[t].title))\n matches.push(tiddlers[t]);\n displayMessage(config.macros.importTiddlers.filterMsg.format([matches.length,hash]));\n config.macros.importTiddlers.lastFilter=hash;\n return matches;\n}\n//}}}
[[Open University|http://www3.open.ac.uk/study/explained/distance-learning.shtml]]\n\nhttp://www.slideshare.net/missan/presentations
>College transcripts are woefully inadequate at depicting student learning, said O'Connell, citing a widely held belief. He said the passport, however, is a "way of organizing what students know instead of what we told them."\n\nhttp://www.insidehighered.com/news/2014/01/09/wiche-transfer-passport-based-proficiency-rather-credits
Image Tools: Flickr, Picasa\nBlogging Tools: WordPress, Tumblr, Blogger, TypePad, MovableType\nMicro-Blogging Tools: Twitter, Yammer, Identica, Laconica\nWiki Tools: PBWiki, Wikispaces, Wikidot, WetPaint\nOnline Chat: AIM, MSN, Yahoo!, GTalk, Skype, Meebo, Campfire\nSocial Networks: Facebook, MySpace, LinkedIn, Ning\nOnline Broadcasting: Ustream.tv, Mogulus, Qik, Kite.tv\nAudio/Video: YouTube, TeacherTube, iTunesU, Hulu, Vimeo\nWeb Sharing: Digg, Reddit, StumbleUpon\nSocial Bookmarking: Delicious, Magnolia, Diigo\nOnline Applications: Google Apps, Microsoft Office Live, Zoho Apps, EtherPad, Basecamp, Backpack (from 37 Signals)\n\n[[from Michael Farmer|http://michaelfarmer.info/blog/?tag=lms-proposal]]\n
<<<\nThe controversies over the Bologna process in Germany also have aprinciple side, and that concerns the concept and the idea or thephilosophy of higher education and particularly of the university.Contrary to the Bologna rhetoric which evokes the spirit of the 'European' university, the values of free inquiry, academic freedom(also for students!), critical thinking, institutional autonomy etc, there is a different picture of the university, of teaching and learning behind the 'Lisbonised' Bologna system which belies the Sunday speeches. That isa picture of prescribed modularised curricula, developed and organisedby professional curriculum developers, a rationalised system of countingcredits, hours, 'workload' (load!), controlled by quality assuranceexperts under the umbrella of European Bologna superstructures. \n<<<
<<<\n!!! Failure of the status quo\n* Information scarcity is no longer the issue. Attention scarcity is the problem.\n* The publisher's role in information curation and filtering has never been more important. However, the tools to achieve them are changing.\n\n//Information is a source of learning. But unless it is organized, processed, and available to the right people in a format for decision making, it is a burden, not a benefit. // William Pollard, Physicist\n\n!!!Pathways to related content\n* Related search terms \n* Links to related content within and across resources\n* Dynamically generated as new content is added\n* Goal: Increases serendipitous discovery, site stickiness, and usage metrics like number of page views and time on site\n<<<\n\nThis from a publisher. What about us in the library?\n
http://orangoo.com/labs/Main/
http://www.schoollearningcommons.info/\n\n* Virtual\n* Physical\n* Knowledge Building Center\n* Personal Learning Environments\n* Tutoring\n* Course Advising\n* Career Advising\n* Financial Aid?\n* Office of undergraduate research\n* Multimedia "maker" space\n\n----\n\n* Integrate and coordinate academic and social support strategies focused on enabling students to meet rigorous academic standards.\n* more efficient use of school counselors and college support services staff\n* how social relationships within institutions foster emotional support and academic achievement\n\n!!!Purpose\n* improve learners' readeiness and support efforts to engage in research and writing\n* improve time management skills\n* resolve enrollment issues\n\n\n!!! Academic and Emotional Support Systemes\n* Individual counseling\n* Mentoring\n* Activities and develop strong interpersonal connections among students and faculty\n\n!!!Notes\nFaculty can structure the course to use facilities provided by learning commons. \nhttp://net.educause.edu/ir/library/pdf/eli7071.pdf\n
http://digital2.library.unt.edu/vocabularies/agent-qualifiers/\n
<!--{{{-->\n\n<div class='toolbar' macro='toolbar -closeTiddler closeOthers +editTiddler permalink references revisions jump fullscreen'></div>\n\n<div class='title' macro='view title'></div>\n\n<div class='subtitle'><span macro='view modifier link'></span>, <span macro='view modified date [[DD MMM YYYY]]'></span> (created <span macro='view created date [[DD MMM YYYY]]'></span>) <span macro='view renamedSubTitle'></span> <span macro='view historicalSubTitle'></span></div>\n\n<div class='tagging' macro='tagging'></div>\n\n<div class='tagged' macro='tags'></div>\n\n<div class='viewer' macro='view text wikified'></div>\n\n<div class='tagClear'></div>\n\n<!--}}}-->\n\n
<<<\nIn the model of novice learning under the old "instructional paradigm" (before the learning paradigm), experts performed their thinking for students and then asked the novice learners to do "mini versions" of their work. The experts then graded the students accordingly and hoped that something would happen, that some students might "get it." The less-suited students would then disappear into another major, and the most-suited would continue. But three or four decades of research has taught us that a lot of meaningful activity - struggling, processing, sense-making - is going on in the intermediate space between novice and expert. In the learning paradigm, we are focusing not on the expert's products but, rather, on the expert's practice. That new endpoint changes what we should be attending to in the intermediate processes. It changes the role of instructional and emerging technologies, for example, which allow us to see, capture, harvest, and design for the intermediate learning processes.\n<<<\n\n\n\n[[Randy Bass]]\n\nGood link: edsaid.wordpress.com/2012/06/24/from-teaching-to-learning/
from http://www.cisl.ucar.edu/info/FORMS/KNP1-6.html\n\n!!!Knowledge Networking (Abstract)\n\nThe Knowledge Networking (KN) initiative focuses on the integration of knowledge from different sources and domains across space and time. Modern computing and communications systems provide the infrastructure to send bits anywhere, anytime in mass quantities-radical connectivity. But connectivity alone cannot assure \n1 useful communication across disciplines, languages, cultures; \n2 appropriate processing and integration of knowledge from different sources, domains, and non-text media; \n3 efficacious activity and arrangements for teams, organizations, classrooms, or communities, working together over distance and time; or \n4 deepening understanding of the ethical, legal, and social implications of new developments in connectivity. \n\nIn short, *we have connectivity, but not interactivity and integration* . KN research aims to move beyond connectivity to achieve new levels of interactivity, increasing the semantic bandwidth, knowledge bandwidth, activity bandwidth, and cultural bandwidth among people, organizations, and communities.\n\n!!!Knowledge Networking\n\nTo "know" about something is a much stronger claim than to learn about it or to gather information on it. "Knowledge" implies consensual verification, as well as the ability to predict and shape outcomes. Advances in computing and communications now hold the promise of fundamentally accelerating the creation and distribution of information. However, the construction of knowledge requires more than collecting and transmitting large amounts of data. *Building knowledge requires the scientific community coming to grips with new forms of gathering data, new tools to manipulate and store information new ways of transforming that information, and new ways of working together over distance and time*. The challenge for NSF is to facilitate the evolution from today's emphasis on information and distributed data to emerging systems for knowledge and distributed intelligence. The payoff for the scientific community is that interdisciplinary communities that can be joined in sharing data, accumulating information and building knowledge together will treat complex problems, traditionally addressed within disciplinary boundaries. This shift from simple information access to knowledge networking holds great promise for to transforming society and science.\n\nNSF represents large science, engineering, and education communities that understand and can contribute to building these knowledge networks. Technological advances, spurred by the NSF, now enable scientific practitioners, who may be widely dispersed, to become a science network, sharing and integrating data, analyzing information and synthesizing knowledge. NSF wants to expand and scale up these activities in the sciences and engineering, enabling society to apply similar strategies throughout its information infrastructures.\n\nThe NSF Knowledge Networking initiative creates a program of closely interconnected activities to facilitate advances enabled by simultaneous revolutions in technology, content, and epistemology. The intellectual insights and the new process of science enabled by knowledge networking are central to NSF's mission.\n\n!!!Challenges\n\nOne challenge is to support activities that will create new ways of collecting, transforming, representing, sharing, and using information. The support must be applied effectively across a wide range of activities to enable the solution of the Knowledge Networking challenge and to provide to scientists, engineers, and society useful and easily implemented solutions to complex problems.\n\nA complementary challenge is to comprehend the human dimensions associated with knowledge networking communities. Multidisciplinary knowledge networking efforts will fail unless we understand and provide for the learning environments that enable skill sets, conceptual models, and values to be rapidly shared across disparate fields.\n\n!!!Goals\n\nDesigning tools for gathering and analyzing data. New types of tools are required to collect, share, and manipulate increasingly complex data sets and structures. Utilizing these tools involves innovations in computing, advances in telecommunications, and the development of more sophisticated algorithms and hardware/software systems.\n\nBuilding the next generation of representations. Data, information and knowledge require increasingly complex representations. New kinds of media are required to enable the communications of new types of messages and meanings. For example, transforming symbolic information into sensory form (e.g., visualization) necessitates translating scientific and mathematical notations into tangible modalities.\n\nExtending the human infrastructure that underlies knowledge networking. Generating new ideas increasingly involves participants in knowledge networks communicating with one another in real time and obtaining data from disaggregated sources. Expanding the knowledge networking community to new participants requires:\n\nMastering a common language and a generally accepted set of theories and conceptual models (to provide a framework for communication)\nInculcating communally defined processes of collecting and analyzing data (to enable sharing and validating information)\nDeveloping proficiency in design, reasoning, and argumentation (to facilitate the evolution of ideas)\nAccepting a common set of values that include respect for others' perspectives and for intellectual property (to encourage wide participation)\nStrategies\n\nIn keeping with NSF's strategic plan, the knowledge networking initiative proposes three research strategies.\n\nMaximizing cross-disciplinary research to make use of different needs and demands of distinct research communities;\nAddressing the common problems shared by different research communities;\nLeveraging existing research activities and building upon them, rather than starting from scratch.\nNSF also envisions several strategies to launch and manage knowledge networking:\nCreating ongoing working groups to integrate disciplinary issues;\nIntegrate community input through workshops;\nPromote interdisciplinary research;\nInvolve all of the Directorates at NSF.\nNSF as a Catalyst\n\nNSF can serve as a catalyst for creating knowledge networks. Part of this role involves supporting the development of enabling technologies (infrastructure), such as new algorithms and software systems; data structures; metadata; standards for interoperability, communications links, and computational platforms. These enhancements extend from innovative processes that bring researchers together in distributed collaboratories, to tools for analyzing and interpreting data in new ways, to sophisticated learning environments that help participants discover and integrate new knowledge.\n\nThe other portion of this catalytic role involves conceptualizing knowledge networking as collective action among scientific communities ranging across many fields and disciplines. By sharing disparate data and diverse perspectives, a community develops a common, evolving understanding of a complex topic. As the community's conception of the issues expands and deepens, its membership grows to include participants with new perspectives and backgrounds. Given its long experience with how this process of acculturation and distributed intelligence occurs in the scientific enterprise, NSF is positioned to aid in the development of the technological infrastructures, collaborative activities, and human communities needed for knowledge networking across in society as a whole.\n\nThe Knowledge Networking Initiative Integrates Layers of Achievement\n\nThe Knowledge Networking Initiative aims to create the underlying science and the tools, infrastructure, and distributed intellectual processes to achieve the layered aims shown in Figure 1.\n\nThe overarching goal is improving our understanding of and ability to manage larger and more complex natural, social, and material phenomena. Knowledge networking can enhance the operations of many human enterprises, with science and education the most obviously relevant to NSF's mission. The crucial added benefits that knowledge networking brings to the scientific enterprise are the abilities to:\n\nCouple models, knowledge, data, instruments, and intellectual activity across space, time, and disciplinary boundaries,\nWork with new types of content and knowledge bases of radically increased scope and scale,\nEnhance the overall cognitive ecology of science and engineering.\nAchieving these aims of coupling, scope, and intellectual community depends critically upon new levels of functionality in information infrastructures. We need a better understanding of how to push or pull relevant information wherever, whenever and to whomever it is useful; how to create true semantic interoperability in heterogeneous knowledge environments; and how to make knowledge maximally accessible with new modalities of interaction such as real-time multimedia, visualization, and simulation.\n\nAchieving such new functionality and making them widespread and universally accessible also requires re-conceptualizing the human processes involved in creating and disseminating knowledge. The groups involved include data gathering enterprises such as field research teams, observatories, and cyclotron facilities; information transmission functions such as messaging, publishing, and library systems; and integrating/stabilizing infrastructures such as standards and user groups. Each type of human interaction in the overall scientific process must alter if knowledge networking is to reach its full potential.\nFigure 2 and Figure 3 capture more of the dimensions of Knowledge Networks, and communicate their dynamic nature. \nExamples of Social Objectives and Relevance Outcomes that could be enabled by the Knowledge Nets Initiative.\n\nThe following examples are potential outcomes of Knowledge Networks. They illustrate the use of science and technologies to meet larger societal goals. These examples involve science and the use of scientific information that are possible only with the use of Knowledge Networks. In addition the examples require advancements in one or more of the subsystems (such as social use of the new knowledge, science modeling, datamelding, and real-time networks) from each of the top three layers of the Framework discussed above.\n\nCoping with Natural Disasters\n\nIn 1995, twelve forest fire fighters died tragically when they were trapped on the side of a mountain in Colorado, unaware that sudden changes in meteorological conditions had caused a change in the path of the fire. Although some data were available indicating a shift in the fire, this information could not be delivered to the scene of the fire in a timely and clearly understood manner. The enterprise, infrastructure and tools which constitute the framework of the Knowledge Nets (KN) initiative will enable an integrated framework which does not exist today for dealing with natural disasters, ultimately leading to minimizing loss. Specifically, the KN initiative could support the development of coupled fire and atmospheric models. These models require as input detailed knowledge of topography, ground cover and synoptic weather conditions. These data exist in various data bases spread over the country and are expressed in different formats. The result from a simulation must be overlaid with the detailed knowledge of the location of human and physical resources. In cases where fire is near more populated areas, as in the Oakland, California fires, additional information about the demographics and civil infrastructure must be incorporated. Even if this synthesis of rapidly changing information could be assembled today, delivery to strategic locations in an understandable form would still be necessary to ensure benefit. The infrastructure and tools components on the KN initiative are "glue" that will enable the effective management of natural disaster situations.\n\nAviation Safety:\n\nDelivery of current information to the cockpit and proper pilot training are essential elements in improving air safety and reducing operating costs. Significant progress has been made in pilot training and alerting pilots to potential life threatening situations. Examples of improved safety and reduced operating costs that could result from the research supported by KN are: 1) At many airports in the US, information on low-level wind shear coupled with Doppler radar allows air traffic controllers to alert pilots to unusual meteorological conditions. Improvements to the current capabilities could save additional lives and money for the airline industry. The current information that is assembled by air traffic controllers is of limited predictive value and must be reduced to a few numbers to allow the pilot to comprehend the information in the cockpit during takeoffs and landings. Synthesizing the results of models of the atmosphere and air traffic into the cockpit and control towers would allow the pilot and controller to better prepare for approaches or takeoffs through in-flight simulation of conditions. In addition to offering improved safety, this information will save significant fuel costs because planes would not have to be routed to different approaches at the last minute due to changed conditions on the ground. 2) The FAA is considering the feasibility of free flight by commercial airlines. This concept would allow aircraft to take the most direct route between cities rather than following established routes that pass predetermined checkpoints. Essential for free-flight are current information on weather conditions, location of other aircraft and conditions at airports along the route. Gathering this information and synthesizing and delivering it in a useful form is beyond our current capability. The airline industry estimates the annual savings, which may be recognized by implementing free flight, is tens of millions of dollars. 3) In-flight icing conditions are difficult to detect and even more difficult to predict. Several recent airline disasters have been attributed to icing. Improvements in the detection, prediction and delivery systems available to the airline industry are necessary to overcome this silent threat. The enterprise, infrastructure and tools that will be developed as part of the KN initiative will accelerate the ongoing research into in-flight icing.\n\nMonitoring and Restoring Landscape Change: the Florida Everglades\n\nLarge scale human impacts on landscapes have complex biological, social and economic consequences. The dramatic impact human activities have had on ecosystem function in the Everglades has elicited an enormous amount of research, land and water management and conservation activities. The health and recovery of the Everglades and adjoining areas is now being considered by stakeholders in many sectors: several federal agencies (DOI is dispersing $200 million for restoration), scores of state agencies and local jurisdictions, hundreds of research activities, academic centers from public and private universities, the sugar industry, two tribal nations, along with conservation and public grass-roots organizations. The dynamics of the interactions between all of these parties creates knowledge chaos conditions which leads to duplication of effort, gridlock, turf conflicts, organizational and political uncertainty, needless competition and distrust between stakeholders.\n\nInformation inputs for rational Everglades planning and recovery come from highly-distributed and diverse sources such as from long-term biological surveys, hydrochemical monitoring, watershed flow models, land use change analyses, remote sensing, economic analyses and human demographic studies, among inputs from other research, sociological and economic areas.\n\nThe accumulation, representation and communication of such rich and heterogeneous of data sets that span: decades of time, numerous research disciplines and diverse stakeholders in multiple sectors of the economy, creates enormous challenges and equally enormous potential payoffs for effective knowledge networking. Research and infrastructure development on data integration, data mining, geo-spatial visualization, human interactions, network communications, data sharing, the coordination of long term monitoring, all within the context of a well-defined, nationally important, environmental effort would have immediate value to society and represents an immediate payoff test-bed for new knowledge networking approaches. \nExamples of How Knowledge Networking can Facilitate Research and Education\n\nNetCDF: A Tool That Facilities Collaboration\n\nThough a typewritten table of numbers once sufficed to characterize most quantitative studies, scientific efforts now often yield quantities of data that can be structured, interpreted, and utilized for further study only by computer. Thus, methods for inter-computer data exchange represent critical infrastructure for scientific collaboration. Though there are common means for transferring human-readable material and for selecting and retrieving information from data-base management systems, there is little agreement on methods to convey some of the most common data structures, such as vectors and multidimensional arrays, used in certain disciplines.\n\nTo help address this problem, Unidata developed the Network Common Data Form (NetCDF). The method is not for end-user; rather, it is a programmer's tool kit for storing and retrieving data in files that are portable (i.e. transferable between dissimilar computers) and self describing (i.e. that contain enough information to obviate the need for ancillary documents on dimensionally, variable names, units of measure, etc.). The NetCDF development represents, on a very limited scale, a harbinger of impact KN will have on science, viz. the creation of enabling technologies that will result in the generation of fundamental new knowledge.\n\nThe NetCDF's existence and free availability appears to have had a positive effect on collaboration as well as on the development of scientific software. Hundreds of commercial and non-commercial organizations all around the world and representing a wide variety of disciplines have adopted NetCDF for scientific analysis or visualization.\n\n!!!Tools for Capturing, Validating, and Sharing Mathematical Knowledge\n\nMathematicians are attempting to build computer systems that effectively represent mathematical knowledge, and that enable the construction of databases of mathematical results and mechanically checked proofs in forms that are readable and usable by people. Users of such systems could shift among different but clear and unambiguous representational syntaxes that capture the same underlying mathematical knowledge in forms that are tailored for use in different contexts. Users of such systems could know that every mathematical result represented has a proof that has been checked by computer and is available for inspection. Mathematicians who have discovered new results may wish to add them to the collection, helping to publicize these results, certify their validity, and increase the overall capability. Such tools may also help to systematize mathematical knowledge and to integrate theoretical knowledge with computation. Such systems could be a clear example of the power of Knowledge Networking for dealing with organized knowledge rather than isolated facts, and the broad utility of mathematical knowledge makes it a compelling candidate. Wide availability of such capability and knowledge through integration with the Internet could lead to new generations of researchers, teachers, and students using such tools routinely in any context where mathematics is used. \nResearch Opportunities in Knowledge Networking:\n\nKnowledge Networking presents a number of research challenges and opportunities. These can be organized under a set of topics or threads, which we have termed *Interactivity, Representation, Cognition, Agents, Corpora*.\n\n!!!Interactivity\n\nInteractivity research studies the creation and maintenance of dynamic, content-rich relationships among people, instruments & tools, data, and artificial agents, using multiple modalities. Technologies that enable such interactivity encompass input/output devices, communication networks, and their interface characteristics, adapted with the aim of making the best match to what is known about the needs and requirements of individual people, groups, teams, and organizations for effective interaction.\nThe critical multidisciplinary aspects of Interactivity research result from the need to uncover common foundations for understanding widely differing types of participants (e.g. people or agents with particular skills; specialized instruments) coupled through unique domain-specific activities (e.g. doing geoscience or doing disaster relief) integrating problem- and domain-specific information (e.g., specialized datasets or knowledge bases), via a variety of media and channels (text, video, etc.), under a range of specific constraints (e.g. quality-of-service; sensory limitation such as no vision or hearing, etc.). Another multidisciplinary driver is the need to understand how to apply the fruits of Interactivity research effectively in many different domains.\nNew interdisciplinary Knowledge Networking research under the Interactivity thread includes:\n* Access and "universal access"\n* Body language and facial expression capture/generation\n* Dialogue and discourse structures and constraints\n* Ecological & virtual-environmental interactions\n* Image processing and gesture recognition\n* Intermodal mappings for people with disabilities\n* Haptics, smell, taste and balance technologies\n* Multimodal interactivity\n* Network and communications infrastructures for interactivity\n* Remote access/control and teleoperation\n* Signal processing and understanding\n* Speech recognition and natural language understanding\n* Real-time and time-modified interactivity\n* Valuation and incentives for interactivity\n\n!!!Representation\n\nResearch on representation studies the processes through which participants (people, groups, agents, etc.) model and encode knowledge about entities, processes, or phenomena in particular representational media, and, conversely, reconstruct meanings and semantics for representations in their contexts of use.\n\nThe critical multidisciplinary aspects of Representation research result from the need to uncover common foundations for understanding how widely differing types of participants (e.g. people or agents with particular domain- or culture-specific viewpoints; specialized data-gathering instruments), represent problem- and domain-specific entities or processes (e.g., protein molecules; organizational workflows), of differing representational level (e.g., sensory; cognitive), scale and complexity, for use in unique domain-specific activities (e.g. doing bioscience or doing collaborative design) via a variety of representational media and modalities (text, software, graphical data, simulations, in visual, audio, haptic modalities, etc.), under a range of specific constraints (e.g. size limitations, specificity constraints). Another multidisciplinary driver is the need to understand how to apply the fruits of Representation research effectively in many different domains.\nNew interdisciplinary Knowledge Networking research under the Representation thread includes:\nRepresentation of new entities or attributes, such as:\n\n*Complex data types\n* Complex systems and their structure\n* Domain- and discipline-specific objects, actions, and processes\n* Gestures and facial expressions\n* Human sensory information: touch, smell, taste, and balance\n* Illumination and rendering\n* Know-how and commonsense knowledge\n* Large-scale systems and phenomena\n* Mathematics and logic\n* Ontologies\n* Open physical, computational and biological systems\n* Organizational processes and workflows\n* Real world objects, processes and environments\n* Scientific principles, methods, and theories\n* Uncertainty\n* Complex operations on representations, such as:\n * Automatic generation of representations\n * Domain-independent abstraction (e.g., of texts and images)\n * Compression\n * Integration, fusion and interoperability;\n * Interpretation of representations in context\n * Multimedia indexing, abstraction\n * Translation of representations\n*New representational techniques and media such as:\n * Distributed representations\n * Distributed interpretations\n * Non-digital representational media such as culture, the physical world, molecules and Biological objects (e.g., DNA)\n * Multiperspective representations\n * Simulations and computer models\n * Tools for joint or collaborative knowledge construction and representation\n* New uses for representations\n * Cognition\n * Cognition research investigates interlinked processes of perception, reasoning, memory, learning, and action by participants in physical and socio-cultural situations. \n * The critical multidisciplinary aspects of Cognition research result from the need to uncover common foundations for integrated understanding of all phases of cognition, as carried out by a wide variety of cognitive entities (e.g., people, artificial agents, groups, organizations), cognizing (perceiving, reasoning/learning about, acting with) domain-specific phenomena of differing character, scale and complexity (e.g. perception of surface textures; organizational memory), in a wide variety of physical and social contexts (e.g. a laboratory, a crisis management scenario) under a range of specific constraints (e.g. complexity, realizability, or real-time constraints). \n * Another multidisciplinary driver is the need to understand how to apply the fruits of Cognition research effectively in many different domains.\n* New interdisciplinary Knowledge Networking research under the Representation thread includes:\n* New cognizing entities:\n * Cognition by individuals, groups, teams and organizations\n * Empirical studies of Knowledge networks as arenas for scientific experimentation, data gathering, analysis\n * Human comprehension in networked environments\n * Organizational and community memory systems\n* New objects of cognition such as:\n * Behavior and event processing of non-rigid objects\n * Complex, distributed, and open systems\nGroups, teams, organizations, institutions\nSpecific domain entities\nTasks of high complexity\nNew cognitive issues and methods:\nDistributed cognition\nDynamic adaptation\nError processing and propagation;\nExploiting parallel architectures for computation;\nFocus of attention\nHigh-level reasoning;\nKnowledge-based information processing;\nLearning effects of human exposure to virtual and real environments.\nNon-conceptual cognition;\nPerceptual, motor, and sensory-motor models;\nPerception-based problem solving\nRealizability of cognitive models\nSituated cognition\nSymbolic and geometric processing;\nTransfer of learning; skill training and acquisition\nCognitive aspects of trust and believability\n\n!!!Agents\n\nAgents research studies the active and sometimes physically embodied algorithms, software, communications, and tools that can assist people in Knowledge Networking activities. Examples of agents include knowledge agents that seek and manipulate specific data or information collections ("Knowbots") from interconnected commuter networks, and cooperative physical agents such as robots, intelligent devices, special instruments, and other non-human natural agents or environments.\nThe critical multidisciplinary aspects of Agents research result from the need to uncover common foundations for understanding how to support and augment a variety of people, teams, groups, and organizations, each with particular domain- or culture-specific needs, in performing unique domain-specific activities (e.g. doing bioscience, doing collaborative design, or emergency management), using a varied array of resources (scientific data sets, distributed simulations, specialized instruments), under a range of specific constraints (e.g. time, methodological, or performance quality constraints). Another multidisciplinary driver is the need to understand how to apply the fruits of Agents research effectively in many different domains. \nNew interdisciplinary Knowledge Networking research under the Agents thread includes:\nAutonomy\nBuilding (and dismantling) information-rich virtual communities and organizations\nDomain-specific contextual knowledge and commonsense knowledge for agents\nCoordination of activities and knowledge in heterogeneous systems and environments\nDegrees and types of augmentation and support for participants such as people, teams, or organizations.\nDesigns and criteria for sensory-motor systems\nDistributed control\nDomain-specific contextual knowledge and commonsense knowledge for agents\nDynamic adaptation and evolution of agents\nEngineering methodologies\nInteroperability of agents\nIncentive structures\nKnowledge at new scales: large collections of tiny, heterogeneous distributed agents; distributed knowledge networks for control of MEMS\nLoad and complexity management\nMathematical algorithms, machine architectures, and networking technologies for knowledge agents in information spaces\nMulti-agent systems\nModularity, parallelism and complexity\nPathologies and immune systems in large-scale human-computing aggregates, e.g. malicious agents, viruses, junk, "knowledge storms"\nPossible or optimal domain, range and scope of the agents' functionality\nPrinciples of decomposition and organization of tasks and resources (division of labor)\nRobustness, fault-tolerance, and reliability\nSpecific domain-dependent agents for assisting in information analysis, decision making, and remote control of instruments and access to information resources\nTrust, confidence, and believability\nUser, team, and organizational requirements and their evolution.\n\n!!!Corpora\n\nInvestigations of corpora (plural of "corpus") research the entire lifecycle (creation, structuring, storage, maintenance, use and disposal) of general and community-specific collections of data, information, and knowledge, ranging across ad hoc data collections, complex scientific databases, large and distributed digital libraries and even such unconventional entities as digital forms of artifacts in museums. Research in Corpora is a critical enabler of Knowledge Networking: people's ability to access, retrieve and comprehend information from complex databases and sources depends on how that information is created, structured, stored, presented, and managed.\nNew interdisciplinary Knowledge Networking research under the Corpora thread has two objectives: To accelerate cross-disciplinary database research, and to develop new kinds of cross-disciplinary data-sharing mechanisms, infrastructures, and relationships that can facilitate new interdisciplinary experimental research. Relevant research topics include: \n* Active and real-time databases and data sources\n* Classification and taxonomizing processes\n* Collection and indexing of retrospective and real-time data sources\n* Community, organizational, and social filtering of information and knowledge\n* Data and knowledge mining\n* Dealing with evolution of structure, function, content, and user requirements\n* Digital libraries and repositories across disciplines and application domains\n* Disciplinary databases; multi-lingual, cross-cultural, societal collections\n* Dissemination and distribution\n* Domain-specific taxonomies and ontologies\n* Dynamic synthesis of new structure, views, and metadata\n* Economics and valuation of information and content\n* Evolution of structure, function and content\n* Experimental evaluation\n* High-confidence and reliability\n* Intellectual property rights and ownership\n* Intelligent transaction processing\n* Meta-data research\n* Multi-modal information management\n* Object and multimedia environments\n* Organizations as active knowledgebases\n* Public access policies\n* Reliability, security, quality of data and data services\n* Searching, filtering, fusion, indexing and retrieval tools\n* Security and authorization\n* Structure, functionality and organization of corpora\n* Technologies of intellectual property, e.g., "terms and conditions"\n* Vertically and horizontally linked data sources\n\n
/***\n|Name|TaggedTemplateTweak|\n|Source|http://www.TiddlyTools.com/#TaggedTemplateTweak|\n|Documentation|http://www.TiddlyTools.com/#TaggedTemplateTweakInfo|\n|Version|1.6.1|\n|Author|Eric Shulman|\n|License|http://www.TiddlyTools.com/#LegalStatements|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Description|use alternative ViewTemplate/EditTemplate for specific tiddlers|\nThis plugin extends the core function, story.chooseTemplateForTiddler(), so that any given tiddler can be viewed and/or edited using alternatives to the standard tiddler templates.\n!!!!!Documentation\n>see [[TaggedTemplateTweakInfo]]\n!!!!!Revisions\n<<<\n2009.09.02 [1.6.1] apply field-based template (if any) *before* tag-based template\n| please see [[TaggedTemplateTweakInfo]] for previous revision details |\n2007.06.11 [1.0.0] initial release\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.TaggedTemplateTweak= {major: 1, minor: 6, revision: 1, date: new Date(2009,9,2)};\n\nif (!config.options.txtTemplateTweakFieldname) \n config.options.txtTemplateTweakFieldname='template';\n\nStory.prototype.taggedTemplate_chooseTemplateForTiddler = Story.prototype.chooseTemplateForTiddler\nStory.prototype.chooseTemplateForTiddler = function(title,template)\n{\n // get core template and split into theme and template name\n var coreTemplate=this.taggedTemplate_chooseTemplateForTiddler.apply(this,arguments);\n var theme=""; var template=coreTemplate;\n var parts=template.split(config.textPrimitives.sectionSeparator);\n if (parts[1]) { theme=parts[0]; template=parts[1]; }\n else theme=config.options.txtTheme||""; // if theme is not specified\n theme+=config.textPrimitives.sectionSeparator;\n\n // look for template using title as prefix\n if (!store.getTaggedTiddlers(title).length) { // if tiddler is not a tag\n if (store.getTiddlerText(theme+title+template))\n { return theme+title+template; } // theme##TitleTemplate\n if (store.getTiddlerText(title+template))\n { return title+template; } // TitleTemplate\n }\n\n // look for templates using custom field value as prefix\n var v=store.getValue(title,config.options.txtTemplateTweakFieldname);\n if (store.getTiddlerText(theme+v+template))\n { return theme+v+template; } // theme##valueTemplate\n if (store.getTiddlerText(v+template))\n { return v+template; } // valueTemplate\n\n // look for template using tags as prefix\n var tiddler=store.getTiddler(title);\n if (!tiddler) return coreTemplate; // tiddler doesn't exist... use core result\n for (i=0; i<tiddler.tags.length; i++) {\n var t=tiddler.tags[i]+template; // add tag prefix to template\n var c=t.substr(0,1).toUpperCase()+t.substr(1); // capitalized for WikiWord title\n if (store.getTiddlerText(theme+t)) { return theme+t; } // theme##tagTemplate\n if (store.getTiddlerText(theme+c)) { return theme+c; } // theme##TagTemplate\n if (store.getTiddlerText(t)) { return t; } // tagTemplate\n if (store.getTiddlerText(c)) { return c; } // TagTemplate\n }\n \n // no match... use core result\n return coreTemplate;\n}\n//}}}
<<<\nProgramming is really just a way of organizing a task so that it is replicable by something else -- a computer
*[[Smarthistory (part of Kahn)|http://smarthistory.khanacademy.org/]]\n* [[ Marginal Revolution University|http://mruniversity.com/]]\n* [[OpenStax|http://cnx.org/]]
!!!Linda Suskie\n\n* From "distribution" based model to "competency" based model (Gates)\n// some how the distribution model means student "select" from broad group of courses//\n\n!!!Kuber-Ross (Death or Changes)\n* Denial\n* Anger\n* Bargaining\n* Depression\n* Acceptance\n\n!!! What is assessment ( teaching)\n* Deciding what we want our student to learn\n* Making sure they learn it. \n\n!!!High Expectations\n* We don't do it enough\n\n!!! General Education\n* She says we need to do this \n* 20 - 80 rule ( 20 percent of the courses provide 80% of gen-ed. [ focus here ]\n\n!!! Distributed Education\n* Does this mean that students are going to be learning from **MANY** places?\n\n!!! What do you need to know\n* Knowledge and understanding\n* Skills\n* Attitudes and dispositions\n\n\n!!!ABC\n* audiance\n* behavior\n* content\n\n!!! Common Program Outcomes\n* Writing in the discipline\n* Critcal analysis\n* Information Literacy (critical thinking? Way beyond library resources)\n* Teamwork\n!!! What is the spectrum of objectives\n* thinking > adding 2 numbers\n* rubrics\n\n!!! What is a good learning goal\n* Outcomes - what graduates should be able to do\n* Clear - no fuzzy goals\n* Observable - what students should be able to do ( attitudes and values ? )\n* Skills and /or attitudes/values\n* Important - meet student employee needs\n\n\n\n\n\n\n\n\n
[[White paper|http://resources.1060research.com/docs/IntroductionToResourceOrientedComputing-1.pdf]]\n\n!!!The fundamental principles of ROC include:\n* Resource - A resource is an abstract set of information.\n* Identity - Each resource may be identified by one or more logical identifiers.\n* Resolution - A logical identifier may be resolved within an information-context to obtain a physical resource-representation.\n* Computation - Computation is the reification of a resource to a physical resource-representation.\n* Immutability - Resource representations are immutable.\n* Transreption - Transreption (short for transrepresentation) is the isomorphic lossless transformation of one physical resource-representation to another.
[img[filestore/uploads/webservices/repository_OSID_interfaceDiagram.png]]
<html>\n\n<div id="content" class="widecolumn" role="main">\n\n \n <!-- <div class="navigation">\n <div class="alignleft">&laquo; <a href="http://blog.zencoder.com/2010/09/29/job-opening-sales/" rel="prev">Job opening: Zencoder is looking for a sales professional</a></div>\n <div class="alignright"><a href="http://blog.zencoder.com/2010/10/06/how-many-formats-do-i-need-for-html5-video/" rel="next">How many formats do I need for HTML5 video?</a> &raquo;</div>\n </div> -->\n\n <div class="post-223 post type-post status-publish format-standard hentry category-uncategorized" id="post-223">\n <h1>How to encode video for mobile use</h1>\n\n <div class="entry">\n <p>The bad news first. There are hundreds of mobile devices out there, and it’s basically impossible to support 100.0% of them.</p>\n<p>The good news is that mobile devices are getting better. Gone are the days when 176×144 3GP was synonymous with mobile video. Modern smartphones can actually play high quality video, and smartphone use is increasing. That’s not to say that 3GP is over, or that everyone has a smartphone. But smartphone use is growing (at a <a href="http://www.canalys.com/pr/2010/r2010081.html">64% annualized rate</a> as of Q2 2010), and, not surprisingly, smartphone users are more likely to watch video on their phones than their, er, dumb-phone-using friends.</p>\n<p>So if you want to support 90%+ of mobile devices, you need at least two video types: 3GP + MPEG-4 for less sophisticated devices, and H.264 + MP4 for smartphones.</p>\n<p>That’s good news, really. <strong>One output video can cover all of your smartphone users</strong> – iPhone/iPad/iPod, Android, and (for the most part) Blackberry too. Toss in PSP, PS3, and Xbox 360 for good measure. &nbsp;(If you want to learn more about encoding for iOS specifically, check out our comprehensive <a href="http://go.brightcove.com/forms/zencoder-ios-encoding-guide">iOS encoding guide</a>.)<br>\n<span id="more-223"></span></p>\n<p>Of course, while one universal smartphone output can take care of most smartphone users, you can do better with multiple mobile outputs. For example, the iPad has a native resolution of 1024×768, fully five times higher than the 480×320 on earlier iPhones. So if you encode your video at 480×320, you’ll be missing out on the near-high-def capabilities of the iPad.</p>\n<p>Fortunately, you can target mobile devices well using a handful of standard encoding profiles. Start with the Universal Smartphone Profile for wide compatibility; add in an Advanced Smartphone Profile version for the more advanced devices; and round out your mobile list with a legacy profile for widest compatibility – either our Legacy Smartphone Profile (below), or even a 3GP video for even wider compatibility.</p>\n<p>Note that the following defaults are the starting point for these profiles. <a href="http://zencoder.com">Zencoder</a> uses these settings by default, but you can replicate them easily enough in whatever encoding tool you’re using.</p>\n<p>Defaults:</p>\n<p>Video: H.264, Level 3.0, Baseline profile<br>\nAudio: AAC, 1-2 channels</p>\n<h2>1. Universal Smartphone Profile</h2>\n<p>This is a great starting profile for wide compatibility with modern smartphones. Plays on just about everything, though it doesn’t take advantage of the higher resolutions and codec complexity possible on the newest crop of devices.</p>\n<h3>Plays on:</h3>\n<p><strong>iOS:</strong> iPhone, iPad, Apple TV, iPod Touch, iPod Classic, iPod 5.5G<br>\n<strong>Blackberry:</strong> Bold 9000, Curve 8910, 8900, 8520, Pearl 9XXX, Storm, Storm 2, Torch, Tour, Bold 9650 + 9700<br>\n<strong>Android:</strong> All (?)<br>\n<strong>Other:</strong> PSP (3.30+), PS3, Xbox 360, web</p>\n<h3>Doesn’t play on:</h3>\n<p>iPod 5G, PSP (pre-3.30), Blackberry Curve 9330, 9300, 8530, 83XX, Pearl 8XXX, 88XX</p>\n<h3>Settings:</h3>\n<p>Defaults, plus:</p>\n<p>audio_bitrate: 128 (or less)<br>\naudio_sample_rate: 44100 (or less)<br>\nsize: 480×320<br>\nmax_frame_rate: 30<br>\nvideo_bitrate: 1500 (or less)</p>\n<h2>1b. Universal Smartphone Profile B: higher resolution</h2>\n<p>This profile plays better on iPhone 4g, iPad, Apple TV, new iPod Touch, Droid, PS3, and Xbox, by increasing the video resolution. The extra pixels are wasted on older iPhones though, and make for a video that won’t play on Blackberry and some Android phones.</p>\n<h3>Plays on:</h3>\n<p>Everything above, minus Blackberry and maybe weaker Android devices</p>\n<h3>Settings:</h3>\n<p>Universal Smartphone Profile (above), plus:</p>\n<p>size: 640×480</p>\n<h2>2. Advanced Smartphone Profile</h2>\n<p>Newer iOS devices allow higher resolutions and higher encoding complexity (which means better compression). In particular, iPad and Apple TV users shouldn’t have to watch 480×320 video on their beautiful screens, so it makes sense to provide a higher quality version if you want to provide a good experience to these users.</p>\n<h3>Plays on:</h3>\n<p><strong>iOS:</strong> iPhone 4G, iPad, Apple TV*, newer iPod Touch<br>\n<strong>Android:</strong> Nexus One, Droid, maybe others. (YMMV on these, though. Some users report trouble with 720p video.)<br>\n<strong>Other:</strong> PS3, web</p>\n<h3>Doesn’t play on:</h3>\n<p><strong>iOS:</strong> iPod 5G/5.5G/Classic, iPhone 3GS and before, older iPod Touch PSP, old Apple TV*<br>\n<strong>Blackberry:</strong> all<br>\n<strong>Android:</strong> others<br>\n<strong>Other:</strong> PSP, PS3, Xbox 360, web</p>\n<h3>Settings:</h3>\n<p>Defaults, plus:</p>\n<p>h264_profile: main<br>\nh264_level: 3.1<br>\naudio_bitrate: 160 (or less)<br>\naudio_sample_rate: 48000<br>\nsize: 1280×720 (max) or 960×640 (iPhone 4 native)<br>\nmax_frame_rate: 30<br>\nvideo_bitrate: 5000 (or less)</p>\n<h2>*2b. Advanced Smartphone Profile B: with old Apple TV compatibility</h2>\n<p>To support older Apple TV devices, use the Advanced Smartphone Profile setting, plus one of the following:</p>\n<h3>Settings:</h3>\n<p>Advanced Smartphone Profile (above), plus either one of the following:</p>\n<p>size: 960×540</p>\n<p>OR</p>\n<p>max_frame_rate: 24</p>\n<h2>3. Legacy Smartphone Profile</h2>\n<p>This profile plays on the last major set of H.264-based mobile devices: notably, older iPods and some Blackberries. The tradeoff is significantly smaller video: 320×240, at no more than 768kbps.</p>\n<h3>Plays on:</h3>\n<p><strong>Everything above, plus</strong>: iPod 5G, PSP (pre 3.30), Blackberry Curve 9330, 9300, 8530, 83XX, Pearl 8XXX, 88XX</p>\n<h3>Settings:</h3>\n<p>Defaults, plus:</p>\n<p>audio_bitrate: 128 (or less)<br>\naudio_sample_rate: 44100 (or less)<br>\nsize: 320×240<br>\nmax_frame_rate: 30<br>\nvideo_bitrate: 768 (or less)<br>\nh264_level: 1.3</p>\n<h2>4. Legacy 3GP Profile A and B</h2>\n<p>Finally, a 3GP profile or two will extend support to many remaining mobile devices.</p>\n<p>Notably, you can use these on most of the same devices supported above under the Legacy Smartphone Profile. So if you’re encoding a 3GP video at 320×240, you might not need to encode another H.264 video at 320×240.</p>\n<p>Note that 3GP video support is still in beta at Zencoder.</p>\n<p>Finally, note that these videos will look terrible, but that’s the cost of supporting 3GP phones.</p>\n<h3>Plays on:</h3>\n<p><strong>Hard to say.</strong> There are thousands of types of 3GP devices, and each one is a little different. Consider these a starting point.</p>\n<h3>Profile A</h3>\n<p>format: 3gp<br>\nvideo_codec: mpeg4<br>\nsize: 320×240<br>\naspect_mode: pad<br>\nframe_rate: 15<br>\nupscale: true<br>\nvideo_bitrate: 192<br>\nbitrate_cap: 192<br>\naudio_bitrate: 24<br>\naudio_channels: 1<br>\naudio_sample_rate: 16000</p>\n<h3>Profile B</h3>\n<p>format: 3gp<br>\nvideo_codec: mpeg4<br>\nsize: 176×144<br>\naspect_mode: pad<br>\nframe_rate: 5<br>\nupscale: true<br>\nvideo_bitrate: 52<br>\nbitrate_cap: 58<br>\nbuffer_size: 16<br>\naudio_bitrate: 16<br>\naudio_channels: 1<br>\naudio_sample_rate: 16000</p>\n<h2>Summary</h2>\n<p>If you want to create mobile video, start with the Universal Smartphone Profile. For better quality, supplement this with Advanced Smartphone Profile video. For wider compatibility, add a Legacy profile or two using either MP4 or 3GP. That’s it. It only takes 1-3 profiles to support most mobile devices.</p>\n<h2>Edits</h2>\n<p>Older iPhone/iPod devices ask for the “H.264 Baseline Low Complexity” profile. “Low Complexity” isn’t actually a H.264 standard – it actually just means “only 1 reference frame”. The jury is out on how much Apple devices really enforce this, but for true compatibility, you should probably use Baseline profile and limit reference frames to 1. You can do this at Zencoder with the new <code>h264_reference_frames</code> setting.</p>\n<p><strong>November 23</strong>: A few people have asked about Palm Pre video. The <a href="http://developer.palm.com/index.php?option=com_content&amp;view=article&amp;id=1752">published specs</a> for Palm Pre are very similar to other smartphones: 480×320 native resolution (with 640×480 supported); H.264, H.263, or MPEG-4 video; MP3 and AAC audio (along with a few other codecs). If these specs are accurate and comprehensive, then the Universal and the Legacy profiles above should work on Palm Pre. I don’t have easy access to a Pre, so if anyone wants to test this for us, we’d be happy to give you some free encoding at Zencoder to use for testing. <a href="http://zencoder.com/contact">Get in touch</a> if you want to help out.</p>\n<p><strong>January 24</strong>: In order to deliver 3GP video as an RTMP stream it needs to be “hinted”. Add <code>"hint": 1</code> to your API request to enable it.</p>\n\n <div class="clear"></div>\n </div>\n </div>\n\n \n<div id="disqus_thread"><iframe id="urdtnhkrxbytdtdfdgymbdxbxlejrsliewx" style="width: 100%; border: 1px solid rgb(204, 204, 204); height: 80px; background-color: rgb(255, 255, 255); background-position: initial initial; background-repeat: initial initial;"></iframe></div>\n\n<a href="http://disqus.com" class="dsq-brlink">blog comments powered by <span class="logo-disqus">Disqus</span></a>\n\n\n \n </div>\n</html>
/*\n QuizPlugin\n\n*/\n\n/***\n|Name|QuizPlugin|\n|Description|A macro to generate an interactive quiz|\n|Source||\n|Documentation||\n|Version|0.1|\n|Author|Michael Mahemoff, Osmosoft|\n|''License:''|[[BSD open source license]]|\n|~CoreVersion|2.2|\n\nUsage:\n< < quiz > > (without any of the spaces)\nThe macro will look for all tiddlers tagged "Question". It will generate a question for each of them. The example question tiddlers in the demo self-document how to author question tiddlers.\n\nOf course, anyone can cheat by viewing source. But then, they'd be cheaters with their pants on fire.\n\nMore options in the future and a reset quiz button. Maybe even a secure tiddlyweb based server-side to save cheaters from themselves.\n***/\n\n/*{{{*/\nif(!version.extensions.QuizPlugin) {\n\n version.extensions.QuizPlugin = {installed:true};\n\n (function() {\n\n var $ = jQuery;\n jQuery.fn.attach = function(html) { return this.append(html).children(":last"); };\n\n config.macros.quiz = {\n\n init: function() {\n var stylesheet = store.getTiddlerText(tiddler.title + "##StyleSheet");\n config.shadowTiddlers["StyleSheetQuizPlugin"] = stylesheet;\n store.addNotification("StyleSheetQuizPlugin", refreshStyles);\n },\n\n handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n $(place).parents(".tiddler").find(".defaultCommand").removeClass("defaultCommand");\n var quizEl = $(createTiddlyElement(place, "div", null, "quiz"));\n $.each(shuffle(store.getTaggedTiddlers("question")), function(i, questionTiddler) {\n quizEl.append(buildQuestionEl(parseQuestion(questionTiddler.text)));\n });\n quizEl\n .append($("<button>check</button>").click(function() { checkQuiz(quizEl); }))\n .append($("<div class='quizStatus finale' />"));\n }\n\n };\n\n function parseQuestion(questionText) {\n var question = {\n challenge: wikifyStatic(trim(questionText.replace(/^\s*.*/mg, ""))),\n wrongOptions: questionText.match(/^\s* .*$/mg),\n rightOptions: questionText.match(/^\s*\s* .*$/mg),\n };\n for (i=0; i<question.wrongOptions.length; i++) {\n question.wrongOptions[i] = question.wrongOptions[i].replace(/^\s*+ /,"");\n }\n for (i=0; i<question.rightOptions.length; i++) {\n question.rightOptions[i] = question.rightOptions[i].replace(/^\s*+ /,"");\n }\n question.options = shuffle(question.wrongOptions.concat(question.rightOptions));\n return question;\n }\n\n function buildQuestionEl(question) {\n var questionEl = $("<div class='question'/>")\n // .append("<div class='challenge'>"+question.challenge+"</div>")\n // .append("<div class='choose'>Choose " + question.rightOptions.length + "</div>");\n .append("<div class='challenge'>"+question.challenge + " " +\n "<span class='choose'>(choose " + question.rightOptions.length + ")</span></div>");\n for (i=0; i<question.options.length; i++) {\n var isRight = (question.rightOptions.indexOf(question.options[i])!=-1);\n $("<div class='option'/>")\n .attach("<input type='checkbox' />")\n /*\n .click(function() {\n // console.log($(this).parent().siblings(".option"));\n if (! $(this).is(":checked")) return;\n var checksRemaining = question.rightOptions.length-1;\n $(this).parent().siblings(".option").find(":checkbox").each(function() {\n console.log(this);\n if ($(this).is(":checked")) {\n if (checksRemaining-- <= 0) $(this).attr("checked", false);\n }\n });\n })\n */\n .end()\n .addClass(isRight ? "right" : "wrong")\n .attach("<span>"+question.options[i]+"</span>")\n .click(function() { $(this).prev().click(); })\n .end()\n .appendTo(questionEl);\n }\n questionEl.append("<div class='status'></div>");\n return questionEl;\n }\n\n function checkQuiz(quizEl) {\n console.log("check");\n var tally = 0;\n quizEl.find(".question").each(function() {\n var isCorrect = true;\n var $question = $(this);\n $question.find(".option").each(function() {\n var optionIsRight = $(this).hasClass("right");\n var userSaysItsRight = $(this).find(":checkbox").is(":checked");\n if (optionIsRight!=userSaysItsRight) isCorrect = false;\n });\n if (isCorrect) tally++;\n $question.find(".status")\n .html(isCorrect ? "<span class='correct finale'>Correct</span>" :\n "<span class='incorrect finale'>Incorrect</span>");\n });\n var total = quizEl.find(".question").length;\n quizEl.find(".quizStatus")\n .empty()\n .append(tally + " of " + total + " correct. ")\n .append((tally==total) ? " Well done!" : "")\n .attach("<span class='pseudolink'>Reset</span>")\n .click(function() {\n $(quizEl).find(".finale").fadeOut(function() { $(this).empty(); });\n $(quizEl).find(":checkbox").attr("checked", false);\n })\n .end();\n console.log("*** reveal finale");\n revealFinale();\n }\n\n function revealFinale() {\n console.log("reveal finale");\n $(".right span").addClass("rightFinale");\n $(".finale").fadeIn();\n }\n\n function clearFinale() {\n $(".right span").removeClass("rightFinale");\n $(".finale").hide();\n }\n\n // adapted fro mhttp://jsfromhell.com/array/shuffle\n function shuffle(o) {\n for (var j, x, i = o.length; i;\n j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x)\n ;\n return o;\n }\n\n config.macros.quiz.init();\n\n function trim(s) { return s.replace(/^[ \sn\st]*/, "").replace(/[ \sn\st]*$/, ""); }\n\n })();\n\n\n/***\n!StyleSheet\n\n.quiz .finale { display: none; }\n.quiz .pseudolink { text-decoration: underline; color:[[ColorPalette::SecondaryDark]]; cursor: pointer; }\n.quizStatus { margin: 1em 0; font-weight: bold; }\n\n.question { margin: 1em 0; }\n.question .choose { font-style: italic; }\n.question .correct { color: #080; }\n.question .incorrect { color: #b00; }\n\n.option .rightness { margin-left: 0.5em; }\n.option span { cursor: pointer; }\n\n.rightFinale { font-weight: bold; text-decoration: underline; }\n\n!(end of StyleSheet)\n\n***/\n\n} // end of 'install only once'\n/*}}}*/\n
!!!Directions\n<<<\nThe discussion at the steering committee focused on a 4 by 4 matrix of goals and strategies to achieve those goals. The goals included:\n\n(1) expanding access,\n\n(2) increasing efficiency so student costs could be restrained,\n\n(3) strengthening the link between postsecondary education and the labor market, and\n\n(4) enhancing the student experience.\n\nThe four strategies mapped out by the Parthenon Group were:\n\n(1) allowing all institutions to follow market forces in developing online offerings, which would be for all practical purposes the strategy that Florida has pursued up to this point,\n\n(2) fostering collaboration between institutions,\n\n(3) establish one or more lead institutions to be responsible for the delivery of online programming throughout the state, or\n\n(4) create a new online institution to be the best in the world at doing this new type of business.\n\n<<<
<<<\n\nTrying to articulate in terms that I understand better what I think is the\nreal challenge for universities, I used the notion of 'unbundling'. A long\ntime ago, universities offered a full package and had almost a monopoly as a\nprovider of that package. Nowadays, many, if not all, of the parts of that\npackage are also offered by alternative providers:\n\n* professors used to author content: many still do, but there is such an abundance of high quality content (OER and other) that I don't understand why we would still focus on this as a core aspect;\n* professors used to deliver content, for instance by lecturing: many still do, but the effectiveness of doing this is very questionable, there are many alternatives now and delivery of content is challenged by the flipped classroom and other alternative models;\n* universities used to support students in the learning process: well, some did and some still do, but spontaneous or organised communities of learning are moving on-line;\n* professors used to create exams in order to validate that students had learned: well, this is certainly still the norm, but I have argued before that exams were intended as a means and have now become a goal for students which actually impedes learning and, in any case, automated or peer grading, as well as learning analytics provide rather attractive alternatives that scale much better;\n* universities had the monopoly of accreditation through diplomas: again, this is still largely the case, but also under pressure through the use of badges and alliances between alternative providers of learning and corporations.\n\nAll in all, through this process of unbundling, the authority of the\nuniversity as a learning institution is challenged at a deep level. Being\nthe optimist that I am, I think this is A Good Thing: either the\nuniversities can make clear what value they add by bundling these different\nservices or they will become less and less relevant, as specialised\nproviders of only one or other service will be more effective. \n\n<<<\n
[img[/filestore/uploads/computing/tools.png]]
>The accepted state is to be a cog. The preferred career is to follow the well-worn path, to read the instructions, to do what we're told. It's safer that way. Less responsibility. More people to blame.\n\n>When someone comes along and says, "not me, I'm going down a different path," we flinch. We're not organized to encourage and celebrate the unproven striver. It's safer to tear them down (with their best interests at heart, of course). Better, we think, to let them down easy, to encourage them to take a safer path, to be realistic, to hear it from us rather than the marketplace.\n\n[[from Seth Godin|http://sethgodin.typepad.com/seths_blog/2010/10/do-you-need-a-permit.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+typepad%2Fsethsmainblog+%28Seth%27s+Blog%29]]
[[Yout can't|http://nathan.torkington.com/blog/2011/11/23/libraries-where-it-all-went-wrong/]]
[[from the Topic Map Handbook|http://www.sts.tu-harburg.de/~r.f.moeller/lectures/anatomie-i-und-k-system/empolistopicmapswhitepaper_eng.pdf]]\n\n!!!Kinds of information managed\n* data \n* assets\n* documents\n* content (structured documents with access to parts)\n* metadata\n* links\n* knowledge structure management\n
<html>\n<embed src="/filestore/uploads/learning/Stanford-OLI.pdf" width="100%" height="800px"/>\n</html>
/***\n|Name|AliasPlugin|\n|Source|http://www.TiddlyTools.com/#AliasPlugin|\n|Documentation|http://www.TiddlyTools.com/#AliasPluginInfo|\n|Version|1.1.1|\n|Author|Eric Shulman|\n|License|http://www.TiddlyTools.com/#LegalStatements|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Description|Create text-substitution macros|\nDefine macros for abbreviations and other "aliases", and then embed them in the rest of your tiddler content to quickly insert common terms, phrases and links without a lot of repetitive typing.\n!!!!!Documentation\n> see [[AliasPluginInfo]]\n!!!!!Revisions\n<<<\n2009.09.09 1.1.1 'tiddler' arg passed to wikify() so aliases containing macros render with correct context\n| Please see [[AliasPluginInfo]] for previous revision details |\n2005.08.12 1.0.0 initial release\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.AliasPlugin= {major: 1, minor: 1, revision: 1, date: new Date(2009,9,9)};\nconfig.macros.alias= { };\nconfig.macros.alias.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n var alias=params.shift(); if (!alias) return; alias=alias.replace(/ /g,"_"); // don't allow spaces in alias\n if (config.macros[alias]==undefined) { // create new macro (as needed)\n config.macros[alias] = { };\n config.macros[alias].handler =\n function (place,macroName,params,wikifier,paramString,tiddler)\n { wikify(config.macros[macroName].text.format(params),place,null,tiddler); }\n }\n config.macros[alias].text = params[0]?params.join(' '):alias; // set alias text\n}\n//}}}
The following quotes are from David Lewis's 1998 article [[What if LIbraries are Artifact-Bound Institutions|https://scholarworks.iupui.edu/handle/1805/434]]\n\n<<<\nLibraries are artifact-bound institutions, and as such, will be replaced\nas the dominant technology for information communication moves\nfrom tangible objects to electronic bits on a network. As this transition\noccurs, it is important to understand not what libraries have done,\nbut rather what they are for. Libraries make information easily,\npublicly, and cheaply available. They are the means through\nwhich organizations and communities subsidize the distribution\nof information to residents and members. Without such support,\ninformation is underused, and its potential benefit is lost. As the\nlibrary fades as the channel for this subsidy, it is critical that the\nsubsidy itself is not lost. If it is, our organizations will be less effective\nand our communities poorer. By understanding these issues,\nlibrarians can shape the information economy so that institutional and\ncommunity subsidy is maintained, and new technologies enhance\nand extend information availability. If preserving the library as an\ninstitution is our focus, we will fail in these tasks.\n\n!!! What are libraries for?\nThe primary function of most libraries for the last century and a half has been to make the artifacts that contain information -books, serials, newspapers, and their derivatives - easily and conveniently available to individuals in organizations and communities. Libraries have stored, organized, and preserved these artifacts in ways that no single individual could. While many people collect books, and most buy newspapers and magazines, libraries have been the place to go when one's personal collection was not sufficient, and the place for those with limited economic means to gain access to what they could not otherwise afford. Communities and organizations fund these activities because they recognize that libraries create a common good. Libraries make information more available to the individuals in communities and organizations than would be the case if individuals were left to their own devices. This in turn makes the organization more productive and enhances the quality of life in communities.\n<<<\n\n!!! Digital Age\n* The individual is much more in charge of his access to information resources (does he need the library?)\n* The space (building) is more valuable without books\n* The faculty member still need you to buy things (80%)\n* Libraries and //gateways// only (60%)\n\n>Supporting undergraduate education and teaching information literacy to students are chief priorities for academic libraries, trumping their traditional emphasis on collection-building and the preservation and discovery of research materials.\n\nBut the faculty are not buying it (are they?)\n\n!!!Information Subsidies\n!!!!! Community access to proprietary access\n\n<<<\n... it is easy to imagine the "library" as a small office with a couple\nof staff members who negotiate contracts with content providers,\nsurvey users, and lobby funding bodies. The content providers will\nbe largely in the private sector and will create the content and the\nnecessary, infrastructure. The library is effectively "out-sourced," and\ndollars once spent on buildings, printed materials, and staff are now\nspent on contracts that provide access rights.\n<<<\n\n!!!!! Free and Open Distribution of Content\nTo quote Lyman, "Nearly all knowledge is\ncreated and consumed within gift exchange systems, not markets--\nthat is, by groups whose very social glue consists of sharing\nknowledge."[9] This is\n\n\nhttp://www.slideshare.net/nitle/david-lewis-on-libraries?qid=5cbc0fd8-6bf9-4ea2-b001-3a4769c2abd5&v=qf1&b=&from_search=1
{{{\n<?xml version="1.0" encoding="UTF-8"?>\n<rdf:RDF\n xml:base="http://chroniclingamerica.loc.gov/lccn/sn83030214/1909-12-26/ed-1/seq-13"\n xmlns:dc="http://purl.org/dc/elements/1.1/"\n xmlns:dcterms="http://purl.org/dc/terms/"\n xmlns:exif="http://www.w3.org/2003/12/exif/ns#"\n xmlns:foaf="http://xmlns.com/foaf/0.1/"\n xmlns:ndnp="http://chroniclingamerica.loc.gov/terms#"\n xmlns:ore="http://www.openarchives.org/ore/terms/"\n xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"\n>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13.rdf">\n <dcterms:created rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2009-07-10T12:19:24-04:00</dcterms:created>\n <rdf:type rdf:resource="http://www.openarchives.org/ore/terms/ResourceMap"/>\n <dcterms:creator rdf:resource="http://chroniclingamerica.loc.gov/awardees/dlc#awardee"/>\n <ore:describes rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13#page"/>\n <dcterms:modified rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2009-07-10T12:19:24-04:00</dcterms:modified>\n </rdf:Description>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13.pdf">\n <dc:format>application/pdf</dc:format>\n </rdf:Description>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13#page">\n <rdf:type rdf:resource="http://chroniclingamerica.loc.gov/terms#Page"/>\n <foaf:depiction rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13/thumbnail.jpg"/>\n <ndnp:sequence rdf:datatype="http://www.w3.org/2001/XMLSchema#long">13</ndnp:sequence>\n <ore:isDescribedBy rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13.rdf"/>\n <ore:isAggregatedBy rdf:resource="/lccn/sn83030214/1909-12-26/ed-1#issue"/>\n <dcterms:issued rdf:datatype="http://www.w3.org/2001/XMLSchema#date">1909-12-26</dcterms:issued>\n <ore:aggregates rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13/ocr.xml"/>\n <ore:aggregates rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13/thumbnail.jpg"/>\n <ore:aggregates rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13/ocr.txt"/>\n <ore:aggregates rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13.jp2"/>\n <ore:aggregates rdf:resource="/lccn/sn83030214/1909-12-26/ed-1/seq-13.pdf"/>\n <dcterms:title>New-York tribune. - 1909-12-26 - 13</dcterms:title>\n </rdf:Description>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13/ocr.txt">\n <dc:format>text/plain</dc:format>\n </rdf:Description>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13.jp2">\n <exif:height rdf:datatype="http://www.w3.org/2001/XMLSchema#long">6347</exif:height>\n <dc:format>image/jp2</dc:format>\n <exif:width rdf:datatype="http://www.w3.org/2001/XMLSchema#long">4190</exif:width>\n </rdf:Description>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13/ocr.xml">\n <dc:format>text/xml</dc:format>\n </rdf:Description>\n <rdf:Description rdf:about="/lccn/sn83030214/1909-12-26/ed-1/seq-13/thumbnail.jpg">\n <dc:format>image/jpeg</dc:format>\n </rdf:Description>\n</rdf:RDF>\n}}}
[[MyEperiment|myexperiment.org]] is a JISC funding //social// site for uploading and sharing workflows. I think I can learn from the model\n\n!!! System Ontology\n\n[[[img[filestore/uploads/systems/class_hierarchy.png]] | http://mit.edu]]\n\nOne of the things that makes this site interesting is their data model. The ontology is explained [[here|http://rdf.myexperiment.org/ontologies/]] but I didn't want to lose it so I made a local copy of their graphic. Here is a [[link to the ontology specification|http://rdf.myexperiment.org/ontologies/specification]].\n\n[img[filestore/uploads/systems/class_hierarchy.png]]\n\n\n[img[filestore/uploads/systems/Architecture.png]]
\n[[from Cynthia Ng|http://cynng.wordpress.com/2012/05/08/try-2012-digital-signage-at-the-robarts-library-utl/]]\n\n!!!Help me make better decisions\nchat with a librarian, workshops\n\n!!!Save me time\nmaps: library, stacks, workstations\ndirectories: by floor, service, name, library\n\n!!!Show me something relevant to me\nnews, community content\n\n!!!Tell me something new and interesting\nexhibitis, events, news\n\n!!!Give me ideas\ncollection highlights\n
http://ntl.bts.gov/tools/metadata/NTL_DC_Metadata_Table.html
http://annotation.lanl.gov/premis/
>Now, move your mouse over the color you want to grab (in Firefox, Preview, Word, or whatever) and hit cmd + shift + c. This will copy the hex value of the color to your clipboard, and you can then easily paste it into a CSS document.
* {{{@@CssProperty:value;CssProperty:value;...@@}}}<br>''N.B.:'' CSS color definitions should use lowercase letters to prevent the inadvertent creation of WikiWords.\n* {{{{{customCssClass{...}}}}}} /% DEBUG: buggy %/\n* raw HTML can be inserted by enclosing the respective code in HTML tags: {{{<html> ... </html>}}}
>I want a PLE because it operates as a set of tools that helps me to process data and communicate with others\n\n>Instead, a PLE informed by an autopoietic/distributed cognition model would recognize that tools participate in the production of thought and knowledge and facilitate our capacities for knowledge transfer and application.
//You can't make an omelet from boiled eggs//\nYou need to work at a lower level\n\n[[Paul Downey at how IT works|http://howitworks.tiddlyspace.com/]]
* Data Fields (what information is to be gathered)\n* Data Structure (how those fields are grouped and ordered)\n* Data Format (how the data is stored in the fields)\n\n[[Encoding Schemes]]\n[[AudioMD|http://www.loc.gov/rr/mopic/avprot/audioMD_v8.xsd]]\n[[VideoMD|http://lcweb2.loc.gov/mets/Schemas/VMD.xsd]]\n[[TextMD|http://www.loc.gov/standards/textMD/]]\n[[Image Mix|http://www.loc.gov/standards/mix/]]\n[[Virtual Authorities|http://viaf.org]]\n
http://www.colorcombos.com/\n\n00457a Dark Blue\n5985a8 Light Blue\na37c5f Brown\nf3f3f3 Grey\n333333 Dark\nfdfdfd different grey
>futurist Paul Saffo made a prediction: The future belongs to neither the conduit or content players, but those who control the filtering, searching, and sense-making tools we will rely on to navigate through the expanses of cyberspace.\n\n>In a world of hyperabundant content, point of view will become the scarcest of resources, and we will race to model human points of view within the personalities of our software agents. I will even bet that an industry will grow up around individuals licensing their points of view for use in context engines in exchange for usage royalties. Imagine being able to give your news agent the personality and perspective of Walter Cronkite, Howard Stern, or John Updike, or consult the software-doubles of Siskel and Ebert for advice on cool movies to view. Just as some talk show hosts have become the movers and shakers of post-network TV today, individuals with unique points of view could become the superstars of cyberspace, their personalities immortalized in software traversing the web.\n\n\n!!!Players\n*Google (obviously)\n* Facebook - social media is a filter (not always a good one\n* Acadmic?\n\n!!! Tools\n* Channels (make selection for you) (is this going to last. Do you care "what channel is on?"\n* Agents (Pandora) >algorithmic parameters defining these agents will spell wild success or utter doom for one player after another.\n
* Book \n* Book Item \n* Book Review \n* Conference Item \n* Conference Paper \n* Conference Poster \n* Journal Article \n* Journal Item \n* News Item \n* Patent \n* Report \n* Scholarly Text \n* Submitted Journal Article \n* Thesis or Dissertation \n* Working or Discussion Paper
[[What a LMS should provide|http://wiki.sakaiproject.org/display/PED/Sakai+Learning+Capabilities+v+1.0]\n\n>LMS is primarily a tool set for administrative efficiency rather than a platform for substantive teaching and learning activities. These concerns have been exacerbated by rapid growth in LMS-related spending over the past decade, which has led many to question whether the benefits of the technology are worth the cost.\n\n>Faculty use the CMS primarily as an administrative tool ... rather than as a tool anchored in pedagogy or cognitive science models."\n\n>[T]he LMS serves as an affirming technology of traditional teaching. The instructor doesn't challenge the LMS very much, and, in turn, the LMS doesn't challenge the instructor. The student gets the convenience benefit from electronic distribution of documents (and grades) but little more\n
{{{\n<topicMap>: Topic Map document element \n <scope>: Reference to Topic(s) that comprise the Scope \n <topic>: Topic element\n <baseName>: Base Name of a Topic \n <baseNameString>: Base Name String container\n <variant>: Alternate forms of Base Name \n <variantName>: Container for Variant Name\n <parameters>: Processing context for Variant \n <subjectIdentity>: Subject reified (e.g., represented or identified) by a Topic \n <instanceOf>: Points to a Topic representing a class \n <association>: Topic Association\n <topicRef>: Reference to a Topic element \n <subjectIndicatorRef>: Reference to a Subject Indicator \n <member>: Member in Topic Association \n <roleSpec>: Points to a Topic serving as an Association Role\n <occurrence>: Resources regarded as an Occurrence \n <resourceRef>: Reference to a Resource \n <resourceData>: Container for Resource data\n<mergeMap>: Merge with another Topic Map\n}}}
!!!What makes a good director\n* understand web page development\n* expertise with digital assets management\n* ability to work with scholars and students to make the right information accessible\n* ability to work well with information technologists (e.g., campus computing)\n* ability to mentor others (help them keep up with latest trends)\n\n!!! The library provides\n<<<\n* Access\n* Reliability (reuse of materials)\n* Provenance\n* Authority ?\nAll of which are essential for scholarship\n<<<\nIs this still true? (no, the network obliterates these)\n\n!!! Consumer or creator\n>In particular, without effective informatics teaching, a serious risk exists that Europe becomes a mere consumer of technologies designed elsewhere, running on devices also manufactured elsewhere.\n\n!!!scientific and engineering approach\nComputational Thinking\nThe problem-solving techniques include:\n* Representing information through abstractions such as models and simulations.\n* Logically structuring and analyzing data.\n* Automating solutions through algorithmic thinking, involving carefully described sequences of steps taken from a well-defined catalog of basic operations.\n* Identifying, analyzing and implementing possible solutions with the goal of achieving the most efficient and combination of steps and resources, including both human and hardware resources.\n* Formulating problems in a way that facilitates the use a computer and computerized tools to help solve them.\n* Generalizing the problem-solving process to a wide variety of problems.\n\n!!!Our Business\n> I like to think it is learning and promoting academic success\n\n!!! Roles\n>* Advanced understanding of digital technologies and trends and the impact on information management infrastructure, and the Library's ability to provide collections and services.\n>* Actively build and develop a diverse, skilled, and engaged workforce\n\n!!!Qualifications \n\n* A Master's degree in library and information science computer science, or a closely related field.\n* Minimum of five years' experience working in academic research libraries.\n* Demonstrated knowledge of current trends and issues in the application of technology to libraries and higher education.\n* Substantive knowledge of digital assets and the technical infrastructure required for their life-cycle management, including metadata requirements, migration strategies, best practices in digital preservation, and relevant national and international standards.\n* Substantive knowledge of library systems, digital libraries, and digital repositories.\n* Familiarity with modern software developmentmethodologies and technologies.\n
/*{{{*/\n/*Resources Theme for TiddlyWiki*/\n/*edited by Brian Kennison*/\n/*}}}*/\n/*{{{*/\n\n/* HTML Elements */\nbody { \n background: #FFF url(images/top.jpg) repeat-x top; \n color: #454545; \n font: .94em Arial, sans-serif; \n line-height: 1.5em; \n margin: 0; \n padding: 0; \n border-radius: 1em;\n}\na { \n background: inherit; \n color: #933b39; \n}\na:hover { \n color: #933b39; background: inherit; \n text-decoration: underline\n}\np { \n margin: 5px 0; \n}\nh1 {\n font: bold 1.8em Arial, Sans-Serif; \n letter-spacing: -1px; \n margin: 0; \n padding: 8px 0 4px 0; \n}\nh2 { \n font: bold 1.6em Arial, Sans-Serif; \n letter-spacing: -1px; \n}\nh3 { \n margin: 0; \n padding: 4px 0; \n}\nul { \n list-style: square; \n margin: 0; \n padding : 0; \n}\nimg { \n border: 0; \n}\nhr { \n background-color: #C0C0C0; \n border-style: none; \n color: #D0D0D0; \n height: 1px; \n margin: 10px 0; \n}\n\npre {\n white-space: pre; /* CSS 2.0 */\n white-space: pre-wrap; /* CSS 2.1 */\n white-space: pre-line; /* CSS 3.0 */\n white-space: -pre-wrap; /* Opera 4-6 */\n white-space: -o-pre-wrap; /* Opera 7 */\n white-space: -moz-pre-wrap; /* Mozilla */\n white-space: -hp-pre-wrap; /* HP Printers */\n word-wrap: break-word; /* IE 5+ */\n }\n\n/* Helpers */\n.clearAll { clear: both }\n.floatLeft { \n border: thin dotted black;\n color: #5E8412;\n float:left;\n margin-right; 5px;\n padding: 5px\n}\n.floatLeft .tiddlyLink {\n color: #5E8412;\n -webkit-border-radius: 10px;\n -khtml-border-radius: 10px; \n -moz-border-radius: 10px;\n border-radius: 10px;\n}\n\n/* Content Sections in Document Order */\n#contentWrapper { \n margin: 0px auto; \n width: 90%; \n}\n#header { \n background: transparent; \n color: #FFF;\n height: 101px; \n padding-top: 20px; \n}\n#header #icons { \n float: right; \n margin:20px 0; \n padding:0 \n}\n#header #icons img { \n padding-right: 2px; \n border: 0; \n}\n.headerShadow { \n padding: 1.4em 0 0.5em 1em;\n}\n.searchBar { \n float: right; \n font-size: 1em; \n margin-top: 1.3e;m \n position: relative; \n}\n.searchBar .button { \n color: #FFF; \n display: block \n}\n.searchBar .searchButton { \n color: #FFF; \n display: block \n}\n.searchBar .button:hover { \n border: 1px solid #fefefe; color: #4F4B45 \n}\n.searchBar .searchButton:hover { \n border: 1px solid #fefefe; color: #4F4B45 \n}\n.searchBar input { \n background-color: #fefefe; \n border: 1px solid #CCC; \n color: #830200; \n margin-right: 3px \n}\n\n.siteTitle { \n color: #FFF; \n font: bold 2em Arial, Sans-Serif; \n letter-spacing: 1px; \n margin: 0; \n padding: 8px 0 4px 0; \n}\n.siteSubtitle { \n color: #FFF; \n font: 1.0em Arial, Sans-Serif; \n letter-spacing: 0px; \n margin:0; \n padding: 0 \n}\n#topMenu { \n background: #933b39; \n height: 3ex;\n padding: 5px 5px 5px 5px;\n width: 100%;\n}\n#topMenu a, #topMenu .tiddlyLink, #topMenu .button { \n background:transparent;\n border: none !important;\n color: white; \n font-size: 110%; \n font-variant: small-caps; \n font-weight: normal; \n letter-spacing: 1px;\n margin: 0 4px; \n padding: 0.3em 0.45em ; \n text-decoration: none;\n}\n#topMenu a:hover, #topMenu .tiddlyLink:hover, #topMenu .button:hover, #topMenu .button:active, #topMenu .highlight {\n background: #9F1313;\n color: #FFF; \n text-decoration: none; \n}\n#topMenu br { \n display: none \n}\n#displayArea { \n margin: 0 17em 2em 0.5em; \n width: 100% \n}\n#messageArea { \n background: #fefefe; \n border: 4px solid #933b39; \n color: #555; \n font-size: 100%;\n}\n#messageArea .button { \n border: 1px solid #933b39 color: #666; \n}\n#messageArea .button:hover { \n background: #FF0000; \n border-color: #FF0000 color: #FFF \n}\n#messageArea a:hover { \n background: #f5f5f5; \n border: none \n}\n#tiddlerDisplay {\n width:100%;\n}\n\n#tiddlerContents {}\n.tiddler { \n padding-bottom: 10px; \n padding-left: 0;\n width: 100% \n}\n#contentFooter { \n background: #933b39; \n border-top: 1px solid #DCDCDC; \n clear: both; \n color:#FFF; \n margin: 5em 0 3em 0;\n text-align: center;\n}\n#contentFooter .right { \n background: #FFF; \n float: right; \n text-align: right \n}\n#contentFooter a { \n background: #FFF; text-decoration: none \n}\n\n/* Tiddler Parts */\n.toolbar { \n font-size: 85% \n}\n.toolbar .button:hover, .toolbar .highlight, .toolbar .marked, .toolbar a.button:active { \n background: transparent; \n border: 1px solid #fff color: #333; \n}\n.title { \n border-bottom:1px solid #FF0000; color: #933b39;; \n}\n.subtitle, .subtitle a { \n color: #830200; \n font-size: 1em; \n margin: 0.2em \n}\n\n.popup { \n background: #933b39; \n border: 1px solid #CA0000;\n color: #FFF;\n}\n.popup li a, .popup li a:visited { \n border: none;\n color: #FFF; \n}\n.popup li a:hover { \n background: #F7F7F7; \n border: none \n color: #fff; \n}\n.popup li.disabled { \n color: #000 \n}\n\n\n#sidebar { background: #fefefe; border-left: 0 solid #000; display: inline; display: none float: right; line-height: 1.4em; margin-bottom: 1em; margin-bottom: 2em !important; position: relative; right: 0; width: 16em; }\n#sidebar { display: inline; float: right; position: relative; right: 0 }\n\n#sidebarOptions .sliderPanel .txtOptionInput { border: 1px solid #830200; width: 9em }\n#sidebarOptions .sliderPanel a { background-color: #eee; border-bottom: 1px dotted #333 color: #555; font-weight: normal; }\n#sidebarOptions .sliderPanel a:hover { background-color: #eee; border-bottom: 1px dotted #111 border: none; color: #111; }\n#sidebarOptions .sliderPanel input { border: 1px solid #830200 }\n#sidebarOptions .sliderPanel { background: #eee; border: 1px solid #ccc; font-size: 0.9em }\n#sidebarOptions a { color: #830200; text-decoration: none }\n#sidebarOptions a:hover, #sidebarOptions a:active { background-color: #f5f5f5; border: 1px solid #f5f5f5 color: #C00; }\n#sidebarOptions input { border: 1px solid #830200 }\n#sidebarOptions { padding-left: 0.5em; padding-top: 2em }\n\n#sidebarTabs .tabContents .button:hover, #sidebarTabs .tabContents .highlight, #sidebarTabs .tabContents .marked, #sidebarTabs .tabContents a.button:active { background: #fefefe color: #C00; }\n#sidebarTabs .tabContents .tiddlyLink, #sidebarTabs .tabContents .button { color: #830200 }\n#sidebarTabs .tabContents .tiddlyLink:hover, #sidebarTabs .tabContents .button:hover { background: #fefefe; border: none color: #C00; text-decoration: none; }\n#sidebarTabs .tabContents { background: #fefefe }\n#sidebarTabs .tabSelected { padding-bottom: 3px }\n#sidebarTabs .tabUnselected { border-bottom: none; padding-bottom: 3px }\n#sidebarTabs .tabUnselected:hover { border-bottom: none; color: #830200 padding-bottom: 3px; }\n#sidebarTabs { font-family: arial, helvetica }\n\n\n* html .editor textarea, * html .editor input { width: 98% }\n* html .viewer pre { margin-left: 0 }\n\n\n.editor input { border: 1px solid #888; margin-top: 5px }\n.editor textarea { border: 1px solid #888 }\n\n.highlight, .marked { background: transparent; border: none; color: #111; text-decoration: underline }\n\n.listTitle { color: #888 }\n\n.selected .tagging .button, .selected .tagged .button { color: #aaa }\n.selected .tagging .listTitle, .selected .tagged .listTitle { color: #666 }\n.selected .tagging, .selected .tagged { background-color: #f7f7f7; border: 1px solid #ccc }\n.selected .toolbar a { color: #830200 }\n.selected .toolbar a:hover { background: transparent; border: 1px solid #fff color: #333; }\n\n.shadow .title { color: #830200 }\n\n.tabContents { background: #fefefe }\n\n.tabSelected { background: #830200 color: #fefefe; }\n.tabSelected, .tabSelected:hover { background: #fefefe; border: solid 1px #ccc color: #555; }\n\n.tabUnselected { background: #eee; border: solid 1px #ccc color: #830200; }\n.tabUnselected:hover { border: 1px solid #ccc text-decoration: none; }\n\n.tagClear { clear: none }\n\n.tagging .button, .tagged .button { color: #ccc }\n.tagging .button:hover, .tagged .button:hover, .tagging .button:active, .tagged .button:active { background: transparent; border: none; color: #333 text-decoration: underline; }\n.tagging .listTitle, .tagged .listTitle { color: #bbb }\n.tagging, .tagged { background-color: #F7F7F7 border: 1px solid #eee; }\n\n\n\n.viewer .button, .editorFooter .button { border: 1px solid #CA0000 color: #555; }\n.viewer .button:active, .viewer .highlight, .editorFooter .button:active, .editorFooter .highlight { background: #9F1313; border-color: #9F1313 color: #fff; }\n.viewer .button:hover, .editorFooter .button:hover { background: #CA0000; border-color: #CA0000 color: #fff; }\n.viewer blockquote { border-left: 5px solid #CA0000 }\n.viewer code { background: #f5f5f5 color: #111; }\n.viewer hr { border-top: dashed 1px #555 }\n.viewer pre { background: #f5f5f5 border: 1px solid #ccc; }\n.viewer table, .viewer td { border: 1px solid #CA0000 }\n.viewer th, thead td { background: #CA0000; border: 1px solid #CA0000; color: #fff }\n\n\n.roundedCorners { \n -webkit-border-radius: 10px;\n -khtml-border-radius: 10px; \n -moz-border-radius: 10px;\n border-radius: 10px;\n} \n\n\n\n;/*}}}*/\n\n
6 years (52,560 hours) worth of video gets uploaded to YouTube every day!
!!!OAI URL\nhttp://archives.library.wcsu.edu/omeka/oai-pmh-repository/request?verb=ListRecords&metadataPrefix=oai_dc\n\n!!! Omeka Bug \nloop at {{{\nxsltApplyOneTemplate: loop found ??? in /var/www/html/omeka/application/models/Output/OmekaJson.php on line 38}}}
/***\n|''Name:''|TiddlerNotesPlugin|\n|''Description:''|Add notes to tiddlers without modifying the original content|\n|''Author:''|Saq Imtiaz ( lewcid@gmail.com )|\n|''Source:''|http://tw.lewcid.org/#TiddlerNotesPlugin|\n|''Code Repository:''|http://tw.lewcid.org/svn/plugins|\n|''Version:''|2.1|\n|''Date:''|26/10/07|\n|''License:''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|\n|''~CoreVersion:''|2.2.3|\n\n!!Concept:\n*The TiddlerNotesPlugin allows you to add notes to tiddlers, without needing to edit the original tiddler. This means that your original content will remain unaltered, and if you update it in the future, you won't lose your notes. Notes are stored in separate tiddlers, but can be viewed and edited from within the original tiddler.\n*For a tiddler titled "~MySlide", the notes are by default saved in a tiddler titled "~MySlide-Notes" and is given a tag of "Notes". The suffix and tags of the notes tiddlers are customizable. You can have one or multiple notes per tiddlers. So it is possible to have for example, teacher's notes and student's notes in the same file.\n*Notes can be configured to start off blank, or pre-filled with the contents of the original tiddler.\n\n!!Usage:\n*{{{<<notes>>}}} is the simplest usage form.\n* additional optional parameters include:\n**{{{heading:}}} the heading to use for the notes box\n**{{{tag:}}} the tag to be given to the notes tiddler\n**{{{suffix:}}} the suffix to be used when naming the notes tiddler\n* a full macro call could look like: {{{<<notes heading:"My Notes" tag:"NoteTiddlers" suffix:"Comments">>}}}\n* To avoid adding {{{<<notes>>}}} to each tiddler you want notes for, you could add the macro call to the ViewTemplate\n** below the line {{{<div class='viewer' macro='view text wikified'></div>}}} add the following line: <br> {{{<div class='viewer' macro='notes'></div>}}}\n** Used in combination with the ~HideWhenPlugin or ~PublisherPlugin, you could have notes be shown only for tiddlers with specific tags. The ~PublisherPlugin would allow you for instance to only have the ~TeachersNotes visible to the teacher, and the ~StudentsNotes for the same tiddler visible to the Student.\n\n!!Configuration\n*<<option chkPrefillNotes>> Enable to pre-fill notes with the original tiddler's contents\n\n!!Demo:\n* [[MySlide]]\n\n***/\n// /%\n//!BEGIN-PLUGIN-CODE\n\nif (!config.options.chkPrefillNotes)\n config.options.chkPrefillNotes = false;\n \nfunction createTiddlyElement(theParent,theElement,theID,theClass,theText,attribs)\n{\n var e = document.createElement(theElement);\n if(theClass != null)\n e.className = theClass;\n if(theID != null)\n e.setAttribute("id",theID);\n if(theText != null)\n e.appendChild(document.createTextNode(theText));\n if(attribs){\n for(var n in attribs){\n e.setAttribute(n,attribs[n]);\n }\n }\n if(theParent != null)\n theParent.appendChild(e);\n return e;\n}\n\nfunction createTiddlyButton(theParent,theText,theTooltip,theAction,theClass,theId,theAccessKey,attribs)\n{\n var theButton = document.createElement("a");\n if(theAction) {\n theButton.onclick = theAction;\n theButton.setAttribute("href","javascript:;");\n }\n if(theTooltip)\n theButton.setAttribute("title",theTooltip);\n if(theText)\n theButton.appendChild(document.createTextNode(theText));\n if(theClass)\n theButton.className = theClass;\n else\n theButton.className = "button";\n if(theId)\n theButton.id = theId;\n if(attribs){\n for(var n in attribs){\n e.setAttribute(n,attribs[n]);\n }\n }\n if(theParent)\n theParent.appendChild(theButton);\n if(theAccessKey)\n theButton.setAttribute("accessKey",theAccessKey);\n return theButton;\n}\n\nconfig.macros.notes={\n \n cancelWarning: "Are you sure you want to abandon changes to your notes for '%0'?",\n editLabel: "edit notes",\n editTitle: "double click to edit",\n saveLabel: "save notes",\n saveTitle: "double click to save",\n cancelLabel: "cancel",\n heading: "Notes",\n suffix: "Notes",\n tag: "Notes",\n \n saveNotes: function(ev){\n e = ev? ev : window.event;\n var theTarget = resolveTarget(e);\n if (theTarget.nodeName.toLowerCase() == "textarea")\n return false;\n var title = story.findContainingTiddler(theTarget).getAttribute("tiddler");\n story.setDirty(title,false);\n var box = document.getElementById("notesContainer"+title);\n var textarea = document.getElementById("notesTextArea"+title);\n if(textarea.getAttribute("oldText")!=textarea.value && !hasClass(theTarget,"cancelNotesButton")){\n var suffix = box.getAttribute("suffix");\n var t = store.getTiddler(title+"-"+suffix);\n store.saveTiddler(title+"-"+suffix,title+"-"+suffix,textarea.value,config.options.txtUserName,new Date(),t?t.tags:box.getAttribute("tag"),t?t.fields:{});\n }\n story.refreshTiddler(title,1,true);\n autoSaveChanges(true);\n return false;\n },\n \n editNotes: function(box,tiddler){\n removeChildren(box);\n story.setDirty(tiddler,true);\n box.title = this.saveTitle;\n box.ondblclick = this.saveNotes;\n createTiddlyButton(box,this.cancelLabel,this.cancelLabel,this.saveNotes,"cancelNotesButton");\n createTiddlyButton(box,this.saveLabel,this.saveLabel,this.saveNotes,"saveNotesButton");\n wikify("!!"+box.getAttribute("heading")+"\sn",box);\n addClass(box,"editor");\n var wrapper1 = createTiddlyElement(null,"fieldset",null,"fieldsetFix");\n var wrapper2 = createTiddlyElement(wrapper1,"div");\n var e = createTiddlyElement(wrapper2,"textarea","notesTextArea"+tiddler);\n var v = store.getValue(tiddler+"-"+box.getAttribute("suffix"),"text");\n if(!v) \n v = config.options.chkPrefillNotes? store.getValue(tiddler,"text"):'';\n e.value = v;\n e.setAttribute("oldText",v);\n var rows = 10;\n var lines = v.match(/\sn/mg);\n var maxLines = Math.max(parseInt(config.options.txtMaxEditRows),5);\n if(lines != null && lines.length > rows)\n rows = lines.length + 5;\n rows = Math.min(rows,maxLines);\n e.setAttribute("rows",rows);\n box.appendChild(wrapper1);\n },\n \n editNotesButtonOnclick: function(e){\n var title = story.findContainingTiddler(this).getAttribute("tiddler");\n var box = document.getElementById("notesContainer"+title);\n config.macros.notes.editNotes(box,title);\n return false;\n },\n \n ondblclick : function(ev){\n e = ev? ev : window.event;\n var theTarget = resolveTarget(e);\n var title = story.findContainingTiddler(theTarget).getAttribute("tiddler");\n var box = document.getElementById("notesContainer"+title);\n config.macros.notes.editNotes(box,title);\n e.cancelBubble = true;\n if(e.stopPropagation) e.stopPropagation();\n return false;\n },\n \n handler : function(place,macroName,params,wikifier,paramString,tiddler){\n \n params = paramString.parseParams("anon",null,true,false,false);\n var heading = getParam(params,"heading",this.heading);\n var tag = getParam(params,"tag",this.tag);\n var suffix = getParam(params,"suffix",this.suffix);\n var box = createTiddlyElement(place,"div","notesContainer"+tiddler.title,"TiddlerNotes",null,{"source":tiddler.title,params:paramString,heading:heading,tag:tag,suffix:suffix});\n createTiddlyButton(box,this.editLabel,this.editLabel,this.editNotesButtonOnclick,"editNotesButton");\n wikify("!!"+heading+"\sn",box);\n box.title=this.editTitle;\n box.ondblclick = this.ondblclick;\n wikify("<<tiddler [["+tiddler.title+"-"+suffix+"]]>>",box);\n } \n};\n\nStory.prototype.old_notes_closeTiddler = Story.prototype.closeTiddler;\nStory.prototype.closeTiddler = function(title,animate,unused){\n if(story.isDirty(title)) {\n if(!confirm(config.macros.notes.cancelWarning.format([title])))\n return false;\n }\n return this.old_notes_closeTiddler.apply(this,arguments);\n}\n\nsetStylesheet(".TiddlerNotes {\sn"+ " background:#eee;\sn"+ " border:1px solid #ccc;\sn"+ " padding:10px;\sn"+ " margin:15px;\sn"+ "}\sn"+ "\sn"+ ".cancelNotesButton,.editNotesButton, .saveNotesButton {\sn"+ " float:right;\sn"+ " border:1px solid #ccc;\sn"+ " padding:2px 5px;\sn"+ "}\sn"+ "\sn"+ ".saveNotesButton{\sn"+ " margin-right:0.5em;\sn"+ "}\sn"+ "\sn"+ ".TiddlerNotes.editor textarea{\sn"+ " border:1px solid #ccc;\sn"+ "}","NotesPluginStyles");\n//!END-PLUGIN-CODE\n// %/\n
// // Excludes any tiddlers from timeline that have been tagged with ''excludeTimeline''\n/*{{{*/\nconfig.macros.timeline.handler = function(place,macroName,params)\n{\n var field = params[0] ? params[0] : "modified";\n var tiddlers = store.reverseLookup("tags","excludeTimeline",false,field);\n var lastDay = "";\n var last = params[1] ? tiddlers.length-Math.min(tiddlers.length,parseInt(params[1])) : 0;\n for(var t=tiddlers.length-1; t>=last; t--)\n {\n var tiddler = tiddlers[t];\n var theDay = tiddler[field].convertToLocalYYYYMMDDHHMM().substr(0,8);\n if(theDay != lastDay)\n {\n var theDateList = document.createElement("ul");\n place.appendChild(theDateList);\n createTiddlyElement(theDateList,"li",null,"listTitle",tiddler[field].formatString(this.dateFormat));\n lastDay = theDay;\n }\n var theDateListItem = createTiddlyElement(theDateList,"li",null,"listLink");\n theDateListItem.appendChild(createTiddlyLink(place,tiddler.title,true));\n }\n}\n/*}}}*/\n
This is defunct\n\n[img[/filestore/uploads/repositories/DARTworkpackages-small.jpg]]
!!! FTP from OCLC\nedx.oclc.org\ntctd1\nepsv # turn off passive mode\ncd 'edx.pcat.ctd'\nbin\n\n\n!!!YBP Account # 5631\n\n[[UCSD tech services|http://orpheus.ucsd.edu/acq/orderunitprocedures.html]]\n\n[[Bolders use of 9XX fields|http://ucblibraries.colorado.edu/cataloging/9XX.pdf]]\n\n[[Example of Blackwell export fields|http://staff.library.mun.ca/EDI/Blackwell'%20Book%20Services%20Export-Profile%20Form.htm]]\n\nhttp://csdirect.iii.com/sales/product_catalog.pdf \nProduct 409 - Extended Approval Plan Interface (Not 415 edifact invoicing)\n\n[[Bates College 9XX fields|http://abacus.bates.edu/library/intranet/tech/innopac/9xx.shtml]]\n\n[[Good data map from kent state|http://www.google.com/url?sa=t&source=web&cd=2&ved=0CBwQFjAB&url=http%3A%2F%2Fwww.personal.kent.edu%2F~mbmaurer%2Fdocuments%2F2004DataMappingforDirectOrders32620042.doc&rct=j&q=ybp%20promptcat%20data%20mapping&ei=ggnxTau3MoXi0QHe9fSPBA&usg=AFQjCNEeivZeZfxbr-XqgZGbnY0M_Rj6Xw]]\n\nElectronic order conformation record can be loaded later. http://www.ybp.com/gobilink.html\n\nhttp://www.ybp.com/pdf/tsprospectus.pdf has all the YBP info\n\n\n<<<\nGobiLink allows libraries using III systems to place orders on GOBI and load MARC formatted EOCRs to the local system. The EOCRs are processed to generate on-order records and associated purchase order numbers. The library extracts a file containing the YBP/L&C order keys, which identify the orders in the YBP/L&C system and the related III purchase order number. The file is placed on the YBP/L&C ftp site and processed to match each III order record number to the associated order at YBP/L&C. The III order record number is then available for output in the cataloging and/or electronic invoicing records which are subsequently loaded to the III system.\n<<<\n\n!!! Do we need order records\nYBP number in 024 (other standard numbers) also in 987\n\n\nInnovative Order Fields 107517\n\n\nhttp://www.oclc.org/us/en/support/documentation/catalogingpartners/vendor/guide/default.htm\n\nedx.oclc.org\n\n949 from Akron http://www.karenplummer.com/uakron/cataloging/marc949.php\n\n!!! Mapping from Innopac\n64 > ITEM CALL #(c) 945 ab\n 65 > ITEM VOLUME(v) 945 c>a:de\n 66 > ITEM <COPY #> 945 g\n 67 > ITEM BARCODE(b) 945 i\n 68 > ITEM <LOCATION> 945 l\n 69 > ITEM MESSAGE(m) 945 m\n 70 > ITEM NOTE(x) 945 n\n 71 > ITEM <PRICE> 945 p\n 72 > ITEM <ICODE1> 945 q\n73 > ITEM <ICODE2> 945 r\n 74 > ITEM <STATUS> 945 s\n 75 > ITEM <I TYPE> 945 t\n 76 > ITEM <IMESSAGE> 945 u\n\n 77 > ORDER <E PRICE> 980 b\n 78 > ORDER <COPIES> 980 g\n 79 > ORDER <FUND> 981 b\n 80 > ORDER <LOCATION> 981 c\n \nOther fields: 935 $a purchase order number\n 980 $a invoice date\n 980 $f invoice number\n 980 $d tax\n 980 $e net price\n 981 $d YBP order key\n\n!!!OCLC fields for Coutts\nACCOUNT NUMBER \n 1 APPROVAL PLAN PROFILE CODE \n 2 BAR CODE NUMBER \n 3 BRANCH CODE \n 4 FUND CODE \n 5 INVOICE DATE \n 6 INVOICE NUMBER \n 7 LIBRARY CONTROL NUMBER \n 8 LINE ITEM NUMBER \n 9 LIST PRICE \n 10 NET PRICE \n 11 PRODUCT TYPE \n 12 PURCHASE ORDER DATE \n 13 PURCHASE ORDER NUMBER \n 14 QUANTITY \n 15 SALES TAX \n 16 SERVICE CHARGES \n 17 SHIPPING & HANDLING \n 18 VENDOR CONTROL NUMBER \n 19 VENDOR CUST ID \n 20 VENDOR ORDER NUMBER \n\nData Element Tag Indicator 1 Indicator 2 Subfield Formatting \nBAR CODE NUMBER 949 i\nBRANCH CODE 949 l\nPRODUCT TYPE 949 t\nFUND CODE 960 u\nPURCHASE ORDER NUMBER 961 a\nVENDOR CONTROL NUMBER 961 h\nVENDOR ORDER NUMBER 961 i\nACCOUNT NUMBER 961 m\nINVOICE DATE 980 a Update\nLIST PRICE 980 b Update\nSERVICE CHARGES 980 c\nSALES TAX 980 d Update\nNET PRICE 980 e Update\nINVOICE NUMBER 980 f\nQUANTITY 980 g\n
\n\nFor-profit universities provoke fierce criticism.\n\nAmong the charges: That these institutions deploy unscrupulous recruiting practices, leave students with crippling levels of debt, award worthless degrees, and inflate job placement rates. Students at the for-profits are more likely to drop out, default on their loans, and be left unemployed than those who attend non-profit colleges and universities.\n\nNevertheless, there are six essential lessons that non-profits would do well to learn from the for-profits.\n\nLesson 1: That there are large markets of students who are poorly served or unserved by the traditional higher education establishment. These include college drop-outs, older students, and working adults. These students offer a large potential audience for existing institutions.\n\nLesson 2: That students’ educational trajectories need to be “process analyzed” to determine why students flounder and drop out. It is essential to use fine-grained analytics to identify the pinch points and barriers to graduation and address these head on.\n\nLesson 3: That too many students fail to graduate due to inadequate advising, mentoring, coaching, tutoring, and feedback. Too many at-risk students fall through the cracks and fail to receive the timely support that they need to succeed often because faculty and advisers do not recognize potential problems until too late.\n\nLesson 4: That the cafeteria-style curriculum, with unlimited options, does not serve many non-traditional students well. Time is generally the enemy of graduation, and wasted credit hours contribute significantly to low graduation rates.\n\nLesson 5: That efficiency and scale are not inevitably at odds with instructional quality. Scaled courses allow institutions to invest in next-generation personalized adaptive pedagogies that embed remediation and enrichment as well as active and collaborative learning into these classes.\n\nLesson 6: That many students seek degrees with a clear value proposition. Those students who drop out often do so because college’s outcome isn’t obvious and the courses fit poorly into their busy lives. \n\nWhat, then, are the implications of these lessons?\n\nImplication 1: The non-profit sector needs to recognize that the student body consists of many sub-populations with distinct needs and aspirations. A one-size-fits-all models needs to give way to greater personalization and to a multiplicity of delivery modes and degree pathways.\n\nImplication 2: It is not enough to recognize that there are untapped markets of unserved and poorly served students. It is essential to understand why these students decide not to pursue post-secondary education and what precisely they seek. Efforts to reach out to new audiences fail when based on intuition rather than upon serious market research.\n\nImplication 3: Redesigning a small number of “roadblock” courses is insufficient. Higher education involves trajectories too often marked by detours and roundabouts. Clearer degree pathways, with better aligned readings and assignments and learning outcomes, can offer some students a more efficient and effective route to a degree.\n\nImplication 4: For the growing number of non-traditional commuter, working, and caregiving students, anytime, anywhere, wrap-around student advising and support are essential to help them successfully complete their degree.\n\nImplication 5: Unconventional coaching models and “intrusive” advising can greatly contribute to student success. Coaches, who can range from peer mentors and teaching assistants to content specialists, aren’t a substitute for faculty, but are increasingly necessary to monitor student engagement and to offer just-in-time intervention to keep students on track.\n\nImplication 6: Industry-aligned, career-oriented degree programs need not conflict with a liberal arts education. An interdisciplinary general education core, emphasizing proficiency in writing, close reading, critical thinking, and quantitative literacy, needs to be an integral part of degree verticals optimized to expedite time to degree.\n\nSteven Mintz, the Executive Director of the University of Texas System’s Institute for Transformational Learning, is also a professor of history at the University of Texas at Austin.\n
[[Alex Reid|http://www.alex-reid.net/2012/12/competencies-and-the-learning-experience.html]] talks about //learning experience// vs. //competencies// while [[David Creelman|http://www.hcamag.com/article/competency-models-or-experiences-models-115757.aspx]] talks about //experience models// and //competency models//.\n\n
<html>\n<table style="width:40em; font-weight:bold; border:solid 1px #999999; font-size:.9em; line-height:1.3em; margin:0 0 1em 1em;" cellpadding="4" cellspacing="0">\n<tbody><tr style="color:#000080; font-size:1.1em;" align="center" valign="top">\n<td>Current model</td>\n<td>Emerging model</td>\n</tr>\n<tr style="color:#800000;" valign="top">\n<td>Research done privately; then submitted to journals; then peer-reviewed by gatekeepers in major journals; published</td>\n<td>Research data shared during discovery stages; ideas shared; scientists collaborate; then findings are disseminated online</td>\n</tr>\n<tr style="color:#10365B;" valign="top">\n<td>Scientific literature behind paywalls online</td>\n<td>Scientific discoveries free online</td>\n</tr>\n<tr style="color:#2A6B35;" valign="top">\n<td>Credit established by journal name or journal impact factor.</td>\n<td>Credit established by citation count, number of views or downloads.</td>\n</tr>\n<tr style="color:#0581F1;" valign="top">\n<td>Data is private until publication</td>\n<td>Data is shared before publication</td>\n</tr>\n<tr style="color:#266F5E;" valign="top">\n<td>Papers generally protected by copyright</td>\n<td>Many different licenses possible: copyright, public domain, Creative Commons 3.0, etc.</td>\n</tr>\n<tr style="color:#630C75;" valign="top">\n<td>Publishers raise funds by charging for access to content</td>\n<td>Publishers seek alternative funding models</td>\n</tr>\n<tr style="color:#10365B;" valign="top">\n<td>Journal article summaries available online after publication</td>\n<td>Share methods, data, findings via blogs, social networking sites wikis, computer networking, Internet, video journals</td>\n</tr>\n</tbody></table>\n</html>
<html>\n<style>\n.rolodex table {\nborder: 0px solid;\nbackground-color:#FFFF99;\n}\n\n.rolodex tr, .rolodex td {\nborder: 0px solid;\n}\n</style>\n<span class="rolodex">\n <table>\n <tr>\n <td align="right"><b>Firstname:</b></td>\n <td colspan="3"><input name=firstname type=text style="width:100%" /></td></tr>\n <tr>\n<tr>\n <td align="right"><b>FirstnameAgain:</b></td>\n <td colspan="3"><input name=firstname type=text style="width:100%" /></td></tr>\n <tr>\n <td align="right"><b>Lastname:</b></td>\n <td colspan="3"><input name=lastname type=text style="width:100%" /></td></tr>\n <tr>\n <td align="right"><b>Email:</b></td>\n <td colspan="3"><input name=email type=text style="width:100%" /></td></tr>\n <tr>\n <td align="right"><b>Phone:</b></td>\n <td colspan="3"><input name=phone type=text style="width:100%" /></td></tr>\n <tr>\n <td align="right" valign="top"><b>Address:</b></td>\n <td colspan="3"><textarea name=address rows="2" cols="40" style="width:100%" ></textarea></td></tr>\n <tr>\n <td align="right"><b>City:</b></td>\n <td colspan="3"><input name=city type=text style="width:100%" /></td></tr>\n <tr>\n <td align="right"><b>State/Province:</b></td>\n <td><input name=state type=text size="5" /></td>\n <td align="right"><b style="width:100%" >ZIP/Postal Code:</b></td>\n <td><input name=zip type=text size="5" style="width:100%" /></td></tr>\n <tr>\n <td align="right"><b>Country:</b></td>\n <td colspan="3"><input name=country type=text style="width:100%" /></td></tr>\n <tr>\n <td align="right"><b>Webpage:</b></td>\n <td colspan="3"><input name=webpage type=text style="width:100%" /></td></tr>\n <tr>\n <td colspan="4"><sub><b>Notes</b></sub><br>\n <textarea name=notes rows="4" cols="40" style="width:100%" ></textarea></td></tr>\n</span>\n</html>
{{{\n<<forEachTiddler \n where \n 'tiddler.tags.contains("$1")'\n>>\n\nNow you can use the ListTaggedTiddlers for various specific tags, using the <<tiddler ...>> macro:\n<<tiddler ListTaggedTiddlers with: "systemConfig">>\n<<tiddler ListTaggedTiddlers with: "Plugin">>\n}}}
<<<\nBut researchers at Carnegie Mellon's Open Learning Initiative, who've been experimenting with computer-based learning for years, have found that when machine-guided learning is combined with traditional classroom instruction, students can learn material in half the time. Researchers at Ithaka S+R studied two groups of students one group that received all instruction in person, and another group that received a mixture of traditional and computer-based instruction. The two groups did equally well on tests, but those who received the computer instruction were able to learn the same amount of material in 25 percent less time.\n<<<\n\nfrom http://www.the-american-interest.com/article.cfm?piece=1352
>I expect a huge movement towards knowledge management tools that enhance the learning practice and focus on each individual path while maintaining engagement at a social level. This could make the learning experience tailored to each individual and at the same time aggregate responses and perceptions from a large group of students in order to direct toward specific learning goals.\n\n>Futurist John Smart - professor of emerging technologies at the University of Advancing Technology and president and founder of the Acceleration Studies Foundation - took the notion further and said that by 2020 online social networking will already possess enough value to adequately substitute for the majority of traditional social networking on college campuses: "The other value of college, the social one, meeting others who you network with to do things like start businesses, is the one that is rapidly moving online as social networks, meet-ups, and Internet television advance," he said. "The typical BS holder has just shown they can do something difficult, nothing more. This will remain 90% of the value of a college education (the social value will no longer be exclusive to brick-and-mortars by 2020) and will remain the primary requirement for entry-level work in 2020. With luck, perhaps 20% of online and brick- and-mortar BS students will be engaged in online (more than half) or in-person (less than half) internships at some point during or immediately after BS graduation. Again, MS, technical, certificate, and remediation education will be online both earlier and more extensively."\n\n>The 2020 model of higher education will focus on making the student a person who can effectively translate problems into solutions, translate intercultural conflicts into opportunities for innovation, and translate data and information into knowledge products - from Ed Lyell, a professor at Adams State College\n\n[[Elon University|http://www.elon.edu/e-web/predictions/expertsurveys/2012survey/future_higher_education_Internet_2020.xhtml]]
[[Google Maps Geocoding Docs|http://code.google.com/apis/maps/documentation/geocoding/]] \n\n[[Clustering on Python|http://www.quanative.com/2010/01/01/server-side-marker-clustering-for-google-maps-with-python/]]\n\n[[MarkerClusterer v3|http://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/docs/reference.html]\n\n[[another clustering code|http://googlemapsapi.martinpearman.co.uk/readarticle.php?article_id=4]]
>Does your organization have a culture that expects reports or results? We quickly realized that ideas and plans and reports are simple to generate; results are no
[img[filestore/uploads/datamodels/dm101NotationSummary.gif]]
{{{\n/*\n COLUMN: 60px (3.750em)\n GUTTER: 20px (1.25em or 0.625em on each side)\n \n 1x = 60px | 3.750em\n 2x = 140px | 8.750em\n 3x = 220px | 13.750em\n 4x = 300px | 18.750em\n 5x = 380px | 23.750em\n 6x = 460px | 28.750em\n 7x = 540px | 33.750em\n 8x = 620px | 38.750em\n 9x = 700px | 43.750em\n 10x = 780px | 48.750em\n 11x = 860px | 53.750em\n 12x = 940px | 58.750em\n\n*/\n}}}\n\n!!!Breakpoint sin ems\n\nbp-small : 24em;\n$bp-med : 46.8em;\n$bp-large : 50em;\n$bp-xl : 73em;\n\n!!!Tweak points in ems\n\n$bp-small : 24em;\n$bp-small-2 : 29.75em;\n$bp-small-3 : 39.8em;\n$bp-med : 46.8em;\n$bp-med-2 : 48em;\n$bp-large : 50em;\n$bp-large-2 : 54.5em;\n$bp-xl : 60em;\n$bp-xl-2 : 67em;\n\n!!!Responsive Video\n{{{\nvideo { \n width:100%; \n max-width:500px; \n height:auto; \n}\n\n}}}\n
[[Great article by Michael Wesch about education and new media|http://www.academiccommons.org/commons/essay/knowledgable-knowledge-able]]\n[[Review of the literature|http://www.irrodl.org/index.php/irrodl/article/view/741/1433]]\n[[Distributed Learning Environment|http://wiki.cetis.ac.uk/images/6/6c/Distributed_Learning.pdf]]\n\n "Online education exists because of the ability to financialize products, cutting costs on expensive face to face course content, and to de-skill or re-skill the profession of their old teaching epistemologies... " -- Quote from Chronicle\n\n!!!Macro level: Distance education systems and theories.\n\n# Access, equity, and ethics: The democratization of access to distance education afforded by new media and by finding ways to deliver high-quality education to those who have limited resources and poor infrastructure; issues that refer to the (sustainable) provision of distance education in developing areas. What is the impact of distance education (e.g., via mobile learning) on narrowing the digital divide and what is the role of ICT (information and communication technologies) and/or OER (open educational resources) in terms of access to education?\n# Globalization of education and cross-cultural aspects: Aspects that refer to the global external environment and drivers, the development of the global distance education market, teaching and learning in mediated global environments, and the implications for professional development.\n# Distance teaching systems and institutions: Distance education delivery systems, the role of institutional partnerships in developing transnational programmes, and the impact of ICT on the convergence of conventional education and distance education institutions (hybrid or mixed-mode).\n# Theories and models: Theoretical frameworks for and foundations of distance education, e.g., the theoretical basis of instructional models, knowledge construction, interaction between learners, or the impact of social constructivism learning theories on distance education practice.\n# Research methods in distance education and knowledge transfer: Methodological considerations, the impact of distance education research and writing on practice, and the role of professional associations in improving practice. Literature reviews and works on the history of distance education are also subsumed within this area.\n\n!!!Meso level: Management, organization, and technology.\n\n# Management and organization: Strategies, administration, and organizational infrastructures and frameworks for the development, implementation, and sustainable delivery of distance education programmes. What is required for successful leadership in distance education? Distance education and policies relating to continuing education, lifelong learning, and the impact of online learning on institutional policies, as well as legal issues (copyright and intellectual property).\n# Costs and benefits: Aspects that refer to financial management, costing, pricing, and business models in distance education. Efficiency: What is the return on investment or impact of distance education programmes? What is the impact of ICT on the costing models and the scalability of distance education delivery? How can cost effective but meaningful learner support be provided?\n# Educational technology: New trends in educational technology for distance education (e.g., Web 2.0 applications or mobile learning) and the benefits and challenges of using OERs, media selection (e.g., synchronous vs. asynchronous media), technical infrastructure and equipment for online learning environments, and their opportunities for teaching and learning.\n# Innovation and change: Issues that refer to educational innovation with new media and measures to support and facilitate change in institutions (e.g., incentive systems for faculty, aspects referring to staff workloads, promotion, and tenure).\n# Professional development and faculty support: Professional development and faculty support services as a prerequisite for innovation and change. What are the competencies of online teachers and how can they be developed?\n# Learner support services: The infrastructure for and organisation of learner support systems (from information and counselling for prospective students about library services and technical support to career services and alumni networks).\n# Quality assurance: Issues that refer to accreditation and quality standards in distance education. The impact of quality assurance and high quality learner support on enrolments and drop-out/retention, as well as reputation and acceptance of distance education as a valid form of educational provision.\n\n\n!!!Micro level: Teaching and learning in distance education.\n\n# Instructional design: Issues that refer to the stages of the instructional design process for curriculum and course development. Special emphasis is placed on pedagogical approaches for tutoring online (scaffolding), the design of (culturally appropriate) study material, opportunities provided by new developments in educational technology for teaching and learning (e.g. Web 2.0 applications and mobile devices), as well as assessment practices in distance education.\n# Interaction and communication in learning communities: Closely related to instructional design considerations is course design that fosters (online) articulation, interaction, reflection, and collaboration throughout the learning and teaching process. Special areas include the development of online communities, gender differences, and cross-cultural aspects in online communication.\n#. Learner characteristics: The aims and goals of adult learners, the socio-economic background of distance education students, their different learning styles, critical thinking dispositions, and special needs. How do students learn online (learner behavior patterns, learning styles) and what competencies are needed for distance learning (e.g., digital literacy)?\n\n[[Thinking, Patterns and online education|http://itec.sfsu.edu/wp/860wp/F07_860_truong_perception_patterns.pdf]]
* Content Structure Ontologies\n* Domain Ontologies\n* Metadata Ontologies\n* Curriculum ontology, \n* Syllabus ontology
[[XML: Looking at the Forest Instead of the Trees |http://www.iro.umontreal.ca/~lapalme/ForestInsteadOfTheTrees/HTML/index.html]]\n\nThis is very good and I need to read every thing that is in it.
!!! What I'm looking for\n<<<\nFrom an architecture standpoint, the web framework chosen is probably the least important decision you'll make. Large social networks typically utilize a distributed service oriented architecture at the middle tier and then a variety of NoSQL and caching solutions in the backend. This is where most of the heavy lifting is done with the business and data access logic.\n\nThe web tier should be a thin, fast framework, focused on presentation layer that supports making RPC or REST calls to your middle tier, deserializing the responses, and then some logging and session management utility classes. Any of the frameworks you mentioned will work, but web2py is probably most easily adapted to your situation.\n<<<
{{{\n<!--[if gt IE 6]>\n\n<!-->\n<object type="application/x-shockwave-flash" width="600" height="338" wmode="transparent" data="http://www.gamersdailynews.com/flvplayer.swf?file=http://www.reelseo.com/html5/files/jeroen-jw-wijering-640.flv&image=http://www.gamersdailynews.com/videoback.jpg&logo=http://www.gamersdailynews.com/gndtrailerlogo.png&backcolor=000000">\n<param name="movie" value="http://www.gamersdailynews.com/flvplayer.swf?file=http://www.reelseo.com/html5/files/jeroen-jw-wijering-640.flv&image=http://www.gamersdailynews.com/videoback.jpg"/>\n<param name="wmode" value="transparent" />\n</object>\n<br>Alright, so no HTML 5 Support, How about Flash?\n<!--<![endif]-->\n}}}
!!!It's not an information dump\n* but that content has to be some where\n* it's about the alignment in objectives, practice and assessment\n\n!!! What you have to do\n* Start with realistic goals about what you want learners to be able to do, not what they need to know\n* Start by telling (convincing) learner //why// it's important\n* Create simple, clear, content\n* Use multimedia and graphics\n* Add context with stories, case studies, experiments\n* Create learning opportunities (interactions that help the learner work toward their goals)\n* Learning is like skateboarding, it takes practice and you're going to screw up\n* You need to model concepts, have examples, have problems (lots of examples and lots of problems are good)\n* You make mistakes because your model is not complete, or correct, etc.\n* Good concepts are elaborated into an meaningful, rational, with multiple representations, model\n* Ask the learner to reflect on what they've learned\n* Point the learner to the next step and future possible directions or options so that learners don't think they are done. \n\nEnvironment is one of collaboration\n\n\n
<<<\nWestern Connecticut State University in Danbury is welcoming a freshman class of 1,177 freshmen with classes starting on Wednesday. About 18 percent of the school's 4,500 full-time students, 1,700 part-time students and 77 full-time graduate students come from Danbury, about 8 percent from New Milford and about 50 percent from other Connecticut towns. About 1,500 students live on campus.\n<<<\n\n\n\n!!!General Statistics\nfIn-State Tuition $8,440\nOut-of-State Tuition: $19,472\nRoom & Board: $10,832\nBooks & Supplies: $1,300\nStudent Body Statistics\nFull-Time Undergrads: 4,763\nPart-Time Undergrads: 1,052\nMale Undergrads: 2,668\nFemale Undergrads: 3,147\nTotal Grad Students: 592\nFull-Time Grad Students: 82\nPart-Time Grad Students: 510\n\n\n
http://wireless.siu.edu/install-fedora-64.htm\n\nfor windows: http://cech.uc.edu/content/dam/cech/itservices/docs/VPN/VPN_Setup_For_XP.pdf \n\nsearch Juniper VPN 64-bit
<<<\nImagine you're at the Ed Innovation conference. You've just heard a pitch from a startup. Basically, they wrap whatever content customers are using in formative and summative assessments and then use "the big data" to identify which content is most effective and then recommend it to students, modified by personalization algorithms based on student preferences that they've deduced by watching their behavior in the LMS. "We want to be the Netflix of learning content." Now you're sitting at a bar with a venture capitalist, a university provost, and a member of a state legislature. They all think the pitch from the startup was awesome.\n\nYour job is to explain to these three why the pitch they heard was not as spectacular as they thought it was, and what a genuinely good big data pitch would have to look like.\n<<<\n\n[[from Michael Feldstein|http://mfeldstein.com/were-from-the-valley/]]
{{{\n# ===========================================================================\n#\n# XML Topic Maps 2.0\n#\n# This is the normative RELAX-NG schema for the XTM 2.0 syntax, as\n# defined in ISO 13250-3.\n#\n# See http://www.isotopicmaps.org/sam/sam-xtm/\n#\n# ===========================================================================\n\n# --- Common declarations\n\ndefault namespace = "http://www.topicmaps.org/xtm/"\nnamespace xtm = "http://www.topicmaps.org/xtm/"\n\ndatatypes xsd = "http://www.w3.org/2001/XMLSchema-datatypes"\n\nstart = topicMap\n\nreifiable = attribute reifier { xsd:anyURI }?, itemIdentity*\nhref = attribute href { xsd:anyURI }\n\nany-markup = (text | element * - xtm:* { attribute * { text }*, any-markup* })*\n\n\n# --- The schema\n\ntopicMap = element topicMap { reifiable, version, mergeMap*,\n (topic | association)* }\n\nversion = attribute version { "2.0" }\n\ntopic = element topic { id, \n (itemIdentity | subjectLocator | subjectIdentifier)*,\n instanceOf?, (name | occurrence)* }\nid = attribute id { xsd:ID }\n\nname = element name { reifiable, type?, scope?, value, variant* }\n\nvalue = element value { text }\n\nvariant = element variant { reifiable, scope, (resourceRef | resourceData) }\n\nscope = element scope { topicRef+ }\n\ninstanceOf = element instanceOf { topicRef+ }\n\ntype = element type { topicRef }\n\noccurrence = element occurrence { reifiable,\n type, scope?, ( resourceRef | resourceData ) }\n\ndatatype = attribute datatype { xsd:anyURI }\n\nresourceData = element resourceData { datatype?, any-markup }\n\nassociation = element association { reifiable, type, scope?, role+ }\n\nrole = element role { reifiable, type, topicRef }\n\ntopicRef = element topicRef { href }\nresourceRef = element resourceRef { href }\nsubjectLocator = element subjectLocator { href }\nsubjectIdentifier = element subjectIdentifier { href }\nitemIdentity = element itemIdentity { href }\n\nmergeMap = element mergeMap { href }\n\n}}}
<<<\nTo summarize, the concept is that subjects can be broken down into aspects\n(i.e. facets) with the primary ones time, place, action, material, and\npersonality -- you can think of this last category as natural groupings of\nthe type that standardized subdivisions can be applied to such as materials,\nanimals, corporate entitities, diseases, body parts, etc.\n<<<\n\nI'm not sure how to use all of these\n
[img[/filestore/uploads/learning/roles-in-education.png]]\n\nThe bottom left is traditional schooling while we are moving (or not) toward the top right. \n\n[[Video on YouTube at Google|http://yt.cl.nr/wX2Zht4GJ1c]]\n\n!!! Another Representation\n\n[img[/filestore/uploads/learning/self-directed-learner.png]]
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>\n<script type="text/javascript" src="http://kennison.name/files/js/jquery.dav.js" show></script> \n<script type="text/javascript" src="http://kennison.name/files/js/jDavFilters.js"></script> \n
<<<\nHere are the problems I have. I can have portfolio software, but it doesn't really lend itself to community discussion or providing feedback. I can have a CMS like Blackboard but it cordons off all the classes from one another (and it's not very good for providing feedback on student compositions). I can use Google docs for feedback, though not for anything else. And though I can use Google Docs, I'm not sure my instructors can manage the various permission structures like sharing a folder among a group of student users so they can upload and comment on each others work. And I'm still left to figure out the rest of it. WordPress might offer a similar kind of solution, where a tech savvy instructor could get a community discussion, have students get feedback, and set up individual portfolios. But I'm not sure how it works as a program wide solution, and I haven't begun to talk about assessment issues.\n\nI used to feel somewhat befuddled by the absence of what seemed like a fairly straightforward constellation of features for a piece of educational software. After all, they were all features that existed in one place or another already, for example:\n\ncollaborative composing of text documents\nshort, realtime discussion\na journal and portfolio\na forum where you can follow users and threads\nphoto and video sharing\n<<<\n\n[[Source: Alex Reed|http://alex-reid.net/2014/05/the-missing-masses-of-educational-software.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+DigitalDigs+%28digital+digs%29]]
!!! 2011/05/18\n* lxml\n* xmlwitch (this is pretty easy - need to look at sqlwitch)
!!!Knowledge Organization\n[img[/filestore/uploads/topic-maps/TopicMap-InfoArchitecture.png]]\n\n[[from <http://journalofia.org/volume2/issue1/02-johnsen/>|http://journalofia.org/volume2/issue1/02-johnsen/]]\n\n//relation to FRBR (not perfect, but kind of)// \n* Work = Supertype\n* Manisfication = subtype\n* Item = instance\n\n\nTopic Maps can organize subjects, (concepts), allow metadata to added to topics (instances), organize resources (external) and allow to to "talk" about knowledge by building associations. \n\n
Information Seeking: Sensemaking and Interactions\nAnn Abraham, Marian Petre, Helen Sharp\nCentre for Research in Computing, Department of Computing Open University, Walton Hall, Milton Keynes, England MK7 6AA\n\n\n[img[/filestore/uploads/libraries/information-interaction.png]]\n\n!!!Activities\n# Plan\n# Seek (look for information)\n# Evaluate for selection\n# Evaluate for use\n# Compile\n\n!!!Model of information Quality Judgement\n[img[/filestore/uploads/libraries/information-quality.png]]\n\nSee also: [[Discover, Gather, Create, Share]]\n
* [[Open University|'http://www.open.ac.uk/iet/main/]]
Abstract\n1. Introduction\nSet the scene and problem statement. Introduce structure of thesis, state contributions (3-5).\n2. Background\nDemonstrate wider appreciation (context). Provide motivation. The problem statement and the motivation state how you want the PhD to be judged - as engineering, scientific method, theory, philosophy, &c.\n3. Related Work\nSurvey and critical assessment. Relation to own work. \n\n4-6. Analysis, design, implementation and interpretation of results\n7. Critical assessment of own work\nState hypothesis, and demonstrate precision, thoroughness, contribution, and comparison with closest rival. \n\n8. Further Work\n9. Summary Conclusions\nRestate contribution \n\nAppendix\nBibliography
<<<\nIn a web-connected world, the role of libraries as intermediaries between information providers and readers is obsolete. As discussed in "The Fourth Branch Library", libraries should increase their focus on collecting, managing, and broadcasting the information their communities generate. They should not be concerned with the information their communities consume.\n<<<\n\n[[Source|http://scitechsociety.blogspot.com/2011/09/publishers-dilemma.html]]
<<<\nMany of us in the professoriate (myself for 30 years now) realized this problem long ago and decided to address it. Students in content-oriented classes in particular (and that means STEM education) have increasingly put the responsibility on the talking head in front of the classroom to “tell them everything they are supposed to know.” Clearly, this shift of responsibility was to save the student the sheer time of work outside of class (homework = the work that a student is to do at home”)and cater to illusions of just how effortless a “good” teacher could make learning, rather than its opposite, namely, that good teachers are those who know how to put students to work. Many faculty were and are more than willing to comply with student demands for a variety of reasons, not the least being student opinion surveys that have shifted responsibility onto the faculty members with no mention on the surveys of the responsibility required or time spent by the student outside of class. This conspicuous absence of mention of the time spent outside of class studying or of the sweat equity required by the student in mastering the course content was a sign to many of us, as were comments “I follow your lectures just fine but do poorly on your exams.” Coupled with fads such as “just in time learning” where on-the-spot teaching supposedly could address everything a student could or was to know, traditional guidelines such as “two hours out of class for every hour in class” gradually disappeared from university catalogs and regents policy manuals with nothing to replace them other than pleasing the customer as the sine qua non of good teaching. Some of us smartened up and learned to structure our courses in such a way that the student had no choice under class policy but to study out of class. I myself found that the only way to force/create this necessary precondition to foster student learning was to cease lecturing altogether, however much I missed it and the good students (5% of the class) may suffer from it. My method has been previously described: http://chronicle.com/blogs/profhacker/learning-centered-pedagogy/25052. I do not consider it to be collaborative learning, and prefer to call it text-centered learning. It contains elements of individual responsibility first, coupled with collective forgiveness yet intellectual processing second–and it does require more work of myself as well as that of my students than would lecturing alone. There are, after all, collaborative learning techniques that require student accountability, and then the mishmash type which do not.\nIt is not merely because the population is rising and more more students are going to college that has created this state-subsidized largesse. It is rather administrations, faculty, and their students together which have tacitly agreed to it, a pact made and strengthened gradually over time with accomplices who fell down on their responsibilities, a pact which has secured the demise of requisite functions and expectations which alone must assure solid educations. In short it is an ethical problem created by players all of whom have short-circuited traditional ethical principles in the name of ‘innovation’ and catering to the lowest and laziest aspects of the human condition. We once held to the principle “you get out of it what you put into it.” In a credit economy the rule “buy now, and pay (with all the negative meanings of that word) later” is finally coming to roost in ways that if they were anticipated, were all the more denied. Having sown to the wind we now reap the whirlwind. Yes, we now have a “structural deficit” nationwide in education and not merely in the economic sense.\nI look forward to reading this book.
!!Headings\n{{{\n!Heading 1\n!!Heading 2\n!!!Heading 3\n!!!!Heading 4\n!!!!!Heading 5\n}}}\n<<<\n!Heading 1\n!!Heading 2\n!!!Heading 3\n!!!!Heading 4\n!!!!!Heading 5\n\n
<<<\n!!!The Practical University\n\n\n By DAVID BROOKS\n <http://topics.nytimes.com/top/opinion/editorialsandoped/oped/columnists/davidbrooks/index.html>\n\n\n Published: April 4, 2013\n\nThe best part of the rise of online education is that it forces us to\nask: What is a university for?\n\nAre universities mostly sorting devices to separate smart and\nhard-working high school students from their less-able fellows so that\nemployers can more easily identify them? Are universities factories for\nthe dissemination of job skills? Are universities mostly boot camps for\nadulthood, where young people learn how to drink moderately, fornicate\nmeaningfully and hand things in on time?\n\nMy own stab at an answer would be that universities are places where\nyoung people acquire two sorts of knowledge, what the philosopher\nMichael Oakeshott called technical knowledge and practical knowledge.\nTechnical knowledge is the sort of knowledge you need to understand a\ntask — the statistical knowledge you need to understand what market\nresearchers do, the biological knowledge you need to grasp the basics of\nwhat nurses do.\n\nTechnical knowledge is like the recipes in a cookbook. It is formulas\ntelling you roughly what is to be done. It is reducible to rules and\ndirections. It’s the sort of knowledge that can be captured in lectures\nand bullet points and memorized by rote.\n\nRight now, online and hybrid offerings seem to be as good as standard\nlectures at transmitting this kind of knowledge, and, in the years\nahead, they are bound to get better — more imaginatively curated, more\ninteractive and with better assessments.\n\nThe problem is that as online education becomes more pervasive,\nuniversities can no longer primarily be in the business of transmitting\ntechnical knowledge. Online offerings from distant, star professors will\njust be too efficient. As Ben Nelson of Minerva University points out, a\nschool cannot charge students $40,000 and then turn around and offer\nthem online courses that they can get free or nearly free. That business\nmodel simply does not work. There will be no such thing as a MOOC\nuniversity.\n\nNelson believes that universities will end up effectively telling\nstudents: “Take the following online courses over the summer or over a\ncertain period, and then, when you’re done, you will come to campus and\nthat’s when our job will begin.” If Nelson is right, then universities\nin the future will spend much less time transmitting technical knowledge\nand much more time transmitting practical knowledge.\n\nPractical knowledge is not about what you do, but how you do it. It is\nthe wisdom a great chef possesses that cannot be found in recipe books.\nPractical knowledge is not the sort of knowledge that can be taught and\nmemorized; it can only be imparted and absorbed. It is not reducible to\nrules; it only exists in practice.\n\nNow I could give you a theory about how universities can transmit this\nsort of practical moral wisdom, but let’s save that. Let’s focus on\npractical wisdom in the modern workplace.\n\nThink about Sheryl Sandberg’s recent book, “Lean In.” Put aside the\ndebate about the challenges facing women in society. Focus on the tasks\nshe describes as being important for anybody who wants to rise in this\neconomy: the ability to be assertive in a meeting; to disagree\npleasantly; to know when to interrupt and when not to; to understand the\nflow of discussion and how to change people’s minds; to attract mentors;\nto understand situations; to discern what can change and what can’t.\n\nThese skills are practical knowledge. Anybody who works in a modern\noffice knows that they are surprisingly rare. But students can learn\nthese skills at a university, through student activities, through the\nliving examples of their professors and also in seminars.\n\nNelson’s venture, Minerva, uses technology to double down on seminars.\nMinerva is a well-financed, audacious effort to use technological\nadvances to create an elite university at a much lower cost. I don’t\nknow if Minerva will work or not, but Nelson is surely right to focus on\nthe marriage of technology and seminars.\n\nThe problem with the current seminars is that it’s really hard to know\nwhat anybody gets out of them. The conversations might be lively, but\nthey flow by so fast you feel as if you’re missing important points and\nexchanges.\n\nThe goal should be to use technology to take a free-form seminar and\nturn it into a deliberate seminar (I’m borrowing Anders Ericsson’s\ndefinition of deliberate practice). Seminars could be recorded with\nvideo-cameras, and exchanges could be reviewed and analyzed to pick\napart how a disagreement was handled and how a debate was conducted.\nEpisodes in one seminar could be replayed for another. Students could be\nassessed, and their seminar skills could be tracked over time.\n\nSo far, most of the talk about online education has been on technology\nand lectures, but the important challenge is technology and seminars. So\nfar, the discussion is mostly about technical knowledge, but the future\nof the universities is in practical knowledge.\n<<<\n
United Streaming has since become Discovery Education streaming and remains a subscription-based service. You might also try video-sharing services such as YouTube.com, TeacherTube.com, SchoolTube.com, Vimeo.com, and others. Free history and social studies video clips are also available at PBS Video, BBC Motion Gallery, History Channel Video Gallery, Library of Congress: American Memory, New York Times (on YouTube), National Geographic Videos, Brain Pop, Hartcourt Schools, Geography at the Movies, D4K.org, Educational Mini Movies, MrDonn.org, and other sources.
bibutils package
/***\n|Name:|InstantTimestampPlugin|\n|Source|http://instanttimestamp.tiddlyspot.com/|\n|Documentation|TBA|\n|Version|1.0.5 (17-Jan-2007)|\n|Author|SimonBaird|\n|License|Creative Commons Attribution-ShareAlike 2.5 License|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires|NA|\n|Overrides|NA|\n|Description|Date Stamp|\n!Description\nIf you enter {ts} in your tiddler content (without the spaces) it will be replaced with a timestamp when you save the tiddler. Full list:\n{{{\n* {ts} or {t} -> timestamp\n* {ds} or {d} -> datestamp\n* !ts or !t at start of line -> !!timestamp\n* !ds or !d at start of line -> !!datestamp\n}}}\n(I added the extra ! since that's how I like it. Remove it from translations below if required)\n!Notes\n* Change the timeFormat and dateFormat below to suit your preference.\n* See also AutoCorrectPlugin\n!History\n* 17-Jan-07, version 1.0.5\n** added fields param to saveTiddler method needed in TW 2.1+\n* 06-Apr-06, version 1.0.4\n** removed the AutoCorrect stuff and put it in AutoCorrectPlugin\n* 05-Apr-06, version 1.0.3\n** now have exclusion by tag and tiddler name, probably less important here than in AutoCorrectPlugin\n* 05-Apr-06, version 1.0.2\n** put matches into array to and eval them to allow generic substitutions\n* 05-Apr-06, version 1.0.1\n** added ds for datestamp as suggested by DanielBaird\n** made case insensitive\n** Added translation for !t at start of line\n* 05-Apr-06, version 1.0.0\n** written after suggestion by Achim Wessling \n!Code\n***/\n//{{{\n\nconfig.InstantTimestamp = {\n\n // adjust to suit\n timeFormat: '0DD.0MM.YY 0hh:0mm',\n dateFormat: '0DD.0MM.YY',\n\n translations: [\n [/^!ts?$/img, "'!!'+now.formatString(config.InstantTimestamp.timeFormat)"],\n [/^!ds?$/img, "'!!'+now.formatString(config.InstantTimestamp.dateFormat)"],\n [/\s{ts?\s}/ig, "now.formatString(config.InstantTimestamp.timeFormat)"],\n [/\s{ds?\s}/ig, "now.formatString(config.InstantTimestamp.dateFormat)"]\n ],\n\n excludeTags: [\n "noAutoCorrect",\n "html",\n "CSS",\n "css",\n "systemConfig",\n "zsystemConfig",\n "Plugins",\n "Plugin",\n "plugins",\n "plugin",\n "javascript",\n "code"\n ],\n\n excludeTiddlers: [\n "StyleSheet",\n "StyleSheetLayout",\n "StyleSheetColors",\n "StyleSheetPrint"\n ]\n\n}; \n\nif (!Array.prototype.contains)\n Array.prototype.contains = function(item) {\n return (this.find(item) != null);\n };\n\nif (!Array.prototype.containsAny)\n Array.prototype.containsAny = function(items) {\n for (var i=0;i<items.length;i++)\n if (this.contains(items[i]))\n return true;\n return false;\n };\n\nTiddlyWiki.prototype.saveTiddler_mptw_instanttimestamp = TiddlyWiki.prototype.saveTiddler;\nTiddlyWiki.prototype.saveTiddler = function(title,newTitle,newBody,modifier,modified,tags,fields) {\n\n tags = (typeof(tags) == "string") ? tags.readBracketedList() : tags;\n var conf = config.InstantTimestamp;\n\n if ( !tags.containsAny(conf.excludeTags) && !conf.excludeTiddlers.contains(newTitle) ) {\n\n var now = new Date();\n var trans = config.InstantTimestamp.translations;\n for (var i=0;i<trans.length;i++) {\n newBody = newBody.replace(trans[i][0], eval(trans[i][1]));\n }\n }\n\n return this.saveTiddler_mptw_instanttimestamp(title,newTitle,newBody,modifier,modified,tags,fields);\n}\n\n//}}}
!!!What the Knewton System Does\n<<<\nIt was a crude approximation of Knewton's system, but the protocol was basically the same: establish a learning goal, figure out what I already know, figure out how I best learn, and intervene when I get stuck all within the constraints of time and ability.\n\n“The whole point of the movie is you can’t measure heart,” says Ferreira. “You can only do so much with data. We’ll be able to measure what you know. We’ll be able to measure how well you know it. We’ll be able to measure how fast you learned it. But there are things that we can’t measure.… What Knewton doesn’t have is higher-order thinking skills, passion, imagination, drive. I didn’t build Knewton as a way to measure people. I built it as a way to help make their homework better and their classes better.”\n\nIn the end, Ferreira says, adaptive software and the psychometric data they accrue are only tools for teachers to help students, and for students to help themselves. It cannot make turn lousy teachers into good teachers. It does not necessarily cure fear, it does not necessarily fix apathy, and it cannot measure heart. But in the complex human systems of the new American university and its “other school officials,” where many try hard and some get by, it might help make everyone’s best a little better.\n<<<
FRAD, EAC-CFP, Topic Maps\n[[Here is a mapping|http://culturalheritage.wordpress.com/2010/09/23/frad-isaarcpf-eac-cpf-topic-maps-mapping/]] that I need to look at. \n\n[[eac example record|https://wiki.nla.gov.au/download/attachments/32189/oliphant-BrSp.xml?version=1&modificationDate=1201813806000]]
!!! Do we think this way\nThis is part of getting beyond course-itis\n\n[img[filestore/uploads/learning/elearning-parts.png]]
/***\n|''Name:''|abego.IncludePlugin|\n|''Version:''|1.0.1 (2007-04-30)|\n|''Type:''|plugin|\n|''Source:''|http://tiddlywiki.abego-software.de/#IncludePlugin|\n|''Author:''|Udo Borkowski (ub [at] abego-software [dot] de)|\n|''Documentation:''|[[IncludePlugin Documentation|http://tiddlywiki.abego-software.de/#%5B%5BIncludePlugin%20Documentation%5D%5D]]|\n|''Community:''|([[del.icio.us|http://del.icio.us/post?url=http://tiddlywiki.abego-software.de/index.html%23IncludePlugin]]) ([[Support|http://groups.google.com/group/TiddlyWiki]])|\n|''Copyright:''|&copy; 2007 [[abego Software|http://www.abego-software.de]]|\n|''Licence:''|[[BSD open source license (abego Software)|http://www.abego-software.de/legal/apl-v10.html]]|\n|''~CoreVersion:''|2.1.3|\n|''Browser:''|Firefox 1.5.0.9 or better; Internet Explorer 6.0|\n***/\n/***\nThis plugin's source code is compressed (and hidden). Use this [[link|http://tiddlywiki.abego-software.de/archive/IncludePlugin/Plugin-Include-src.1.0.0.js]] to get the readable source code.\n***/\n///%\nif(!window.abego){window.abego={};}var invokeLater=function(_1,_2,_3){return abego.invokeLater?abego.invokeLater(_1,_2,_3):setTimeout(_1,_2);};abego.loadFile=function(_4,_5,_6){var _7=function(_8,_9,_a,_b,_c){return _8?_5(_a,_b,_9):_5(undefined,_b,_9,"Error loading %0".format([_b]));};if(_4.search(/^((http(s)?)|(file)):/)!=0){if(_4.search(/^((.\s:\s\s)|(\s\s\s\s)|(\s/))/)==0){_4="file://"+_4;}else{var _d=document.location.toString();var i=_d.lastIndexOf("/");_4=_d.substr(0,i+1)+_4;}_4=_4.replace(/\s\s/mg,"/");}loadRemoteFile(_4,_7,_6);};abego.loadTiddlyWikiStore=function(_f,_10,_11,_12){var _13=function(_14,_15){if(_12){_12(_14,"abego.loadTiddlyWikiStore",_15,_f,_11);}};var _16=function(_17,_18){var _19=_18.indexOf(startSaveArea);var _1a=_18.indexOf("<!--POST-BODY-END--"+">");var _1b=_18.lastIndexOf(endSaveArea,_1a==-1?_18.length:_1a);if((_19==-1)||(_1b==-1)){return config.messages.invalidFileError.format([_f]);}var _1c="<html><body>"+_18.substring(_19,_1b+endSaveArea.length)+"</body></html>";var _1d=document.createElement("iframe");_1d.style.display="none";document.body.appendChild(_1d);var doc=_1d.document;if(_1d.contentDocument){doc=_1d.contentDocument;}else{if(_1d.contentWindow){doc=_1d.contentWindow.document;}}doc.open();doc.writeln(_1c);doc.close();var _1f=doc.getElementById("storeArea");_17.loadFromDiv(_1f,"store");_1d.parentNode.removeChild(_1d);return null;};var _20=function(_21){_13("Error when loading %0".format([_f]),"Failed");_10(undefined,_f,_11,_21);return _21;};var _22=function(_23){_13("Loaded %0".format([_f]),"Done");_10(_23,_f,_11);return null;};var _24=function(_25,_26,_27,_28){if(_25===undefined){_20(_28);return;}_13("Processing %0".format([_f]),"Processing");var _29=config.messages.invalidFileError;config.messages.invalidFileError="The file '%0' does not appear to be a valid TiddlyWiki file";try{var _2a=new TiddlyWiki();var _2b=_16(_2a,_25);if(_2b){_20(_2b);}else{_22(_2a);}}catch(ex){_20(exceptionText(ex));}finally{config.messages.invalidFileError=_29;}};_13("Start loading %0".format([_f]),"Started");abego.loadFile(_f,_24,_11);};(function(){if(abego.TiddlyWikiIncluder){return;}var _2c="waiting";var _2d="loading";var _2e=1000;var _2f=-200;var _30=-100;var _31=-300;var _32;var _33=[];var _34={};var _35=[];var _36;var _37=[];var _38;var _39=function(){if(_32===undefined){_32=config.options.chkUseInclude===undefined||config.options.chkUseInclude;}return _32;};var _3a=function(url){return "No include specified for %0".format([url]);};var _3c=function(){var _3d=_35;_35=[];if(_3d.length){for(var i=0;i<_37.length;i++){_37[i](_3d);}}};var _3f;var _40=function(){if(_36!==undefined){clearInterval(_36);}_3f=0;var _41=function(){abego.TiddlyWikiIncluder.sendProgress("","","Done");};_36=setInterval(function(){_3f++;if(_3f<=10){return;}clearInterval(_36);_36=undefined;abego.TiddlyWikiIncluder.sendProgress("Refreshing...","","");refreshDisplay();invokeLater(_41,0,_2f);},1);};var _42=function(_43){var _44;for(var i=0;i<_33.length;i++){var _46=abego.TiddlyWikiIncluder.getStore(_33[i]);if(_46&&(_44=_43(_46,_33[i]))){return _44;}}};var _47=function(){if(!window.store){return invokeLater(_47,100);}var _48=store.fetchTiddler;store.fetchTiddler=function(_49){var t=_48.apply(this,arguments);if(t){return t;}if(config.shadowTiddlers[_49]!==undefined){return undefined;}if(_49==config.macros.newTiddler.title){return undefined;}return _42(function(_4b,url){var t=_4b.fetchTiddler(_49);if(t){t.includeURL=url;}return t;});};if(_33.length){_40();}};var _4e=function(){if(!window.store){return invokeLater(_4e,100);}var _4f=store.getTiddlerText("IncludeList");if(_4f){wikify(_4f,document.createElement("div"));}};var _50=function(_51){var _52=function(){var _53=store.forEachTiddler;var _54=function(_55){var _56={};var _57;var _58=function(_59,_5a){if(_56[_59]){return;}_56[_59]=1;if(_57){_5a.includeURL=_57;}_55.apply(this,arguments);};_53.call(store,_58);for(var n in config.shadowTiddlers){_56[n]=1;}_56[config.macros.newTiddler.title]=1;_42(function(_5c,url){_57=url;_5c.forEachTiddler(_58);});};store.forEachTiddler=_54;try{return _51.apply(this,arguments);}finally{store.forEachTiddler=_53;}};return _52;};var _5e=function(_5f,_60){return _5f[_60]=_50(_5f[_60]);};abego.TiddlyWikiIncluder={};abego.TiddlyWikiIncluder.setProgressFunction=function(_61){_38=_61;};abego.TiddlyWikiIncluder.getProgressFunction=function(_62){return _38;};abego.TiddlyWikiIncluder.sendProgress=function(_63,_64,_65){if(_38){_38.apply(this,arguments);}};abego.TiddlyWikiIncluder.onError=function(url,_67){displayMessage("Error when including '%0':\sn%1".format([url,_67]));};abego.TiddlyWikiIncluder.hasPendingIncludes=function(){for(var i=0;i<_33.length;i++){var _69=abego.TiddlyWikiIncluder.getState(_33[i]);if(_69==_2c||_69==_2d){return true;}}return false;};abego.TiddlyWikiIncluder.getIncludes=function(){return _33.slice();};abego.TiddlyWikiIncluder.getState=function(url){var s=_34[url];if(!s){return _3a(url);}return typeof s=="string"?s:null;};abego.TiddlyWikiIncluder.getStore=function(url){var s=_34[url];if(!s){return _3a(url);}return s instanceof TiddlyWiki?s:null;};abego.TiddlyWikiIncluder.include=function(url,_6f){if(!_39()||_34[url]){return;}var _70=this;_33.push(url);_34[url]=_2c;var _71=function(_72,_73,_74,_75){if(_72===undefined){_34[url]=_75;_70.onError(url,_75);return;}_34[url]=_72;_35.push(url);invokeLater(_3c);};var _76=function(){_34[url]=_2d;abego.loadTiddlyWikiStore(url,_71,null,_38);};if(_6f){invokeLater(_76,_6f);}else{_76();}};abego.TiddlyWikiIncluder.forReallyEachTiddler=function(_77){var _78=function(){store.forEachTiddler(_77);};_50(_78).call(store);};abego.TiddlyWikiIncluder.getFunctionUsingForReallyEachTiddler=_50;abego.TiddlyWikiIncluder.useForReallyEachTiddler=_5e;abego.TiddlyWikiIncluder.addListener=function(_79){_37.push(_79);};abego.TiddlyWikiIncluder.addListener(_40);if(config.options.chkUseInclude===undefined){config.options.chkUseInclude=true;}config.shadowTiddlers.AdvancedOptions+="\sn<<option chkUseInclude>> Include ~TiddlyWikis (IncludeList | IncludeState | [[help|http://tiddlywiki.abego-software.de/#%5B%5BIncludePlugin%20Documentation%5D%5D]])\sn^^(Reload this ~TiddlyWiki to make changes become effective)^^";config.shadowTiddlers.IncludeState="<<includeState>>";var _7a=function(e,_7c,_7d){if(!anim||!abego.ShowAnimation){e.style.display=_7c?"block":"none";return;}anim.startAnimating(new abego.ShowAnimation(e,_7c,_7d));};abego.TiddlyWikiIncluder.getDefaultProgressFunction=function(){setStylesheet(".includeProgressState{\sn"+"background-color:#FFCC00;\sn"+"position:absolute;\sn"+"right:0.2em;\sn"+"top:0.2em;\sn"+"width:7em;\sn"+"padding-left:0.2em;\sn"+"padding-right:0.2em\sn"+"}\sn","abegoInclude");var _7e=function(){var e=document.createElement("div");e.className="includeProgressState";e.style.display="none";document.body.appendChild(e);return e;};var _80=_7e();var _81=function(_82){removeChildren(_80);createTiddlyText(_80,_82);_7a(_80,true,0);};var _83=function(){invokeLater(function(){_7a(_80,false,_2e);},100,_30);};var _84=function(_85,_86,_87,url,_89){if(_87=="Done"||_87=="Failed"){_83();return;}if(_86=="abego.loadTiddlyWikiStore"){_3f=0;if(_87=="Processing"){_81("Including...");}}else{_81(_85);}};return _84;};abego.TiddlyWikiIncluder.setProgressFunction(abego.TiddlyWikiIncluder.getDefaultProgressFunction());config.macros.include={};config.macros.include.handler=function(_8a,_8b,_8c,_8d,_8e,_8f){_8c=_8e.parseParams("url",null,true,false,true);var _90=parseInt(getParam(_8c,"delay","0"));var _91=_8c[0]["url"];var _92=getFlag(_8c,"hide",false);if(!_92){createTiddlyText(createTiddlyElement(_8a,"code"),_8d.source.substring(_8d.matchStart,_8d.nextMatch));}for(var i=0;_91&&i<_91.length;i++){abego.TiddlyWikiIncluder.include(_91[i],_90);}};config.macros.includeState={};config.macros.includeState.handler=function(_94,_95,_96,_97,_98,_99){var _9a=function(){var s="";var _9c=abego.TiddlyWikiIncluder.getIncludes();if(!_9c.length){return "{{noIncludes{\snNo includes or 'include' is disabled (see AdvancedOptions)\sn}}}\sn";}s+="|!Address|!State|\sn";for(var i=0;i<_9c.length;i++){var inc=_9c[i];s+="|{{{"+inc+"}}}|";var t=abego.TiddlyWikiIncluder.getState(inc);s+=t?"{{{"+t+"}}}":"included";s+="|\sn";}s+="|includeState|k\sn";return s;};var _a0=function(){removeChildren(div);wikify(_9a(),div);if(abego.TiddlyWikiIncluder.hasPendingIncludes()){invokeLater(_a0,500,_31);}};var div=createTiddlyElement(_94,"div");invokeLater(_a0,0,_31);};var _a2=Tiddler.prototype.isReadOnly;Tiddler.prototype.isReadOnly=function(){return _a2.apply(this,arguments)||this.isIncluded();};Tiddler.prototype.isIncluded=function(){return this.includeURL!=undefined;};Tiddler.prototype.getIncludeURL=function(){return this.includeURL;};var _a3={getMissingLinks:1,getOrphans:1,getTags:1,reverseLookup:1,updateTiddlers:1};for(var n in _a3){_5e(TiddlyWiki.prototype,n);}var _a5=function(){if(abego.IntelliTagger){_5e(abego.IntelliTagger,"assistTagging");}};var _a6=function(){if(config.macros.forEachTiddler){_5e(config.macros.forEachTiddler,"findTiddlers");}};_47();invokeLater(_4e,100);invokeLater(_a5,100);invokeLater(_a6,100);})();\n//%/\n
http://web.lkldev.ioe.ac.uk/PPC/live/ODC.html
Specific research topics over the past several years have included: \n* the design of information experience, \n* sensemaking; \n* intelligent agents; \n* knowledge-based assistance; \n* information visualization; \n* multimedia documents; \n* advanced design and development environments; \n* design rationale; \n* planning; \n* intelligent tutoring; \n* hypermedia; \n* human/computer interfaces.
[img[/filestore/uploads/learning/Learning-Ontologies.png]]\n\n!!!Research Themes for Learning Object\n[[Lore.net Publications|http://www.lornet.ca/Publications/Th%C3%A8me2Ing%C3%A9nieriep%C3%A9dagogiqueetagr%C3%A9gationdes/tabid/325/language/en-US/Default.aspx]]\n\n[[Learning Object Context Ontology|http://jelenajovanovic.net/LOCO-Analyst/loco.html]]
Good site done in flash http://page-flip.com/#demonstrations\n\nhttp://floridamemory.com/
!!!Old Model\n* Determine appropriate goals, standards, facts and skills to be taught\n* Provide access to relevant tools and resources\n* Arrange the pedagogical activity or process\n* Supply help and advice regarding online technology that is used to support the online learning process\n* Assure fair, valid and authentic assessment\n\n!!!New Model\n\n[img[filestore/uploads/learning/Views-of-larning.png]]\n\n[[John Seely Brown|http://www.johnseelybrown.com/newlearning.pdf]]
{{{\n|CssClass|k\n|!heading column 1|!heading column 2|\n|row 1, column 1|row 1, column 2|\n|row 2, column 1|row 2, column 2|\n|>|COLSPAN|\n|ROWSPAN| ... |\n|~| ... |\n|CssProperty:value;...| ... |\n|caption|c\n}}}\n''Annotation:''\n* The {{{>}}} marker creates a "colspan", causing the current cell to merge with the one to the right.\n* The {{{~}}} marker creates a "rowspan", causing the current cell to merge with the one above.\n<<<\n|CssClass|k\n|!heading column 1|!heading column 2|\n|row 1, column 1|row 1, column 2|\n|row 2, column 1|row 2, column 2|\n|>|COLSPAN|\n|ROWSPAN| ... |\n|~| ... |\n|CssProperty:value;...| ... |\n|caption|c\n<<<
/*{{{*/\n\n/* ----------------------------------------\n PageTemplate layout styles from top to bottom \n---------------------------------------- */\n#contentWrapper {\n}\n\n#header {\ncolor:#FFF;\nmargin:0 0 2em 0;\npadding:2em 0 2em 0;\n}\n\n#header_inner {\nmargin:0 auto;\nwidth:60%;\n}\n\n#header_inner h1 {\nbackground:inherit;\ncolor:#fff;\nfont-size:39px;\nfont-weight:400;\nletter-spacing:-2px;\nmargin:0 0 .5em 0;\ntext-align:center;\n}\n\n#header_inner h1 span { \nbackground:inherit;\ncolor:#DADADA;\n}\n\n/* Controls the subtitle display */\n#slogan { \nbackground:inherit;\ncolor:#DADADA;\nfont-size:13px;\ntext-align:center;\n}\n\n#messageArea {\nbackground:#f5f5f5;\nborder:4px solid #948979;\ncolor:#999;\nfont-size:90%;\n}\n\n#messageArea .button:hover {\nbackground:#948979;\nborder-color:#948979;\ncolor:#fff;\n}\n\n/* Top menu and main menu can go different places \n It's up to you. In the standard tiddlywiki top menu\n is in the header and main menu is in the left column. */\n\n#topMenu {\nmargin-bottom:1em;\nmargin-left:2em;\n}\n\n#topMenu a {\ncolor:#483D8B;\n}\n\n#menu {\nmargin-top:6px;\n}\n\n#menu a {\nbackground:inherit;\nbackground-image:url(/filestore/static/images/bbg0.gif);\ncolor:#636363;\ndisplay:inline;\nfont-size:13px;\nheight:27px;\nmargin-bottom:1px;\npadding-left:17px;\npadding-top:11px;\nposition:relative;\ntext-decoration:none;\ntext-transform:lowercase;\nwidth:168px;\n}\n\n#menu a span {\nbackground:url(/filestore/static/images/x1.gif) no-repeat;\nheight:7px;\nmargin-right:15px;\nmargin-top:5px;\nposition:absolute;\nright:0;\nwidth:7px;\n}\n\n#menu a:hover {\nbackground:inherit;\nbackground-image:url(/filestore/static/images/bbg1.gif);\ncolor:#fff;\n}\n\n#menu a:hover span {\nbackground:url(/filestore/static/images/x2.gif) no-repeat;\nheight:7px;\nmargin-right:15px;\nmargin-top:5px;\nposition:absolute;\nright:0;\nwidth:7px;\n}\n\n#menu li {\nbackground:none;\nfont-weight:700;\npadding:0;\n}\n\n#menu ul {\nlist-style:none;\nmargin:0;\n}\n\n#menu_end {\nbackground-image:url(images/a2.gif);\nheight:30px;\n}\n\n\n#messageArea a:hover {\nbackground:#f5f5f5;\n}\n\n/* End of header, beginning of body */\n#bodyWrapper {\ncolor:#666;\nfont-family:Lucida Grande, Tahoma, Arial, Helvetica, sans-serif;\nfont-size:120%;\nline-height:1.6em;\nmargin:0 3.4em;\nwidth:90%;\n}\n\n\n\n#displayArea {\nfloat:left;\nmargin:0;\nwidth: 78%;\n}\n\n#tiddlerDisplay {\n} /* why is this empty? */\n\n#sidebar {\nfloat:right;\nmargin-bottom:1em;\npadding-top:2em;\nwidth:20%;\n}\n\n#sidebarOptions {\nline-height:1.4em;\n}\n\n#sidebarOptions .button:active,#sidebarOptions .highlight {\nbackground:#F5F5F5;\n}\n\n#sidebarOptions .sliderPanel {\nbackground:#fff;\nborder:none;\nfont-size:1em;\n}\n\n#sidebarOptions .sliderPanel a {\nfont-weight:400;\n}\n\n#sidebarOptions .sliderPanel input {\nborder:1px solid #999;\n}\n\n#sidebarOptions a {\ncolor:#999;\ntext-decoration:none;\n}\n\n#sidebarOptions a:hover {\nbackground-color:#F5F5F5;\nborder:1px solid #fff;\ncolor:#4F4B45;\n}\n\n#sidebarTabs .tabContents {\nbackground:#fff;\n}\n\n#sidebarTabs .tabContents .tiddlyLink:hover,#sidebarTabs .tabContents .button:hover,#sidebarTabs .tabContents .button:hover,#sidebarTabs .tabContents .highlight,#sidebarTabs .tabContents .marked,#sidebarTabs .tabContents a.button:active {\nbackground:#fff;\ncolor:#4F4B45;\n}\n\n#sidebarTabs .tabSelected {\npadding-bottom:3px;\n}\n\n#sidebarTabs .tabUnselected {\nborder-bottom:none;\npadding-bottom:3px;\n}\n\n#sidebarTabs .tabUnselected:hover {\nborder-bottom:none;\ncolor:#4F4B45;\npadding-bottom:3px;\n}\n\n#footer {\nbackground:url(/filestore/static/images/a2.gif) repeat-x;\nclear:both;\nmargin:0 auto 25px;\npadding-top:10px;\ntext-align:center;\ntext-transform:lowercase;\nwidth:680px;\n}\n\n/* Search bar can be in the side bar or the head \n Depends on your preferecnes */\n\n.searchBar {\nfont-size:1em;\nmargin-top:1.3px;\nmposition:relative;\n}\n\n.searchBar .button,.searchBar .searchButton {\ncolor:#FFF;\ndisplay:block;\n}\n\n.searchBar .button:hover,.searchBar .searchButton:hover {\nborder:1px solid #fefefe;\ncolor:#4F4B45;\n}\n\n.searchBar input {\nbackground-color:#fefefe;\nborder:1px solid #CCC;\ncolor:#830200;\nmargin-right:3px;\n}\n\n.searchbar {\nposition:relative;\nwidth:11em;\n}\n\n.searchbar .button {\nmargin:0;\nwidth:11em;\n}\n\n/* ---------------------------------------- \n ViewTemplate layout styles from top to bottom \n These control the display of the INDIVIDUAL tiddlers.\n---------------------------------------- */\n\n.toolbar {\n}\n\n.title { \nbackground:inherit;\ncolor:#50514D;\nfont-size:18px;\n}\n\n.subtitle,.subtitle a {\ncolor:#999;\nfont-size:1em;\nmargin:0.2em;\n}\n\ntagged {\n}\n\n.tagging .button,.tagged .button {\ncolor:#aaa;\n}\n\n.tagging .button:hover,.tagged .button:hover,.tagging .button:active,.tagged .button:active {\nbackground:transparent;\nborder:none;\ncolor:#000;\ntext-decoration:underline;\n}\n\n.tagging .listTitle,.tagged .listTitle {\ncolor:#bbb;\n}\n\n.tagging,.tagged {\nbackground-color:#F7F7F7;\nborder:1px solid #eee;\n}\n\n.viewer .button,.editorFooter .button,#messageArea .button {\nborder:1px solid #CC6714;\ncolor:#666;\n}\n\n.viewer .button:active,.viewer .highlight,.editorFooter .button:active,.editorFooter .highlight {\nbackground:#575352;\nborder-color:#575352;\ncolor:#fff;\n}\n\n.viewer .button:hover,.editorFooter .button:hover {\nbackground:#CC6714;\nborder-color:#CC6714;\ncolor:#fff;\n}\n\n.viewer blockquote {\nborder-left:3px solid #948979;\n}\n\n.viewer code {\ncolor:#2F2A29;\n}\n\n.viewer hr {\nborder-top:dashed 1px #948979;\n}\n\n.viewer pre {\nbackground:#f5f5f5;\nborder:1px solid #948979;\n}\n\n.viewer table {\nborder:2px solid [[ColorPalette::TertiaryDark]];\n}\n\n.viewer th,thead td {\nbackground:#948979;\nborder:1px solid #948979;\ncolor:#fff;\n}\n\n.tagClear {\nclear:none;\n}\n\n/* -----------------------------------\n List, tabs and popups show up mostly in the side bar.\n I don't know what to do with them yet\n--------------------------------------------------*/\n.listLink,#sidebarTabs .tabContents {\nline-height:1.5em;\n}\n\n.listTitle {\ncolor:#888;\n}\n\n.popup {\nbackground:#FFFAF0;\nborder:1px solid #948979;\nfont-size:1em;\n}\n\n.popup li a,.popup li a:visited {\nborder:none;\ncolor:#AAB165;\n}\n\n.popup li a:hover {\nbackground:#575352;\nborder:none;\ncolor:#fff;\n}\n\n.popup li.disabled {\ncolor:#000;\n}\n\n.selected .tagging .button,.selected .tagged .button {\ncolor:#4F4B45;\n}\n\n.selected .tagging .listTitle,.selected .tagged .listTitle {\ncolor:#666;\n}\n\n.selected .tagging,.selected .tagged {\nbackground:inherit;\nborder:dashed 1px #dadada;\ncolor:#AAB165;\nmargin-top:15px;\nposition:relative;\n}\n\n.selected .toolbar a,#sidebarTabs .tabContents .tiddlyLink,#sidebarTabs .tabContents .button {\ncolor:#999;\n}\n\n.selected .toolbar a:hover,.toolbar .button:hover,.toolbar .highlight,.toolbar .marked,.toolbar a.button:active {\nbackground:transparent;\nborder:1px solid #fff;\ncolor:#4F4B45;\n}\n\n.tabSelected {\nbackground:#948979;\ncolor:#fff;\n}\n\n.tabSelected,.tabSelected:hover {\nbackground:#948979;\nborder:solid 1px #948979;\ncolor:#fff;\npadding-bottom:1px;\n}\n\n.tabUnselected {\nbackground:#eee;\nborder:solid 1px #ccc;\ncolor:#999;\npadding-bottom:1px;\n}\n\na,#sidebarOptions .sliderPanel a,#mainMenu a:link,#navlist a:visited {\ncolor:#CC6714;\ntext-decoration:none;\n}\n\na:hover,#sidebarOptions .sliderPanel a:hover {\nbackground-color:#F5F5F5;\ncolor:#CC6714;\n}\n\n/* ---------------------------------------- \n EditTemplate layout styles from top to bottom \n These control display while EDITING tiddlers \n ---------------------------------------- */\n\n.toolbar {\n/* same as view template, but could be changed */\n}\n\n.title {\n/* same as view template, but could be changed */\n}\n\n.label {\ncolor:black;\nfont-size:100%;\nfont-weight:bold;\npadding-right:2em;\ntext-align:right;\nvertical-align:top;\n}\n\n.editor input, .editor textarea {\nborder:1px solid #948979;\nwidth:98%;\n}\n.editorFooter {}\n\n\n/* ------------------------------------\n General html element formatting\n--------------------------------------*/ \n* {\nmargin:0;\npadding:0;\n}\n\npre {\nwhite-space: pre; /* CSS 2.0 */\nwhite-space: pre-wrap; /* CSS 2.1 */\nwhite-space: pre-line; /* CSS 3.0 */\nwhite-space: -pre-wrap; /* Opera 4-6 */\nwhite-space: -o-pre-wrap; /* Opera 7 */\nwhite-space: -moz-pre-wrap; /* Mozilla */\nwhite-space: -hp-pre-wrap; /* HP Printers */\nword-wrap: break-word; /* IE 5+ */\n}\n\n.roundedCorners {\n-khtml-border-radius:10px;\n-moz-border-radius:10px;\n-webkit-border-radius:10px;\nborder-radius:10px;\n}\n\nh1 {\nfont-size:18px;\n}\n\nh1,h2,h3,h4,h5 {\nbackground:transparent;\ncolor:#666;\nfont-family:Arial, Helvetica, sans-serif;\npadding-bottom:2px;\n}\n\nh2 {\nfont-size:16px;\n}\n\nh3 {\nfont-size:14px;\n}\n\na {\ncolor:#93B300;\ntext-decoration:underline;\n}\n\na:hover {\nbackground:#D3E378 url(images/bbg1.gif) repeat-x;\ncolor:#fff;\ntext-decoration:none;\n}\n\nbody {\nbackground-color:#fff;\ncolor:#9f9f9f;\nfont-family:"trebuchet ms", helvetica, sans-serif;\nfont-size:11px;\n}\n\nlabel {\nfont-size:110%;\nmargin-top: 2em;\n}\n\nli {\nbackground:url(images/x1.gif) no-repeat 0 5px;\npadding-left:15px;\n}\n\np {\nline-height:20px;\nmargin-bottom:25px;\ntext-align:justify;\n}\n\n/* -------------------------------------------------\n Non tiddlywiki classes that I have created\n----------------------------------------------------- */\n.center {\ntext-align:center;\n}\n\n.thumbnail {\nfloat:left;\npadding: 0 2em;\n}\n\n/*}}}*/\n
{{{\n def XMLtoFileObject(self, fname, tree=None):\n\n """\n Gets as arguments a filename and a tree then writes the tree to a file with\n the given filename.Returns true if everything has been accomplished\n correctly.A IO error is also raised in the bad case.\n\n """\n\n try :\n import os.path\n xmlworktree = tree\n if os.path.exists(fname):\n xmlobj = file(fname,mode='ab+')\n else:\n xmlobj = file(fname,mode='wb+')\n xmlobj.write(xmlworktree)\n xmlobj.close()\n return True\n except ImportError:\n raise ImportError, "os.path missing or behaving uncorrectly.Review your \s\n Python's version notes"\n}}}\n\n{{{\n def upload(self, data):\n fileupload = self.request['form.data']\n if fileupload and fileupload.filename:\n contenttype = fileupload.headers.get('Content-Type')\n file_ = zope.app.file.file.File(data, contenttype)\n # use the INameChooser registered for your file upload container\n filename = INameChooser(container).chooseName(fileupload.filename)\n self.context[filename] = file_\n}}}\n\n{{{\n#!/usr/bin/env python\nimport cgi, os\nimport cgitb; cgitb.enable()\n\ntry: # Windows needs stdio set for binary mode.\n import msvcrt\n msvcrt.setmode (0, os.O_BINARY) # stdin = 0\n msvcrt.setmode (1, os.O_BINARY) # stdout = 1\nexcept ImportError:\n pass\n\nform = cgi.FieldStorage()\n\n# A nested FieldStorage instance holds the file\nfileitem = form['file']\n\n# Test if the file was uploaded\nif fileitem.filename:\n \n # strip leading path from file name to avoid directory traversal attacks\n fn = os.path.basename(fileitem.filename)\n open('files/' + fn, 'wb').write(fileitem.file.read())\n message = 'The file "' + fn + '" was uploaded successfully'\n \nelse:\n message = 'No file was uploaded'\n \nprint """\s\nContent-Type: text/html\sn\n<html><body>\n<p>%s</p>\n</body></html>\n""" % (message,)\n}}}\n\n!!!Same as the above but buffers IO\n{{{\n<html><body>\n<%\n# Generator to buffer file chunks\ndef fbuffer(f, chunk_size=10000):\n while True:\n chunk = f.read(chunk_size)\n if not chunk: break\n yield chunk\n \nif form.has_key('file') and form['file'].filename:\n # A nested Field object holds the file\n fileitem = form['file']\n\n try: # Windows needs stdio set for binary mode.\n import msvcrt\n msvcrt.setmode (0, os.O_BINARY) # stdin = 0\n msvcrt.setmode (1, os.O_BINARY) # stdout = 1\n except ImportError:\n pass\n\n # strip leading path from file name to avoid directory traversal attacks\n fname = os.path.basename(fileitem.filename)\n\n # build absolute path to files directory\n dir_path = os.path.join(os.path.dirname(req.filename), 'files')\n\n f = open(os.path.join(dir_path, fname), 'wb', 10000)\n\n # Read the file in chunks\n for chunk in fbuffer(fileitem.file):\n f.write(chunk)\n f.close()\n \n message = 'The file "%s" was uploaded successfully' % fname\n%>\n<p><%= message %></p>\n<p><a href="">Upload another file</a></p>\n<%\nelse:\n #\n%>\n<form enctype="multipart/form-data" action="" method="post">\n<p>File: <input type="file" name="file"></p>\n<p><input type="submit" value="Upload"></p>\n</form>\n<%\n#\n%>\n</body></html>\n}}}\n\n{{{\n\n\n \n\nJUL OCT NOV\n 21 \n2003 2004 2005\n2 captures\n15 Jul 04 - 21 Oct 04\n \nClose\nHelp\n# upload form/script\n"""\nA simple form to upload a file with allowed extensions\n"txt,htm,html,png,gif,jpg,ico,zip,rar,avi,mpg,rm,ram,wma,mp3,wav,pdf,doc,ppt"\nto directory "../upload" (see ***SCRIPT PARAMETERS***)\nCopyright (C) Georgy Pruss 2003,2004\nTested on Windows XP Home/Apache 2.0.43/Python 2.3\n"""\n\n# The upload form\n# 1st parameter - (this) script name\n# 2nd parameter - file field name\nthe_form = """\n<FORM METHOD="POST" ACTION="%s" enctype="multipart/form-data">\n<INPUT TYPE=FILE NAME="%s" size=50>\n<INPUT TYPE="SUBMIT" VALUE="Upload">\n</FORM>\n"""\n\n\ntry:\n import msvcrt,os\n msvcrt.setmode( 0, os.O_BINARY ) # stdin = 0\n msvcrt.setmode( 1, os.O_BINARY ) # stdout = 1\nexcept ImportError:\n pass\n\n\nprint "Content type: text/html"\nprint\n\nimport sys, os, traceback, re\nimport cgi\nimport cgitb; cgitb.enable()\n\n\ndef strip_path( fpname ):\n """strip off leading path and drive stuff from dos/unix/mac file full name\n takes care of '/' ':' '\s' '%2f' '%5c' '%3a'\n """\n fname = re.sub( r"(%(2f|2F|5c|5C|3a|3A))|/|\s\s|:", '/', fpname )\n delim = fname.rfind( '/' ) # -1 for not found, will return full fname\n return fname[delim+1:]\n\n\ndef check_ext( file_name, ext_set ):\n ext = file_name.rfind('.')\n if ext < 0:\n return False\n ext = file_name[ext+1:].lower()\n # was re.match( '^(gif)|(jpg)|(zip)$', ext, re.I )\n exts = ext_set.lower().split(',')\n for good_ext in exts:\n if ext == good_ext:\n return True\n return False\n\n\nclass UploadException:\n def __init__(self,rsn): self.reason = rsn\n\nNO_FILE_FIELD = -1\nNO_FILENAME = -2\nBAD_EXTENTION = -3\nNO_FILE = -4\n\n\ndef process_fileitem( file_item_name, local_file_path = './', allowed_file_types = 'jpg' ):\n """Gets file from form field file_item_name and saves it with the original\n file name to local_file_path. Returns (file_length,file_name) if success.\n Otherwise raise UploadException( NO_FILE_FIELD|NO_FILENAME|BAD_EXTENTION|NO_FILE )\n """\n\n form = cgi.FieldStorage()\n if not form.has_key( file_item_name ):\n raise UploadException( NO_FILE_FIELD )\n\n file_item = form[ file_item_name ]\n\n if not file_item.filename:\n raise UploadException( NO_FILENAME )\n\n remote_file_name = file_item.filename\n file_name = strip_path( remote_file_name )\n\n if not check_ext( file_name, allowed_file_types ):\n raise UploadException( BAD_EXTENTION )\n\n local_file_name = os.path.join( local_file_path, file_name )\n\n if not file_item.file:\n raise UploadException( NO_FILE )\n\n data = file_item.file.read( 5*1024*1024 ) # max 5 megabyte\n # or data = fileitem.value\n # or data = form.getvalue( file_item_name, "" )\n\n fstrm = open( local_file_name, "wb" )\n fstrm.write( data )\n fstrm.close()\n\n return (len(data), file_name)\n\n\nprint "<html><head><title>Upload form</title></head><body>"\n\ntry:\n\n # ***SCRIPT PARAMETERS***\n file_field_name = "filename"\n loc_path = "../upload"\n file_types = "txt,htm,html,png,gif,jpg,ico,zip,rar,avi,mpg,rm,ram,wma,mp3,wav,pdf,doc,ppt"\n\n try:\n\n flen, fname = process_fileitem( file_field_name, loc_path, file_types )\n print '%d bytes received to <a href="%s/%s">%s</a>' % \s\n (flen, loc_path, fname, fname)\n\n except UploadException, ex:\n\n if ex.reason == NO_FILE_FIELD or ex.reason == NO_FILENAME:\n print "<p>Browse for file to upload.</p>"\n elif ex.reason == BAD_EXTENTION:\n print "<p>Illegal file, only %s allowed.</p>" % file_types\n else: # NO_FILE\n print "<p>No file received. Please repeat.</p>"\n print the_form % (strip_path( __file__ ), file_field_name)\n\nexcept:\n\n print "<pre style='color:red; background:white;'>"\n sys.stderr = sys.stdout\n traceback.print_exc()\n print "</pre>"\n\nprint "</body></html>"\n\n\n# EOF\n}}}
Screens that need edit: http://csdirect.iii.com/manual/i_search_patron_verifica_ext.html\nProduct Overviw: http://csdirect.iii.com/documentation/ldap.shtml
[[From Gideon Burton|http://www.academicevolution.com/2009/04/legacy-academic-systems.html#more]]\n>trapped within an expiring paradigm\n\n> we live in an information environment that is dominated by everything digital
config.macros.gadget = {};\n\nconfig.macros.gadget .handler = function(place,macroName,params, wikifier, paramString) {\n var elem = createTiddlyElement(place,"iframe",null,"greeting","");\n var p = paramString.parseParams(null, null, true);\n\n elem.src= "http://www.gmodules.com/ig/ifr?url=" + params[0] + "&" + getParam(p,"prefs","");\n elem.height = getParam(p,"height","200");\n elem.width= getParam(p,"width","300");\n elem.style.border= getParam(p,"border","1");\n \n place.appendChild(elem);\n};
>But it is meaningless if librarians don't take responsibility for developing new tools and techniques for the storage, retrieval, discovery and dissemination of texts and informational artefacts. Taking responsibility means not just keeping a sharp eye out for tools that others have created it requires us to be part of the creation and development process.\n\n[[Hugh Rundle talking about //innovation//|http://hughrundle.net/2012/09/16/on-relevance-standards-and-collaborative-leadership/#more-370]]
[[from Dr. Mike J. Smith|http://www.journalofmaps.com/cgi-bin/blosxom.cgi/teaching/cognitivethresholds.html]]\n<<<\nWell part of this relates to the key skills we expect our students to have/acquire. These include learning to learn (how to learn), teamwork (working in a group), self-management (managing time and tasks), communication (presentation, written), ICT (using computers/technology) and numeracy (working with numbers). These then feed in to intellectual skills (analysis, synthesis, evaluation, problem solving) and are assessed through essays, exams, MCQs, presentations, reports, projects, groupwork etc.\n\nThe world is messy and we have to the constructs and tactics we use to cope with complexity, ambiguity, incomplete information, mismatched viewpoints, and conflicting objectives.\n<<<\n\n[[Courseocentrisim|http://www.insidehighered.com/views/2009/01/13/graff]]\n\n!!!The Ultimate Outcomes\n\n[img[filestore/uploads/learning/learning-outcomes.png]]
>development of methods for representing, managing, visualizing and utilizing information
[[This is interesting|http://blogs.ukoln.ac.uk/locah/2011/02/16/two-changes-to-the-model-and-some-definitions/fig1/]]
* select/adapt/create a vocabulary for the ? (work, expression, manifestation. item) area\n* select/adapt/create vocabularies for Persons (FOAF?) and Subjects (SKOS?)\n* add internal relationships with the other entities (Play, Production, etc.) in the JSON structure (implement RDF in JSON)\n* Add RDF/XML as output option, besides JSON\n* add external relationships (to other linked data sources like DBPedia, etc.)\n* extend the number of possible URI formats (for Play, Production, etc.)\n* add content negotiation to serve both human and machine readable redirects\n* extend the options on the OPAC side\n
[img[/filestore/uploads/learning/Scholarly-Primatives.png]]
/***\n|Name|TagCloudPlugin|\n|Source|http://www.TiddlyTools.com/#TagCloudPlugin|\n|Version|1.6.0|\n|Author|Eric Shulman|\n|Original Author|Clint Checketts|\n|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides||\n|Description|present a 'cloud' of tags (or links) using proportional font display|\n!Usage\n<<<\n{{{\n<<cloud type action:... limit:... tag tag tag ...>>\n<<cloud type action:... limit:... +TiddlerName>>\n<<cloud type action:... limit:... =tagvalue>>\n}}}\nwhere:\n* //type// is a keyword, one of:\n** ''tags'' (default) - displays a cloud of tags, based on frequency of use\n** ''links'' - displays a cloud of tiddlers, based on number of links //from// each tiddler\n** ''references'' - displays a cloud of tiddlers, based on number of links //to// each tiddler\n* ''action:popup'' (default) - clicking a cloud item shows a popup with links to related tiddlers<br>//or//<br> ''action:goto'' - clicking a cloud item immediately opens the tiddler corresponding to that item\n* ''limit:N'' (optional) - restricts the cloud display to only show the N most popular tags/links\n* ''tag tag tag...'' (or ''title title title'' if ''links''/''references'' is used)<br>shows all tags/links in the document //except// for those listed as macro parameters\n* ''+TiddlerName''<br>shows tags/links read from a space-separated, bracketed list stored in a separate tiddler.\n* ''=tagvalue'' (//only if type=''tags''//)<br>shows only tags that are themselves tagged with the indicated tag value (i.e., ~TagglyTagging usage)\n//note: for backward-compatibility, you can also use the macro {{{<<tagCloud ...>>}}} in place of {{{<<cloud ...>>}}}//\n<<<\n!Examples\n<<<\n//all tags excluding<<tag systemConfig>>, <<tag excludeMissing>> and <<tag script>>//\n{{{<<cloud systemConfig excludeMissing script>>}}}\n{{groupbox{<<cloud systemConfig excludeMissing script>>}}}\n//top 10 tags excluding<<tag systemConfig>>, <<tag excludeMissing>> and <<tag script>>//\n{{{<<cloud limit:10 systemConfig excludeMissing script>>}}}\n{{groupbox{<<cloud limit:10 systemConfig excludeMissing script>>}}}\n//tags listed in// [[FavoriteTags]]\n{{{<<cloud +FavoriteTags>>}}}\n{{groupbox{<<cloud +FavoriteTags>>}}}\n//links to tiddlers tagged with 'package'//\n{{{<<cloud action:goto =package>>}}}\n{{groupbox{<<cloud action:goto =package>>}}}\n//top 20 most referenced tiddlers//\n{{{<<cloud references limit:20>>}}}\n{{groupbox{<<cloud references limit:20>>}}}\n//top 20 tiddlers that contain the most links//\n{{{<<cloud links limit:20>>}}}\n{{groupbox{<<cloud links limit:20>>}}}\n<<<\n!Revisions\n<<<\n2009.02.26 [1.6.0] added {{{action:...}}} parameter to apply popup vs. goto action when clicking cloud items\n2009.02.05 [1.5.0] added ability to show links or back-links (references) instead of tags and renamed macro to {{{<<cloud>>}}} to reflect more generalized usage.\n2008.12.16 [1.4.2] corrected group calculation to prevent 'group=0' error\n2008.12.16 [1.4.1] revised tag filtering so excluded tags don't affect calculations\n2008.12.15 [1.4.0] added {{{limit:...}}} parameter to restrict the number of tags displayed to the top N most popular\n2008.11.15 [1.3.0] added {{{+TiddlerName}}} parameter to include only tags that are listed in the indicated tiddler\n2008.09.05 [1.2.0] added '=tagname' parameter to include only tags that are themselves tagged with the specified value (i.e., ~TagglyTagging usage)\n2008.07.03 [1.1.0] added 'segments' property to macro object. Extensive code cleanup\n<<<\n!Code\n***/\n//{{{\nversion.extensions.TagCloudPlugin= {major: 1, minor: 6 , revision: 0, date: new Date(2009,2,26)};\n//Originally created by Clint Checketts, contributions by Jonny Leroy and Eric Shulman\n//Currently maintained and enhanced by Eric Shulman\n//}}}\n//{{{\nconfig.macros.cloud = {\n tagstip: "%1 tiddlers tagged with '%0'",\n refslabel: " (%0 references)",\n refstip: "%1 tiddlers have links to '%0'",\n linkslabel: " (%0 links)",\n linkstip: "'%0' has links to %1 other tiddlers",\n groups: 9,\n init: function() {\n config.macros.tagCloud=config.macros.cloud; // for backward-compatibility\n config.shadowTiddlers.TagCloud='<<cloud>>';\n config.shadowTiddlers.StyleSheetTagCloud=\n '/*{{{*/\sn'\n +'.tagCloud span {line-height: 3.5em; margin:3px;}\sn'\n +'.tagCloud1{font-size: 80%;}\sn'\n +'.tagCloud2{font-size: 100%;}\sn'\n +'.tagCloud3{font-size: 120%;}\sn'\n +'.tagCloud4{font-size: 140%;}\sn'\n +'.tagCloud5{font-size: 160%;}\sn'\n +'.tagCloud6{font-size: 180%;}\sn'\n +'.tagCloud7{font-size: 200%;}\sn'\n +'.tagCloud8{font-size: 220%;}\sn'\n +'.tagCloud9{font-size: 240%;}\sn'\n +'/*}}}*/\sn';\n setStylesheet(store.getTiddlerText('StyleSheetTagCloud'),'tagCloudsStyles');\n },\n getLinks: function(tiddler) { // get list of links to existing tiddlers and shadows\n if (!tiddler.linksUpdated) tiddler.changed();\n var list=[]; for (var i=0; i<tiddler.links.length; i++) {\n var title=tiddler.links[i];\n if (store.isShadowTiddler(title)||store.tiddlerExists(title))\n list.push(title);\n }\n return list;\n },\n handler: function(place,macroName,params) {\n // unpack params\n var inc=[]; var ex=[]; var limit=0; var action='popup';\n var links=(params[0]&&params[0].toLowerCase()=='links'); if (links) params.shift();\n var refs=(params[0]&&params[0].toLowerCase()=='references'); if (refs) params.shift();\n if (params[0]&&params[0].substr(0,7).toLowerCase()=='action:')\n action=params.shift().substr(7).toLowerCase();\n if (params[0]&&params[0].substr(0,6).toLowerCase()=='limit:')\n limit=parseInt(params.shift().substr(6));\n if (params.length) {\n if (params[0].substr(0,1)=='+') { // get tag list from tiddler\n var inc=store.getTiddlerText(params[0].substr(1),'').readBracketedList();\n } else if (params[0].substr(0,1)=='=') { // get tag list using tagged tags\n var tagged=store.getTaggedTiddlers(params[0].substr(1));\n for (var t=0; t<tagged.length; t++) inc.push(tagged[t].title);\n } else ex=params; // exclude params\n }\n // get all items, include/exclude specific items\n var items=[];\n var list=(links||refs)?store.getTiddlers('title','excludeLists'):store.getTags();\n for (var t=0; t<list.length; t++) {\n var title=(links||refs)?list[t].title:list[t][0];\n if (links) var count=this.getLinks(list[t]).length;\n else if (refs) var count=store.getReferringTiddlers(title).length;\n else var count=list[t][1];\n if ((!inc.length||inc.contains(title))&&(!ex.length||!ex.contains(title)))\n items.push({ title:title, count:count });\n }\n if(!items.length) return;\n // sort by decending count, limit results (optional)\n items=items.sort(function(a,b){return(a.count==b.count)?0:(a.count>b.count?-1:1);});\n while (limit && items.length>limit) items.pop();\n // find min/max and group size\n var most=items[0].count;\n var least=items[items.length-1].count;\n var groupSize=(most-least+1)/this.groups;\n // sort by title and draw the cloud of items\n items=items.sort(function(a,b){return(a.title==b.title)?0:(a.title>b.title?1:-1);});\n var cloudWrapper = createTiddlyElement(place,'div',null,'tagCloud',null);\n for (var t=0; t<items.length; t++) {\n cloudWrapper.appendChild(document.createTextNode(' '));\n var group=Math.ceil((items[t].count-least)/groupSize)||1;\n var className='tagCloudtag tagCloud'+group;\n var tip=refs?this.refstip:links?this.linkstip:this.tagstip;\n tip=tip.format([items[t].title,items[t].count]);\n if (action=='goto') { // TAG/LINK/REFERENCES GOTO\n var btn=createTiddlyLink(cloudWrapper,items[t].title,true,className);\n btn.title=tip;\n btn.style.fontWeight='normal';\n } else if (!links&&!refs) { // TAG POPUP\n var btn=createTiddlyButton(cloudWrapper,items[t].title,tip,onClickTag,className);\n btn.setAttribute('tag',items[t].title);\n } else { // LINK/REFERENCES POPUP\n var btn=createTiddlyButton(cloudWrapper,items[t].title,tip,\n function(ev) { var e=ev||window.event; var cmt=config.macros.cloud;\n var popup = Popup.create(this);\n var title = this.getAttribute('tiddler');\n var count = this.getAttribute('count');\n var refs = this.getAttribute('refs')=='T';\n var links = this.getAttribute('links')=='T';\n var label = (refs?cmt.refslabel:cmt.linkslabel).format([count]);\n createTiddlyLink(popup,title,true);\n createTiddlyText(popup,label);\n createTiddlyElement(popup,'hr');\n if (refs) {\n popup.setAttribute('tiddler',title);\n config.commands.references.handlePopup(popup,title);\n }\n if (links) {\n var tiddler = store.fetchTiddler(title);\n var links=config.macros.cloud.getLinks(tiddler);\n for(var i=0;i<links.length;i++)\n createTiddlyLink(createTiddlyElement(popup,'li'),\n links[i],true);\n }\n Popup.show();\n e.cancelBubble=true; if(e.stopPropagation) e.stopPropagation();\n return false;\n }, className);\n btn.setAttribute('tiddler',items[t].title);\n btn.setAttribute('count',items[t].count);\n btn.setAttribute('refs',refs?'T':'F');\n btn.setAttribute('links',links?'T':'F');\n btn.title=tip;\n }\n }\n }\n};\n//}}}
http://www.topicmaps.com/tm2008/oh.pdf\n\nHow to turn MARC to FRBR and how to turn FRBR to topic maps!
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix dcterms: <http://purl.org/dc/terms/>.\n@prefix bibo: <http://purl.org/ontology/bibo/>.\n@prefix xsd: <http://www.w3.org/2001/XMLSchema#integer>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n\n<_:article1>\n rdf:type bibo:AcademicArticle;\n dcterms:title "AN UNUSUAL NEW NEOSAUROPOD DINOSAUR FROM THE LOWER\nCRETACEOUS HASTINGS BEDS GROUP OF EAST SUSSEX, ENGLAND"@en;\n dcterms:creator <_:author1>, <_:author2>;\n dcterms:abstract """Xenoposeidon proneneukos gen. et sp. nov. is a\nneosauropod represented by BMNH R2095, a well-preserved partial\nmid-to-posterior dorsal vertebra from the Berriasian-Valanginian\nHastings Beds Group of Ecclesbourne Glen, East Sussex, England. It was\nbriefly described by Lydekker in 1893, but it has subsequently been\noverlooked. This specimen's concave cotyle, large lateral pneumatic\nfossae, complex system of bony laminae and camerate internal structure\nshow that it represents a neosauropod dinosaur. However, it differs\nfrom all other sauropods in the form of its neural arch, which is\ntaller than the centrum, covers the entire dorsal surface of the\ncentrum, has its posterior margin continuous with that of the cotyle,\nand slopes forward at 35 degrees relative to the vertical. Also unique\nis a broad, flat area of featureless bone on the lateral face of the\narch; the accessory infraparapophyseal and postzygapophyseal laminae\nwhich meet in a V; and the asymmetric neural canal, small and round\nposteriorly but large and teardrop-shaped anteriorly, bounded by\narched supporting laminae. The specimen cannot be referred to any\nknown sauropod genus, and clearly represents a new genus and possibly\na new `family'. Other sauropod remains from the Hastings Beds Group\nrepresent basal Titanosauriformes, Titanosauria and Diplodocidae; X.\nproneneukos may bring to four the number of sauropod `families'\nrepresented in this unit. Sauropods may in general have been much less\nmorphologically conservative than is usually assumed. Since\nneurocentral fusion is complete in R2095, it is probably from a mature\nor nearly mature animal. Nevertheless, size comparisons of R2095 with\ncorresponding vertebrae in the Brachiosaurus brancai holotype HMN SII\nand Diplodocus carnegii holotype CM 84 suggest a rather small\nsauropod: perhaps 15 m long and 7600 kg in mass if built like a\nbrachiosaurid, or 20 m and 2800 kg if built like a diplodocid."""@en;\n dcterms:subject\n<http://id.loc.gov/authorities/sh85038094#concept>,\n<http://id.loc.gov/authorities/sh85117730#concept>,\n<http://id.loc.gov/authorities/sh85097127#concept>;\n dcterms:isPartOf <_:journal1>;\n bibo:volume "50"^^xsd:integer;\n bibo:issue "6"^^xsd:integer;\n bibo:numPages "18"^^xsd:integer;\n bibo:pages "1547-1564";\n bibo:pageStart "1547"^^xsd:integer;\n bibo:pageEnd "1564"^^xsd:integer;\n dcterms:issued "2007-11"^^xsd:date;\n dcterms:language <http://purl.org/NET/marccodes/languages/eng#lang>;\n bibo:authorList ( <_:author1> <_:author2> );\n bibo:doi "10.1111/j.1475-4983.2007.00728.x".\n\n<_:journal1>\n rdf:type bibo:Journal;\n dcterms:title "Palaeontology";\n bibo:issn "0031-0239";\n foaf:homepage\n<http://www3.interscience.wiley.com/journal/118531917/home?CRETRY=1=0 <http://www3.interscience.wiley.com/journal/118531917/home?CRETRY=1&SRETRY=0> >;\n dcterms:publisher <_:publisher1>.\n\n<_:publisher1>\n rdf:type foaf:Organization;\n foaf:name "Blackwell Publishing";\n foaf:homepage <http://www.blackwellpublishing.com/>;\n dcterms:isPartOf <_:publisher2>.\n<_:publisher2>\n rdf:type foaf:Organization;\n foaf:name "Wiley-Blackwell";\n foaf:homepage <http://www.wiley.com/WileyCDA/Brand/id-35.html>;\n dcterms:isPartOf <_:publisher3>.\n<_:publisher3>\n rdf:type foaf:Organization;\n foaf:name "John Wiley & Sons, Inc.";\n foaf:name "Wiley";\n foaf:homepage <http://www.wiley.com/WileyCDA/>.\n\n<_:author1>\n rdf:type foaf:Person;\n foaf:name "Michael Taylor";\n foaf:givenName "Michael";\n foaf:familyName "Taylor";\n foaf:homepage <http://miketaylor.org.uk/>;\n foaf:depiction\n<http://www.miketaylor.org.uk/dino/xeno/images/photos/DINO_4.jpeg>;\n foaf:topic_interest <http://dbpedia.org/resource/Paleontology>,\n<http://id.loc.gov/authorities/sh85066163#concept>;\n foaf:made <_:article1>.\n\n<_:author2>\n rdf:type foaf:Person;\n foaf:name "Darren Naish";\n foaf:givenName "Darren";\n foaf:familyName "Naish";\n foaf:homepage <http://scienceblogs.com/tetrapodzoology/>;\n foaf:depiction\n<http://scienceblogs.com/tetrapodzoology/Naish_profile_70_px.jpg>;\n foaf:topic_interest <http://dbpedia.org/resource/Tetrapod>,\n<http://dbpedia.org/resource/Paleontology>;\n foaf:made <_:article1>.\n
Type the text for 'Higher Education'
[img[/filestore/uploads/libraries/supporting-librarians.png]]\n\nI think what is happening at out library is that we are missing the bottom row!
orignal tiddler: \n<slider Slider1> \n[ ] fake link 1 \n[ ]fake link 2 \n[ ] fake link 3 \n</slider> \n<slider Slider2> \n* fake link 1 \n* fake link 2 \n* fake link 3 \n</slider>
<<<\n<html>\n\n<ul>\n<li>\n<p><i>Do you only want to encode document metadata?</i></p>\n<p><b>RDF is ideal and you won't need OWL.</b></p>\n</li>\n\n<li><p><i>Do you want to achieve subject-based classification of content?</i></p>\n<p><b>Topic Maps provides the better combination of flexibility and human-friendliness.</b></p></li>\n\n<li><p><i>Do you want to combine metadata and subject-based\nclassification?</i></p><p><b>Go straight for Topic Maps, because it also\nsupports metadata.</b></p></li><li><p><i>Do you want to encode knowledge for\nhumans to use?</i></p><p><b>Topic Maps is the better solution for handling\ncontext and fuzziness</b></p></li><li><p><i>Do you want to develop\nagent-based applications?</i></p><p><b> You are probably better served by\nRDF (with OWL), but if you already have Topic Maps, you're half way\nthere.</b></p></li></ul>\nhttp://de.slideshare.net/mobile/BBCnewslabs/news-labs-newsarchivedatamodel01\n</html>\n<<<\n\n!!!BBC use of topics\nhttp://de.slideshare.net/mobile/BBCnewslabs/news-labs-newsarchivedatamodel01\nhttp://www.bbc.co.uk/ontologies/curriculum/2013-04-03.shtml
<html>\n<iframe width="640" height="360" src="//www.youtube.com/embed/sNUNB6CMnE8?feature=player_embedded" frameborder="0" allowfullscreen></iframe>\n</html>
|!RESOLUTION|!BITRATE|!APPROXIMATE|!SIZE OF 10 MIN VIDEO|\n|320p (for mobile phones)| 180 kbit/s |~13 MB|\n|360p| 300 kbit/s| ~22 MB|\n|480p| 500 kbit/s| ~37 MB|\n|576p (SD)| 850 kbit/s| ~63 MB|\n|720p (HD)| 1000 kbit/s| ~75 MB|\n\n!!! Suggested Rates\n[img[/filestore/uploads/video/encoding-rates.png]]\n\n!!! From Apple\n[img[/filestore/uploads/video/encoding-guidelines.png]]\n\n!!!YouTube\n[img[http://www.streamingmedia.com/Images/ArticleImages/ArticleImage.13811.jpg]]\n\n!!!Netflicks\n<html>\n\n<table class="tftable" border="1">\n<tbody>\n<tr>\n<th>GB per Hour</th>\n<th>Bitrate</th>\n<th>Resolution</th>\n<th>Pixel Aspect Ratio</th>\n</tr>\n<tr>\n<td>2.610</td>\n<td>25800 Kbps</td>\n<td>1920 x 1080</td>\n<td>1:1</td>\n</tr>\n<tr>\n<td>1.935</td>\n<td>4300 Kbps</td>\n<td>1920 x 1080</td>\n<td>1:1</td>\n</tr>\n<tr>\n<td>1.732</td>\n<td>3850 Kbps</td>\n<td>1920 x 1080</td>\n<td>1:1</td>\n</tr>\n<tr>\n<td>1.350</td>\n<td>3000 Kbps</td>\n<td>1280 x 720</td>\n<td>1:1</td>\n</tr>\n<tr>\n<td>1.057</td>\n<td>2350 Kbps</td>\n<td>1280 x 720</td>\n<td>1:1</td>\n</tr>\n<tr>\n<td>0.787</td>\n<td>1750 Kbps</td>\n<td>720 x 480</td>\n<td>32:27</td>\n</tr>\n<tr>\n<td>0.472</td>\n<td>1050 Kbps</td>\n<td>640 x 480</td>\n<td>4:3</td>\n</tr>\n<tr>\n<td>0.337</td>\n<td>750 Kbps</td>\n<td>512 x 384</td>\n<td>4:3</td>\n</tr>\n<tr>\n<td>0.252</td>\n<td>560 Kbps</td>\n<td>512 x 384</td>\n<td>4:3</td>\n</tr>\n<tr>\n<td>0.169</td>\n<td>375 Kbps</td>\n<td>384 x 288</td>\n<td>4:3</td>\n</tr>\n<tr>\n<td>0.106</td>\n<td>235 Kbps</td>\n<td>320 x 240</td>\n<td>4:3</td>\n</tr>\n</tbody>\n</table>\n</html>
Contents
<<<\nRhizomatic learning is a story of how we can learn in a world of abundance - abundance of perspective, of information and of connection. A paper/location based learning model forces us to make decisions, in advance, about what it is important for students to learn. This was a practical reality - if we were going to have content available for a course, it needed to be prepared in advance. In order to prepare the content in advance, we needed to prepare the objectives in advance. And, given that we know what everyone is supposed to learn, we might as well check and see if they all did and compare them against each other.\n\nWhat happens if we let that go? What happens when we approach a learning experience and we don't know what we are going to learn? Where each student can learn something a little bit different - together? If we decide that important learning is more like being a parent, or being a cook, and less like knowing all the counties in England in 1450? What if we decided to trust the idea that people can come together to learn given the availability of an abundance of perspective, of information and of connection?\n<<<
{{{\nBUFFERSIZE = 1024 * 512 # for file uploads\n\ndef saveFile(self, name, targetFilename):\n """If "name" corresponds to an uploaded file, then open a\n file on the server specified by the fully-qualified filename\n "targetFilename" and write the file.\n Return 1 if file "name" existed and was saved successfully.\n Return 0 if no file existed for "name".\n An exception may be raised if file I/O fails.\n """\n if(not self.get(name)): return 0\n upfile = self.getFile(name)\n if(upfile):\n targetfile = open(targetFilename, "w")\n try:\n while(1):\n buffer = upfile.read(BUFFERSIZE)\n if(buffer): targetfile.write(buffer)\n else: break\n finally:\n targetfile.close()\n upfile.close()\n return 1\n else:\n return 0\n\n}}}
http://msn.foxsports.com/mlb/story/Moneyball-theory-still-relevant-to-mlb-8-years-later-but-debate-has-shifted-092011
* People don't read, they scan\n* Users don't make the best choice, they select the first "good enough" solution\n* Visitors don't figure out how things work, they "muddle" through
/***\n|Name|BetterTimelineMacro|\n|Created by|SaqImtiaz|\n|Location|http://tw.lewcid.org/#BetterTimelineMacro|\n|Version|0.5 beta|\n|Requires|~TW2.x|\n!!!Description:\nA replacement for the core timeline macro that offers more features:\n*list tiddlers with only specfic tag\n*exclude tiddlers with a particular tag\n*limit entries to any number of days, for example one week\n*specify a start date for the timeline, only tiddlers after that date will be listed.\n\n!!!Installation:\nCopy the contents of this tiddler to your TW, tag with systemConfig, save and reload your TW.\nEdit the ViewTemplate to add the fullscreen command to the toolbar.\n\n!!!Syntax:\n{{{<<timeline better:true>>}}}\n''the param better:true enables the advanced features, without it you will get the old timeline behaviour.''\n\nadditonal params:\n(use only the ones you want)\n{{{<<timeline better:true onlyTag:Tag1 excludeTag:Tag2 sortBy:modified/created firstDay:YYYYMMDD maxDays:7 maxEntries:30>>}}}\n\n''explanation of syntax:''\nonlyTag: only tiddlers with this tag will be listed. Default is to list all tiddlers.\nexcludeTag: tiddlers with this tag will not be listed.\nsortBy: sort tiddlers by date modified or date created. Possible values are modified or created.\nfirstDay: useful for starting timeline from a specific date. Example: 20060701 for 1st of July, 2006\nmaxDays: limits timeline to include only tiddlers from the specified number of days. If you use a value of 7 for example, only tiddlers from the last 7 days will be listed.\nmaxEntries: limit the total number of entries in the timeline.\n\n\n!!!History:\n*28-07-06: ver 0.5 beta, first release\n\n!!!Code\n***/\n//{{{\n// Return the tiddlers as a sorted array\nTiddlyWiki.prototype.getTiddlers = function(field,excludeTag,includeTag)\n{\n var results = [];\n this.forEachTiddler(function(title,tiddler)\n {\n if(excludeTag == undefined || tiddler.tags.find(excludeTag) == null)\n if(includeTag == undefined || tiddler.tags.find(includeTag)!=null)\n results.push(tiddler);\n });\n if(field)\n results.sort(function (a,b) {if(a[field] == b[field]) return(0); else return (a[field] < b[field]) ? -1 : +1; });\n return results;\n}\n\n\n\n//this function by Udo\nfunction getParam(params, name, defaultValue)\n{\n if (!params)\n return defaultValue;\n var p = params[0][name];\n return p ? p[0] : defaultValue;\n}\n\nwindow.old_timeline_handler= config.macros.timeline.handler;\nconfig.macros.timeline.handler = function(place,macroName,params,wikifier,paramString,tiddler)\n{\n var args = paramString.parseParams("list",null,true);\n var betterMode = getParam(args, "better", "false");\n if (betterMode == 'true')\n {\n var sortBy = getParam(args,"sortBy","modified");\n var excludeTag = getParam(args,"excludeTag",undefined);\n var includeTag = getParam(args,"onlyTag",undefined);\n var tiddlers = store.getTiddlers(sortBy,excludeTag,includeTag);\n var firstDayParam = getParam(args,"firstDay",undefined);\n var firstDay = (firstDayParam!=undefined)? firstDayParam: "00010101";\n var lastDay = "";\n var field= sortBy;\n var maxDaysParam = getParam(args,"maxDays",undefined);\n var maxDays = (maxDaysParam!=undefined)? maxDaysParam*24*60*60*1000: (new Date()).getTime() ;\n var maxEntries = getParam(args,"maxEntries",undefined);\n var last = (maxEntries!=undefined) ? tiddlers.length-Math.min(tiddlers.length,parseInt(maxEntries)) : 0;\n for(var t=tiddlers.length-1; t>=last; t--)\n {\n var tiddler = tiddlers[t];\n var theDay = tiddler[field].convertToLocalYYYYMMDDHHMM().substr(0,8);\n if ((theDay>=firstDay)&& (tiddler[field].getTime()> (new Date()).getTime() - maxDays))\n {\n if(theDay != lastDay)\n {\n var theDateList = document.createElement("ul");\n place.appendChild(theDateList);\n createTiddlyElement(theDateList,"li",null,"listTitle",tiddler[field].formatString(this.dateFormat));\n lastDay = theDay;\n }\n var theDateListItem = createTiddlyElement(theDateList,"li",null,"listLink",null);\n theDateListItem.appendChild(createTiddlyLink(place,tiddler.title,true));\n }\n }\n }\n\n else\n {\n window.old_timeline_handler.apply(this,arguments);\n }\n}\n//}}}
/***\n|''Name''|EditTemplateFieldsPlugin|\n|''Version''|0.3.3|\n|''Status''|beta|\n|''Author''|Jon Robson|\n|''Description''|Provides editing of custom fields|\n|''Requires''||\n|''Source''||\n!Usage\nput {{{<div macro="editFields"></div>}}} into your EditTemplate.\n!Todo\nSupport newlines in input boxes.\n!Code\n***/\n//{{{\n(function($) {\nvar editFields = config.macros.editFields = {\n handler: function(place, macroName, params, wikifier, paramString, tiddler) {\n var options = {\n fields: params\n };\n this.createInterface(place, tiddler, options);\n },\n createInterface: function(place, tiddler, options) {\n var whitelisted = ["changecount"];\n var fieldContainer = $("<div class='tiddlerCustomFields' />").appendTo(place);\n var included = [];\n if(tiddler) {\n for(var i in tiddler.fields) {\n var val = tiddler.fields[i];\n if(i.indexOf("server.") !== 0 && i.indexOf("_") !== 0 && typeof(val) == "string" && !whitelisted.contains(i)) {\n this.addNewField(fieldContainer, i, val);\n included.push(i);\n }\n }\n }\n for(var j = 0; j < options.fields.length; j++) {\n var field = options.fields[j];\n if(!included.contains(field)) {\n this.addNewField(fieldContainer, field, "");\n }\n }\n $("<button />").text("add new field").click(function() {\n editFields.addNewField(fieldContainer, "", "");\n }).appendTo(place);\n },\n addNewField: function(place, name, value) {\n var container = $("<div />").appendTo(place);\n var type = value.indexOf("\sn") > -1 ? "textarea" : "text";\n var valueInput = type == "text" ? $("<input type='text' />") : $("<textarea />");\n\n valueInput.attr("edit", name).val(value).appendTo(container);\n $("<button class='delete' />").text("delete").click(function(ev) {\n var answer = confirm("Are you sure you want to remove this field?");\n if(answer) {\n var attr = $(this).attr("field");\n $(this).parent().remove();\n }\n }).appendTo(container);\n var nameInput = $("<input class='fieldName' type='text' />").val(name).\n change(function(ev) {\n var el = $(ev.target);\n valueInput.attr("edit", el.val());\n }).prependTo(container);\n }\n}\n})(jQuery);\n//}}}
[[David Thornbug|http://www.usdla.org/html/journal/JUN01_Issue/article01.html]] \n\nRead this!
{{{\n {{{\n preformatted (e.g. code)\n }}}\n}}}\n<<<\n{{{\npreformatted (e.g. code)\n}}}\n<<<\n
<html>\n<iframe width="100%" height="800px" src="/filestore/uploads/libraries/librarianskillbook_toc.pdf"></iframe>\n</html>\n
What is this http://edutechwiki.unige.ch/en/Transformative_pedagogy
!!! Metadata Fields\n* id\n* medium\n* title\n* title-remainder\n* title-number-section\n* title-responsibility\n* date\n* multivolume-title (not part of standard tmarc.xsl)\n* series-title\n* author\n* other-person (not part of standard tmarc.xsl)\n* journal-title\n* journal-subpart\n* volume-number\n* issue-number\n* pages-number\n* isbn\n* issn\n* pissn (not part of standard tmarc.xsl)\n* eissn (not part of standard tmarc.xsl)\n* oclc-number\n* zdb-number\n* doi (not part of standard tmarc.xsl)\n* electronic-url\n* edition\n* publication-name\n* publication-place\n* physical-extent\n* description\n* language - ISO 639-2/B language code (not part of standard tmarc.xsl), German and English language names are included in the JavaScript\n* abstract (not part of standard tmarc.xsl)\n* creator (used for Guide links)\n* catalogue-url (URL linking to the catalogue web page for that record, built using the stylesheets and setup for the various targets.)\n* parent-catalogue-url (URL linking to the catalogue web page for related records to the current record, typically the containing parent collection.)\n* subject\n* classification-msc (not part of standard tmarc.xsl)\n* mapscale (not part of standard tmarc.xsl), display the scale of maps and potentially draw the region covered by the map on an interactive map on the web page\n* country (not part of standard tmarc.xsl, used for Guide records)\n* source-type (not part of standard tmarc.xsl, used for Guide records)\n\n!!! Media Types\n* article\n* audio-visual (may require tmarc.xsl output to be stripped of more specific media type information like dvd)\n* book\n* data (not part of tmarc.xsl)\n* electronic\n* image (not part of tmarc.xsl)\n* journal\n* letter (not part of tmarc.xsl)\n* manuscript (changed tmarc.xsl to recognise these)\n* map\n* microform\n* music-score\n* multivolume (extended tmarc.xsl to recognise these)\n* newspaper\n* recording\n* website (used for websites as found in SUB’s SSG-FI Guides, not coming from tmarc.xsl)\n* multiple (used for merged records of varying media types as well as mixed-media items)\n* \n{{{\nThis XML file does not appear to have any style information associated with it. The document tree is shown below.\n<record>\n<md-isbn>9780674064676 (alk. paper)</md-isbn>\n<md-isbn>0674064674 (alk. paper)</md-isbn>\n<md-author>Brown, Candy Gunther</md-author>\n<md-date>2012</md-date>\n<md-title>Testing prayer</md-title>\n<md-title-remainder>science and healing</md-title-remainder>\n<md-title-complete>Testing prayer : science and healing</md-title-complete>\n<md-title-responsibility>Candy Gunther Brown</md-title-responsibility>\n<md-use_thumbnails>1</md-use_thumbnails>\n<md-medium>book</md-medium>\n<location checksum="2272336077" id="josiah.brown.edu:210/innopac" name="Brown University Library">\n<md-id>ocn757718048</md-id>\n<md-isbn>9780674064676 (alk. paper)</md-isbn>\n<md-isbn>0674064674 (alk. paper)</md-isbn>\n<md-author>Brown, Candy Gunther</md-author>\n<md-date>2012</md-date>\n<md-title>Testing prayer</md-title>\n<md-title-remainder>science and healing</md-title-remainder>\n<md-title-complete>Testing prayer : science and healing</md-title-complete>\n<md-title-responsibility>Candy Gunther Brown</md-title-responsibility>\n<md-iii-id>.b61662033</md-iii-id>\n<md-locallocation>PAZPAR2_NULL_VALUE</md-locallocation>\n<md-locallocation>ROCK</md-locallocation>\n<md-callnumber>PAZPAR2_NULL_VALUE</md-callnumber>\n<md-callnumber>BR1644.7 .B76 2012</md-callnumber>\n<md-available>PAZPAR2_NULL_VALUE</md-available>\n<md-available>PAZPAR2_NULL_VALUE</md-available>\n<md-publicnote>PAZPAR2_NULL_VALUE</md-publicnote>\n<md-publicnote>AVAILABLE</md-publicnote>\n<md-use_thumbnails>1</md-use_thumbnails>\n<md-url_recipe>\nhttp://josiah.brown.edu/search~S7/?searchtype=o&searcharg=${md-id}\n</md-url_recipe>\n<md-medium>book</md-medium>\n<md-full_text_target>NO</md-full_text_target>\n<md-place_holds>no</md-place_holds>\n</location>\n<count>1</count>\n<relevance>553065</relevance>\n<recid>\ncontent: author brown candy gunther title-complete testing prayer science and healing\n</recid>\n</record>\n}}}
If I were ever to do it, here are some notes;\n!!! Why\n* [[Dave Raggettt|http://www.w3.org/MarkUp/Guide/]]\n* [[Dave's Advanced Page|http://www.w3.org/MarkUp/Guide/Advanced.html]]
>Anyone with a modicum of insight will see that there are several parallels here with the battle between the institutional VLE and Edupunk style 'do-it-yourselves' personal web tools. The shiny, expensive and cumbersome VLE dominates the battlefield that is education, and is supposedly the killer application that all colleges and universities have bought into. The colour of the banner doesn't matter, because whatever the brand, the VLE has essentially a common architecture and purpose: it is there to restrict access, deliver homogenous content and control the activities of its users. It lumbers ever forward into confined spaces, tripping itself over as it goes, and is slow to adapt to new requirements. Whilst its champions think it is invincible, they don't seem to realise that it is becoming bogged down in a morass of apathy, resistance to use and lack of response to change.\n\n>The personal web by contrast, moves along lightly at the pace of its users, being directed as changes and personal needs dictate. It has an awesome array of choices, and is responsive to the needs of communities of practice as well as the individual. It is cheap, and not very attractive (at least in corporate terms) when compared to the institutional VLE, but it is a damned sight more effective when it comes to supporting learning. The institutional VLE is led by the entire institution and is therefore slow to respond to change, whilst the personal web is led by one user. The personal web has one more key advantage -- it is owned by the individual who created it.\n\n[[from Steve Wheeler|http://steve-wheeler.blogspot.com/2009/08/two-fingered-salute.html]]
Check this out further\n\nhttp://garfield.library.upenn.edu/histcomp/ingwersen_citing_raw/index-tl-14.html
[img[/filestore/uploads/learning/value-centered-education.png ]]
Sea Dragon Images from Microsoft http://mith.umd.edu/tile/2010/09/07/the-open-source-seadragon/
Background: #fff\nForeground: #000\nPrimaryPale: #8cf\nPrimaryLight: #18f\nPrimaryMid: #04b\nPrimaryDark: #014\nSecondaryPale: #ffc\nSecondaryLight: #fe8\nSecondaryMid: #db4\nSecondaryDark: #841\nTertiaryPale: #eee\nTertiaryLight: #ccc\nTertiaryMid: #999\nTertiaryDark: #666\nError: #f88
* Open Sans\n* Source Sans Pro\n* Roboto\n* Montserrat (header and titles)\n* Domine (serif)\n* Rokkit (sefif)\n* Old Standard TT (serif , body use)\n* Abril Fatface (poster)\n* Ubuntu (this is really pretty cool)\n* Droid (sans meant to be readable)\n* PT Mono (for forms)\n\n\n
<<<\n... Visions matter. Visions give people a direction and inspire people to act, and a group of inspired people is the most powerful force in the world.
>Normal person: "I'm too lazy to figure it out, I'll just look it up." Programmer: "I'm too lazy to look it up, I'll just figure it out."\n
/***\n''NestedSlidersPlugin for TiddlyWiki version 1.2.x and 2.0''\n^^author: Eric Shulman\nsource: http://www.TiddlyTools.com/#NestedSlidersPlugin\nlicense: [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]^^\n\nQuickly make any tiddler content into an expandable 'slider' panel, without needing to create a separate tiddler to contain the slider content. Optional syntax allows ''default to open'', ''custom button label/tooltip'' and ''automatic blockquote formatting.''\n\nYou can also 'nest' these sliders as deep as you like (see complex nesting example below), so that expandable 'tree-like' hierarchical displays can be created. This is most useful when converting existing in-line text content to create in-line annotations, footnotes, context-sensitive help, or other subordinate information displays.\n\nFor more details, please click on a section headline below:\n++++!!!!![Configuration]>\nDebugging messages for 'lazy sliders' deferred rendering:\n<<option chkDebugLazySliderDefer>> show debugging alert when deferring slider rendering\n<<option chkDebugLazySliderRender>> show debugging alert when deferred slider is actually rendered\n===\n++++!!!!![Usage]>\nWhen installed, this plugin adds new wiki syntax for embedding 'slider' panels directly into tiddler content. Use {{{+++}}} and {{{===}}} to delimit the slider content. Additional optional syntax elements let you specify\n*default to open\n*cookiename\n*heading level\n*floater (with optional CSS width value)\n*mouse auto rollover\n*custom label/tooltip/accesskey\n*automatic blockquote\n*deferred rendering\nThe complete syntax, using all options, is:\n//{{{\n++++(cookiename)!!!!!^width^*[label=key|tooltip]>...\ncontent goes here\n===\n//}}}\nwhere:\n* {{{+++}}} (or {{{++++}}}) and {{{===}}}^^\nmarks the start and end of the slider definition, respectively. When the extra {{{+}}} is used, the slider will be open when initially displayed.^^\n* {{{(cookiename)}}}^^\nsaves the slider opened/closed state, and restores this state whenever the slider is re-rendered.^^\n* {{{!}}} through {{{!!!!!}}}^^\ndisplays the slider label using a formatted headline (Hn) style instead of a button/link style^^\n* {{{^width^}}} (or just {{{^}}})^^\nmakes the slider 'float' on top of other content rather than shifting that content downward. 'width' must be a valid CSS value (e.g., "30em", "180px", "50%", etc.). If omitted, the default width is "auto" (i.e., fit to content)^^\n* {{{*}}}^^\nautomatically opens/closes slider on "rollover" as well as when clicked^^\n* {{{[label=key|tooltip]}}}^^\nuses custom label/tooltip/accesskey. {{{=key}}} and {{{|tooltip}}} are optional. 'key' is must be a ''single letter only''. Default labels/tootips are: ">" (more) and "<" (less), with no default access key assignment.^^\n* {{{">"}}} //(without the quotes)//^^\nautomatically adds blockquote formatting to slider content^^\n* {{{"..."}}} //(without the quotes)//^^\ndefers rendering of closed sliders until the first time they are opened. //Note: deferred rendering may produce unexpected results in some cases. Use with care.//^^\n\n//Note: to make slider definitions easier to read and recognize when editing a tiddler, newlines immediately following the {{{+++}}} 'start slider' or preceding the {{{===}}} 'end slider' sequence are automatically supressed so that excess whitespace is eliminated from the output.//\n===\n++++!!!!![Examples]>\nsimple in-line slider: \n{{{\n+++\n content\n===\n}}}\n+++\n content\n===\n----\nuse a custom label and tooltip: \n{{{\n+++[label|tooltip]\n content\n===\n}}}\n+++[label|tooltip]\n content\n===\n----\ncontent automatically blockquoted: \n{{{\n+++>\n content\n===\n}}}\n+++>\n content\n===\n----\nall options combined //(default open, cookie, heading, sized floater, rollover, label/tooltip/key, blockquoted, deferred)//\n{{{\n++++(testcookie)!!!^30em^*[label=Z|click or press Alt-Z to open]>...\n content\n===\n}}}\n++++(testcookie)!!!^30em^*[label=Z|click or press Alt-Z to open]>...\n content\n===\n----\ncomplex nesting example:\n{{{\n+++^[get info...=I|click for information or press Alt-I]\n put some general information here, plus a floating slider with more specific info:\n +++^10em^[view details...|click for details]\n put some detail here, which could include a rollover with a +++^25em^*[glossary definition]explaining technical terms===\n ===\n===\n}}}\n+++^[get info...=I|click for information or press Alt-I]\n put some general information here, plus a floating slider with more specific info:\n +++^10em^[view details...|click for details]\n put some detail here, which could include a rollover with a +++^25em^*[glossary definition]explaining technical terms===\n ===\n===\n----\nnested floaters\n>menu: <<tiddler NestedSlidersExample>>\n(see [[NestedSlidersExample]] for definition)\n----\n===\n!!!!!Installation\n<<<\nimport (or copy/paste) the following tiddlers into your document:\n''NestedSlidersPlugin'' (tagged with <<tag systemConfig>>)\n<<<\n!!!!!Revision History\n<<<\n''2006.05.11 - 1.9.0'' added optional '^width^' syntax for floating sliders and '=key' syntax for setting an access key on a slider label\n''2006.05.09 - 1.8.0'' in onClickNestedSlider(), when showing panel, set focus to first child input/textarea/select element\n''2006.04.24 - 1.7.8'' in adjustSliderPos(), if floating panel is contained inside another floating panel, subtract offset of containing panel to find correct position\n''2006.02.16 - 1.7.7'' corrected deferred rendering to account for use-case where show/hide state is tracked in a cookie\n''2006.02.15 - 1.7.6'' in adjustSliderPos(), ensure that floating panel is positioned completely within the browser window (i.e., does not go beyond the right edge of the browser window)\n''2006.02.04 - 1.7.5'' add 'var' to unintended global variable declarations to avoid FireFox 1.5.0.1 crash bug when assigning to globals\n''2006.01.18 - 1.7.4'' only define adjustSliderPos() function if it has not already been provided by another plugin. This lets other plugins 'hijack' the function even when they are loaded first.\n''2006.01.16 - 1.7.3'' added adjustSliderPos(place,btn,panel,panelClass) function to permit specialized logic for placement of floating panels. While it provides improved placement for many uses of floating panels, it exhibits a relative offset positioning error when used within *nested* floating panels. Short-term workaround is to only adjust the position for 'top-level' floaters.\n''2006.01.16 - 1.7.2'' added button property to slider panel elements so that slider panel can tell which button it belongs to. Also, re-activated and corrected animation handling so that nested sliders aren't clipped by hijacking Slider.prototype.stop so that "overflow:hidden" can be reset to "overflow:visible" after animation ends\n''2006.01.14 - 1.7.1'' added optional "^" syntax for floating panels. Defines new CSS class, ".floatingPanel", as an alternative for standard in-line ".sliderPanel" styles.\n''2006.01.14 - 1.7.0'' added optional "*" syntax for rollover handling to show/hide slider without requiring a click (Based on a suggestion by tw4efl)\n''2006.01.03 - 1.6.2'' When using optional "!" heading style, instead of creating a clickable "Hn" element, create an "A" element inside the "Hn" element. (allows click-through in SlideShowPlugin, which captures nearly all click events, except for hyperlinks)\n''2005.12.15 - 1.6.1'' added optional "..." syntax to invoke deferred ('lazy') rendering for initially hidden sliders\nremoved checkbox option for 'global' application of lazy sliders\n''2005.11.25 - 1.6.0'' added optional handling for 'lazy sliders' (deferred rendering for initially hidden sliders)\n''2005.11.21 - 1.5.1'' revised regular expressions: if present, a single newline //preceding// and/or //following// a slider definition will be suppressed so start/end syntax can be place on separate lines in the tiddler 'source' for improved readability. Similarly, any whitespace (newlines, tabs, spaces, etc.) trailing the 'start slider' syntax or preceding the 'end slider' syntax is also suppressed.\n''2005.11.20 - 1.5.0'' added (cookiename) syntax for optional tracking and restoring of slider open/close state\n''2005.11.11 - 1.4.0'' added !!!!! syntax to render slider label as a header (Hn) style instead of a button/link style\n''2005.11.07 - 1.3.0'' removed alternative syntax {{{(((}}} and {{{)))}}} (so they can be used by other\nformatting extensions) and simplified/improved regular expressions to trim multiple excess newlines\n''2005.11.05 - 1.2.1'' changed name to NestedSlidersPlugin\nmore documentation\n''2005.11.04 - 1.2.0'' added alternative character-mode syntax {{{(((}}} and {{{)))}}}\ntweaked "eat newlines" logic for line-mode {{{+++}}} and {{{===}}} syntax\n''2005.11.03 - 1.1.1'' fixed toggling of default tooltips ("more..." and "less...") when a non-default button label is used\ncode cleanup, added documentation\n''2005.11.03 - 1.1.0'' changed delimiter syntax from {{{(((}}} and {{{)))}}} to {{{+++}}} and {{{===}}}\nchanged name to EasySlidersPlugin\n''2005.11.03 - 1.0.0'' initial public release\n<<<\n!!!!!Credits\n<<<\nThis feature was implemented by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]] with initial research and suggestions from RodneyGomes, GeoffSlocock, and PaulPetterson.\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.nestedSliders = {major: 1, minor: 9, revision: 0, date: new Date(2006,5,11)};\n//}}}\n\n//{{{\n// options for deferred rendering of sliders that are not initially displayed\nif (config.options.chkDebugLazySliderDefer==undefined) config.options.chkDebugLazySliderDefer=false;\nif (config.options.chkDebugLazySliderRender==undefined) config.options.chkDebugLazySliderRender=false;\n\n// default styles for 'floating' class\nsetStylesheet(".floatingPanel { position:absolute; z-index:10; padding:0.5em; margin:0em; \s\n background-color:#eee; color:#000; border:1px solid #000; text-align:left; }","floatingPanelStylesheet");\n//}}}\n\n//{{{\nconfig.formatters.push( {\n name: "nestedSliders",\n match: "\s\sn?\s\s+{3}",\n terminator: "\s\ss*\s\s={3}\s\sn?",\n lookahead: "\s\sn?\s\s+{3}(\s\s+)?(\s\s([^\s\s)]*\s\s))?(\s\s!*)?(\s\s^(?:[^\s\s^\s\s*\s\s[\s\s>]*\s\s^)?)?(\s\s*)?(\s\s[[^\s\s]]*\s\s])?(\s\s>)?(\s\s.\s\s.\s\s.)?\s\ss*",\n handler: function(w)\n {\n var lookaheadRegExp = new RegExp(this.lookahead,"mg");\n lookaheadRegExp.lastIndex = w.matchStart;\n var lookaheadMatch = lookaheadRegExp.exec(w.source)\n if(lookaheadMatch && lookaheadMatch.index == w.matchStart)\n {\n // location for rendering button and panel\n var place=w.output;\n\n // default to closed, no cookie, no accesskey\n var show="none"; var title=">"; var tooltip="show"; var cookie=""; var key="";\n\n // extra "+", default to open\n if (lookaheadMatch[1])\n { show="block"; title="<"; tooltip="hide"; }\n\n // cookie, use saved open/closed state\n if (lookaheadMatch[2]) {\n cookie=lookaheadMatch[2].trim().slice(1,-1);\n cookie="chkSlider"+cookie;\n if (config.options[cookie]==undefined)\n { config.options[cookie] = (show=="block") }\n if (config.options[cookie])\n { show="block"; title="<"; tooltip="hide"; }\n else\n { show="none"; title=">"; tooltip="show"; }\n }\n\n // parse custom label/tooltip/accesskey: [label=X|tooltip]\n if (lookaheadMatch[6]) {\n title = lookaheadMatch[6].trim().slice(1,-1);\n var pos=title.indexOf("|");\n if (pos!=-1) { tooltip = title.substr(pos+1,title.length); title=title.substr(0,pos); }\n if (title.substr(title.length-2,1)=="=") { key=title.substr(title.length-1,1); title=title.slice(0,-2); }\n if (pos==-1) tooltip += " "+title; // default tooltip: "show/hide <title>"\n }\n\n // create the button\n if (lookaheadMatch[3]) { // use "Hn" header format instead of button/link\n var lvl=(lookaheadMatch[3].length>6)?6:lookaheadMatch[3].length;\n var btn = createTiddlyElement(createTiddlyElement(place,"h"+lvl,null,null,null),"a",null,null,title);\n btn.onclick=onClickNestedSlider;\n btn.setAttribute("href","javascript:;");\n btn.setAttribute("title",tooltip);\n }\n else\n var btn = createTiddlyButton(place,title,tooltip,onClickNestedSlider);\n btn.sliderCookie = cookie; // save the cookiename (if any) in the button object\n btn.keyparam=key; // save the access key letter ("" if none)\n if (key.length) {\n btn.setAttribute("accessKey",key); // init access key\n btn.onfocus=function(){this.setAttribute("accessKey",this.keyparam);}; // **reclaim** access key on focus\n }\n\n // "non-click" MouseOver open/close slider\n if (lookaheadMatch[5]) btn.onmouseover=onClickNestedSlider;\n\n // create slider panel\n var panelClass=lookaheadMatch[4]?"floatingPanel":"sliderPanel";\n var panel=createTiddlyElement(place,"div",null,panelClass,null);\n panel.style.display = show;\n if (lookaheadMatch[4] && lookaheadMatch[4].length>2) panel.style.width=lookaheadMatch[4].slice(1,-1); // custom width\n panel.button = btn; // so the slider panel know which button it belongs to\n btn.sliderPanel=panel;\n\n // render slider (or defer until shown) \n w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;\n if ((show=="block")||!lookaheadMatch[8]) {\n // render now if panel is supposed to be shown or NOT deferred rendering\n w.subWikify(lookaheadMatch[7]?createTiddlyElement(panel,"blockquote"):panel,this.terminator);\n // align slider/floater position with button\n adjustSliderPos(place,btn,panel,panelClass);\n }\n else {\n var src = w.source.substr(w.nextMatch);\n var endpos=findMatchingDelimiter(src,"+++","===");\n panel.setAttribute("raw",src.substr(0,endpos));\n panel.setAttribute("blockquote",lookaheadMatch[7]?"true":"false");\n panel.setAttribute("rendered","false");\n w.nextMatch += endpos+3;\n if (w.source.substr(w.nextMatch,1)=="\sn") w.nextMatch++;\n if (config.options.chkDebugLazySliderDefer) alert("deferred '"+title+"':\sn\sn"+panel.getAttribute("raw"));\n }\n }\n }\n }\n)\n\n// TBD: ignore 'quoted' delimiters (e.g., "{{{+++foo===}}}" isn't really a slider)\nfunction findMatchingDelimiter(src,starttext,endtext) {\n var startpos = 0;\n var endpos = src.indexOf(endtext);\n // check for nested delimiters\n while (src.substring(startpos,endpos-1).indexOf(starttext)!=-1) {\n // count number of nested 'starts'\n var startcount=0;\n var temp = src.substring(startpos,endpos-1);\n var pos=temp.indexOf(starttext);\n while (pos!=-1) { startcount++; pos=temp.indexOf(starttext,pos+starttext.length); }\n // set up to check for additional 'starts' after adjusting endpos\n startpos=endpos+endtext.length;\n // find endpos for corresponding number of matching 'ends'\n while (startcount && endpos!=-1) {\n endpos = src.indexOf(endtext,endpos+endtext.length);\n startcount--;\n }\n }\n return (endpos==-1)?src.length:endpos;\n}\n//}}}\n\n//{{{\nwindow.onClickNestedSlider=function(e)\n{\n if (!e) var e = window.event;\n var theTarget = resolveTarget(e);\n var theLabel = theTarget.firstChild.data;\n var theSlider = theTarget.sliderPanel\n var isOpen = theSlider.style.display!="none";\n // if using default button labels, toggle labels\n if (theLabel==">") theTarget.firstChild.data = "<";\n else if (theLabel=="<") theTarget.firstChild.data = ">";\n // if using default tooltips, toggle tooltips\n if (theTarget.getAttribute("title")=="show")\n theTarget.setAttribute("title","hide");\n else if (theTarget.getAttribute("title")=="hide")\n theTarget.setAttribute("title","show");\n if (theTarget.getAttribute("title")=="show "+theLabel)\n theTarget.setAttribute("title","hide "+theLabel);\n else if (theTarget.getAttribute("title")=="hide "+theLabel)\n theTarget.setAttribute("title","show "+theLabel);\n // deferred rendering (if needed)\n if (theSlider.getAttribute("rendered")=="false") {\n if (config.options.chkDebugLazySliderRender)\n alert("rendering '"+theLabel+"':\sn\sn"+theSlider.getAttribute("raw"));\n var place=theSlider;\n if (theSlider.getAttribute("blockquote")=="true")\n place=createTiddlyElement(place,"blockquote");\n wikify(theSlider.getAttribute("raw"),place);\n theSlider.setAttribute("rendered","true");\n }\n // show/hide the slider\n if(config.options.chkAnimate)\n anim.startAnimating(new Slider(theSlider,!isOpen,e.shiftKey || e.altKey,"none"));\n else\n theSlider.style.display = isOpen ? "none" : "block";\n // if showing panel, set focus to first 'focus-able' element in panel\n if (theSlider.style.display!="none") {\n var ctrls=theSlider.getElementsByTagName("*");\n for (var c=0; c<ctrls.length; c++) {\n var t=ctrls[c].tagName.toLowerCase();\n if (t=="input" || t=="textarea" || t=="select")\n { ctrls[c].focus(); break; }\n }\n }\n if (this.sliderCookie && this.sliderCookie.length)\n { config.options[this.sliderCookie]=!isOpen; saveOptionCookie(this.sliderCookie); }\n // align slider/floater position with target button\n adjustSliderPos(theSlider.parentNode,theTarget,theSlider,theSlider.className);\n return false;\n}\n\n// hijack animation handler 'stop' handler so overflow is visible after animation has completed\nSlider.prototype.coreStop = Slider.prototype.stop;\nSlider.prototype.stop = function() { this.coreStop(); this.element.style.overflow = "visible"; }\n\n// adjust panel position based on button position\nif (window.adjustSliderPos==undefined) window.adjustSliderPos=function(place,btn,panel,panelClass) {\n if (panelClass=="floatingPanel") {\n var left=0;\n var top=btn.offsetHeight; \n if (place.style.position!="relative") {\n var left=findPosX(btn);\n var top=findPosY(btn)+btn.offsetHeight;\n var p=place; while (p && p.className!='floatingPanel') p=p.parentNode;\n if (p) { left-=findPosX(p); top-=findPosY(p); }\n }\n if (left+panel.offsetWidth > getWindowWidth()) left=getWindowWidth()-panel.offsetWidth-10;\n panel.style.left=left+"px"; panel.style.top=top+"px";\n }\n}\n\nfunction getWindowWidth() {\n if(document.width!=undefined)\n return document.width; // moz (FF)\n if(document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) )\n return document.documentElement.clientWidth; // IE6\n if(document.body && ( document.body.clientWidth || document.body.clientHeight ) )\n return document.body.clientWidth; // IE4\n if(window.innerWidth!=undefined)\n return window.innerWidth; // IE - general\n return 0; // unknown\n}\n//}}}
>No one is interested in library news even very few librarians are interested in library news, so if you went to your mechanic's website you don't expect to find a list of the latest mechanic news, what you want to know is what will it cost to use the service (and to state the obvious, you are going to use the service that costs the least).\n\n>I came to the library to get some information, not to have a conversation with the librarian or, The user experience in the library\n\n>Kuhlthau (1994) describes a research assignment as one that requires learners to address a matter which demands information beyond a course textbook but which may be found via the investigation of an organized collection of materials
* html .tiddler {height:1%;}\n\nbody {font-size: .85em; font-family:arial,helvetica; margin:0; padding:0;}\n\nh1,h2,h3,h4,h5,h6 {font-weight:bold; text-decoration:none;}\nh1,h2,h3 {padding-bottom:1px; margin-top:1.2em;margin-bottom:0.3em;}\nh4,h5,h6 {margin-top:1em;}\nh1 {font-size:1.35em;}\nh2 {font-size:1.25em;}\nh3 {font-size:1.1em;}\nh4 {font-size:1em;}\nh5 {font-size:.9em;}\n\nhr {height:1px;}\n\na {text-decoration:none;}\n\ndt {font-weight:bold;}\n\nol {list-style-type:decimal;}\nol ol {list-style-type:lower-alpha;}\nol ol ol {list-style-type:lower-roman;}\nol ol ol ol {list-style-type:decimal;}\nol ol ol ol ol {list-style-type:lower-alpha;}\nol ol ol ol ol ol {list-style-type:lower-roman;}\nol ol ol ol ol ol ol {list-style-type:decimal;}\n\n.txtOptionInput {width:11em;}\n\n#contentWrapper .chkOptionInput {border:0;}\n\n.externalLink {text-decoration:underline;}\n\n.indent {margin-left:3em;}\n.outdent {margin-left:3em; text-indent:-3em;}\ncode.escaped {white-space:nowrap;}\n\n.tiddlyLinkExisting {font-weight:bold;}\n.tiddlyLinkNonExisting {font-style:italic;}\n\n/* the 'a' is required for IE, otherwise it renders the whole tiddler in bold */\na.tiddlyLinkNonExisting.shadow {font-weight:bold;}\n\n#mainMenu .tiddlyLinkExisting,\n #mainMenu .tiddlyLinkNonExisting,\n #sidebarTabs .tiddlyLinkNonExisting {font-weight:normal; font-style:normal;}\n#sidebarTabs .tiddlyLinkExisting {font-weight:bold; font-style:normal;}\n\n.header {position:relative;}\n.header a:hover {background:transparent;}\n.headerShadow {position:relative; padding:4.5em 0em 1em 1em; left:-1px; top:-1px;}\n.headerForeground {position:absolute; padding:4.5em 0em 1em 1em; left:0px; top:0px;}\n\n.siteTitle {font-size:3em;}\n.siteSubtitle {font-size:1.2em;}\n\n#mainMenu {position:absolute; left:0; width:10em; text-align:right; line-height:1.6em; padding:1.5em 0.5em 0.5em 0.5em; font-size:1.1em;}\n\n#sidebar {position:absolute; right:3px; width:16em; font-size:.9em;}\n#sidebarOptions {padding-top:0.3em;}\n#sidebarOptions a {margin:0em 0.2em; padding:0.2em 0.3em; display:block;}\n#sidebarOptions input {margin:0.4em 0.5em;}\n#sidebarOptions .sliderPanel {margin-left:1em; padding:0.5em; font-size:.85em;}\n#sidebarOptions .sliderPanel a {font-weight:bold; display:inline; padding:0;}\n#sidebarOptions .sliderPanel input {margin:0 0 .3em 0;}\n#sidebarTabs .tabContents {width:15em; overflow:hidden;}\n\n.wizard {padding:0.1em 1em 0em 2em;}\n.wizard h1 {font-size:2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}\n.wizard h2 {font-size:1.2em; font-weight:bold; background:none; padding:0em 0em 0em 0em; margin:0.4em 0em 0.2em 0em;}\n.wizardStep {padding:1em 1em 1em 1em;}\n.wizard .button {margin:0.5em 0em 0em 0em; font-size:1.2em;}\n.wizardFooter {padding:0.8em 0.4em 0.8em 0em;}\n.wizardFooter .status {padding:0em 0.4em 0em 0.4em; margin-left:1em;}\n.wizard .button {padding:0.1em 0.2em 0.1em 0.2em;}\n\n#messageArea {position:fixed; top:2em; right:0em; margin:0.5em; padding:0.5em; z-index:2000; _position:absolute;}\n.messageToolbar {display:block; text-align:right; padding:0.2em 0.2em 0.2em 0.2em;}\n#messageArea a {text-decoration:underline;}\n\n.tiddlerPopupButton {padding:0.2em 0.2em 0.2em 0.2em;}\n.popupTiddler {position: absolute; z-index:300; padding:1em 1em 1em 1em; margin:0;}\n\n.popup {position:absolute; z-index:300; font-size:.9em; padding:0; list-style:none; margin:0;}\n.popup .popupMessage {padding:0.4em;}\n.popup hr {display:block; height:1px; width:auto; padding:0; margin:0.2em 0em;}\n.popup li.disabled {padding:0.4em;}\n.popup li a {display:block; padding:0.4em; font-weight:normal; cursor:pointer;}\n.listBreak {font-size:1px; line-height:1px;}\n.listBreak div {margin:2px 0;}\n\n.tabset {padding:1em 0em 0em 0.5em;}\n.tab {margin:0em 0em 0em 0.25em; padding:2px;}\n.tabContents {padding:0.5em;}\n.tabContents ul, .tabContents ol {margin:0; padding:0;}\n.txtMainTab .tabContents li {list-style:none;}\n.tabContents li.listLink { margin-left:.75em;}\n\n#contentWrapper {display:block;}\n#splashScreen {display:none;}\n\n#displayArea {margin:1em 17em 0em 14em;}\n\n.toolbar {text-align:right; font-size:.9em;}\n\n.tiddler {padding:1em 1em 0em 1em;}\n\n.missing .viewer,.missing .title {font-style:italic;}\n\n.title {font-size:1.6em; font-weight:bold;}\n\n.missing .subtitle {display:none;}\n.subtitle {font-size:1.1em;}\n\n.tiddler .button {padding:0.2em 0.4em;}\n\n.tagging {margin:0.5em 0.5em 0.5em 0; float:left; display:none;}\n.isTag .tagging {display:block;}\n.tagged {margin:0.5em; float:right;}\n.tagging, .tagged {font-size:0.9em; padding:0.25em;}\n.tagging ul, .tagged ul {list-style:none; margin:0.25em; padding:0;}\n.tagClear {clear:both;}\n\n.footer {font-size:.9em;}\n.footer li {display:inline;}\n\n.annotation {padding:0.5em; margin:0.5em;}\n\n* html .viewer pre {width:99%; padding:0 0 1em 0;}\n.viewer {line-height:1.4em; padding-top:0.5em;}\n.viewer .button {margin:0em 0.25em; padding:0em 0.25em;}\n.viewer blockquote {line-height:1.5em; padding-left:0.8em;margin-left:2.5em;}\n.viewer ul, .viewer ol {margin-left:0.5em; padding-left:1.5em;}\n\n.viewer table, table.twtable {border-collapse:collapse; margin:0.8em 1.0em;}\n.viewer th, .viewer td, .viewer tr,.viewer caption,.twtable th, .twtable td, .twtable tr,.twtable caption {padding:3px;}\ntable.listView {font-size:0.85em; margin:0.8em 1.0em;}\ntable.listView th, table.listView td, table.listView tr {padding:0px 3px 0px 3px;}\n\n.viewer pre {padding:0.5em; margin-left:0.5em; font-size:1.2em; line-height:1.4em; overflow:auto;}\n.viewer code {font-size:1.2em; line-height:1.4em;}\n\n.editor {font-size:1.1em;}\n.editor input, .editor textarea {display:block; width:100%; font:inherit;}\n.editorFooter {padding:0.25em 0em; font-size:.9em;}\n.editorFooter .button {padding-top:0px; padding-bottom:0px;}\n\n.fieldsetFix {border:0; padding:0; margin:1px 0px 1px 0px;}\n\n.sparkline {line-height:1em;}\n.sparktick {outline:0;}\n\n.zoomer {font-size:1.1em; position:absolute; overflow:hidden;}\n.zoomer div {padding:1em;}\n\n* html #backstage {width:99%;}\n* html #backstageArea {width:99%;}\n#backstageArea {display:none; position:relative; overflow: hidden; z-index:150; padding:0.3em 0.5em 0.3em 0.5em;}\n#backstageToolbar {position:relative;}\n#backstageArea a {font-weight:bold; margin-left:0.5em; padding:0.3em 0.5em 0.3em 0.5em;}\n#backstageButton {display:none; position:absolute; z-index:175; top:0em; right:0em;}\n#backstageButton a {padding:0.1em 0.4em 0.1em 0.4em; margin:0.1em 0.1em 0.1em 0.1em;}\n#backstage {position:relative; width:100%; z-index:50;}\n#backstagePanel {display:none; z-index:100; position:absolute; margin:0em 3em 0em 3em; padding:1em 1em 1em 1em;}\n.backstagePanelFooter {padding-top:0.2em; float:right;}\n.backstagePanelFooter a {padding:0.2em 0.4em 0.2em 0.4em;}\n#backstageCloak {display:none; z-index:20; position:absolute; width:100%; height:100px;}\n\n.whenBackstage {display:none;}\n.backstageVisible .whenBackstage {display:block;}
[[Mail list where Niklas talks about "grit"|http://lists.w3.org/Archives/Public/public-lod/2010Jan/0058.html]]
* Solution Shops - Employ experienced intuitively trained experts whose job is to diagnose problems and recommend solutions. High-end consulting, law, advertising firms, R&D organizations, and specialist physicians' diagnostic activities in hospitals are examples. The firms abilities to deliver value to customers are dependent on the people who work there; standardized processes are uncommon in solution shops.\n\n* Value Chains - Manufacturing, retailing, and food service companies are examples. These companies bring inputs of materials into one end of their premises, transform them by adding value, and deliver higher-value products to their customers at the other end. The ability to deliver value is embedded in strong, standardized processes.\n\n* Facilitated User Networks - Telecommunications, Insurance, and Banking are facilitated user networks. Participation in the network typically isn't the primary profit engine for participants. Rather, the network is a supporting infrastructure that helps the buyers and sellers make money elsewhere. The company that makes money in a user network is the one that facilitates the network.\n\n<<<\nBusiness model innovation\n\nA business model describes how an organization creates, delivers, and captures value. Most business model definitions highlight four key elements:\n\n Customer value proposition, which explains how an organization will address a customer need\n Value chain, which organizes processes, partners, and resources to deliver the value proposition\n Profit formula, which lays out how an organization will make money\n Competitive strategy, which describes how an organization will compete with rivals and defend its position in the value network.\n<<<\n\n<<<\nOsterwalder and Pigneur call "unbundled" business models. Unbundled models separate three core business functions that require different types of organizational expertise: \n* customer-relationship management, \n* product innovation, and \n* infrastructure management.\n\nhttp://www.americanprogress.org/issues/higher-education/report/2012/03/28/11250/rethinking-higher-education-business-models/\n<<<
http://sites.google.com/site/urd2comparison/home
!!! Learning Links\nhttp://think-like-a-git.net\n\n
> dozens of e-learning technologies (for example, electronic books, simulations, text messaging, podcasting, wikis, blogs),\n\n>Electronic Portfolios (ePortfolios)\nElectronic Performance Support System (EPSS)\nPersonal digital assistants (PDAs)\nMP3 Players\nCD-ROM\nWeb sites\nWeb 2.0 tools\nDiscussion and bulletin boards\nCollaborative software\ne-mail\nBlogs\nWiki\nChats\nComputer aided testing and assessment\nEducational animation, simulation, and games\nLearning Management Systems (LMS)\nPodcasts\n\nhttp://chronicle.com/article/Professors-Use-of/123682/\n\nMight need to read this: http://www.educause.edu/EDUCAUSE+Quarterly/EDUCAUSEQuarterlyMagazineVolum/TheFutureofOnlineTeachingandLe/157426\n\n>residential courses with Web enhancements (Is this spin?)
Explore, Express, Exchange is like Discover, Gather, Create, Share\n\nGood graphic from Eric Duval\n\n[img[filestore/uploads/learning/knowing-Eric-Duval.png]]
This is old but still a good reference\n\n[img[/filestore/uploads/computing/LSAL-CMU-learning-services.stack.gif]]
[img[/filestore/uploads/information/Information-problems.png]]\n[img[/filestore/uploads/information/mental-models.png]]\n[img[/filestore/uploads/information/diagrams.png]]\n\n\n!!!Tools of IA\n* Ontological clarifiers\n* Taxonomic structures\n* Diagraming techniques\n* User research\n* Market research\n* Organizational research\n* Heuristic evaluations\n\n!!! Connection to and Collection of Information\n\n\nfrom [[Abby the IA|http://abbytheia.com/]]
/***\n|''Name:''|~TaggerPlugin|\n|''Version:''|1.0.1 (2006-06-01)|\n|''Source:''|http://tw.lewcid.org//#TaggerPlugin|\n|''Author:''|SaqImtiaz|\n|''Description:''|Provides a drop down listing current tiddler tags, and allowing toggling of tags.|\n|''Documentation:''|[[TaggerPluginDocumentation]]|\n|''Source Code:''|[[TaggerPluginSource]]|\n|''~TiddlyWiki:''|Version 2.0.8 or better|\n***/\n// /%\nconfig.tagger={defaults:{label:"Tags: ",tooltip:"Manage tiddler tags",taglist:"true",excludeTags:"",notags:"tiddler has no tags",aretags:"current tiddler tags:",toggletext:"add tags:"}};config.macros.tagger={};config.macros.tagger.arrow=(document.all?"â–Œ":"▪");config.macros.tagger.handler=function(_1,_2,_3,_4,_5,_6){var _7=config.tagger.defaults;var _8=_5.parseParams("tagman",null,true);var _9=((_8[0].label)&&(_8[0].label[0])!=".")?_8[0].label[0]+this.arrow:_7.label+this.arrow;var _a=((_8[0].tooltip)&&(_8[0].tooltip[0])!=".")?_8[0].tooltip[0]:_7.tooltip;var _b=((_8[0].taglist)&&(_8[0].taglist[0])!=".")?_8[0].taglist[0]:_7.taglist;var _c=((_8[0].exclude)&&(_8[0].exclude[0])!=".")?(_8[0].exclude[0]).readBracketedList():_7.excludeTags.readBracketedList();if((_8[0].source)&&(_8[0].source[0])!="."){var _d=_8[0].source[0];}if(_d&&!store.getTiddler(_d)){return false;}var _e=function(e){if(!e){var e=window.event;}var _11=Popup.create(this);var _12=store.getTags();var _13=new Array();for(var i=0;i<_12.length;i++){_13.push(_12[i][0]);}if(_d){var _15=store.getTiddler(_d);_13=_15.tags.sort();}var _16=_6.tags.sort();var _17=function(_18,_19,_1a){var sp=createTiddlyElement(createTiddlyElement(_11,"li"),"span",null,"tagger");var _1c=createTiddlyButton(sp,_18,_1a+" '"+_19+"'",taggerOnToggle,"button","toggleButton");_1c.setAttribute("tiddler",_6.title);_1c.setAttribute("tag",_19);insertSpacer(sp);if(window.createTagButton_orig_mptw){createTagButton_orig_mptw(sp,_19)}else{createTagButton(sp,_19);}};createTiddlyElement(_11,"li",null,"listTitle",(_6.tags.length==0?_7.notags:_7.aretags));for(var t=0;t<_16.length;t++){_17("[x]",_16[t],"remove tag ");}createTiddlyElement(createTiddlyElement(_11,"li"),"hr");if(_b!="false"){createTiddlyElement(_11,"li",null,"listTitle",_7.toggletext);for(var i=0;i<_13.length;i++){if(!_6.tags.contains(_13[i])&&!_c.contains(_13[i])){_17("[ ]",_13[i],"add tag ");}}createTiddlyElement(createTiddlyElement(_11,"li"),"hr");}var _1f=createTiddlyButton(createTiddlyElement(_11,"li"),("Create new tag"),null,taggerOnToggle);_1f.setAttribute("tiddler",_6.title);if(_d){_1f.setAttribute("source",_d);}Popup.show(_11,false);e.cancelBubble=true;if(e.stopPropagation){e.stopPropagation();}return (false);};createTiddlyButton(_1,_9,_a,_e,"button","taggerDrpBtn");};window.taggerOnToggle=function(e){var tag=this.getAttribute("tag");var _22=this.getAttribute("tiddler");var _23=store.getTiddler(_22);if(!tag){var _24=prompt("Enter new tag:","");if(_24!=""&&_24!=null){var tag=_24;if(this.getAttribute("source")){var _26=store.getTiddler(this.getAttribute("source"));_26.tags.pushUnique(_24);}}else{return false;}}if(!_23||!_23.tags){store.saveTiddler(_22,_22,"",config.options.txtUserName,new Date(),tag);}else{if(_23.tags.find(tag)==null){_23.tags.push(tag);}else{if(!_24){_23.tags.splice(_23.tags.find(tag),1);}}store.saveTiddler(_23.title,_23.title,_23.text,_23.modifier,_23.modified,_23.tags);}story.refreshTiddler(_22,null,true);if(config.options.chkAutoSave){saveChanges();}return false;};setStylesheet(".tagger a.button {font-weight: bold;display:inline; padding:0px;}\sn"+".tagger #toggleButton {padding-left:2px; padding-right:2px; margin-right:1px; font-size:110%;}\sn"+"#nestedtagger {background:#2E5ADF; border: 1px solid #0331BF;}\sn"+".popup .listTitle {color:#000;}\sn"+"","TaggerStyles");window.lewcidTiddlerSwapTag=function(_27,_28,_29){for(var i=0;i<_27.tags.length;i++){if(_27.tags[i]==_28){_27.tags[i]=_29;return true;}}return false;};window.lewcidRenameTag=function(e){var tag=this.getAttribute("tag");var _2d=prompt("Rename tag '"+tag+"' to:",tag);if((_2d==tag)||(_2d==null)){return false;}if(store.tiddlerExists(_2d)){if(confirm(config.messages.overwriteWarning.format([_2d.toString()]))){story.closeTiddler(_2d,false,false);}else{return null;}}tagged=store.getTaggedTiddlers(tag);if(tagged.length!=0){for(var j=0;j<tagged.length;j++){lewcidTiddlerSwapTag(tagged[j],tag,_2d);}}if(store.tiddlerExists(tag)){store.saveTiddler(tag,_2d);}if(document.getElementById("tiddler"+tag)){var _2f=document.getElementById(story.idPrefix+tag);var _30=story.positionTiddler(_2f);var _31=document.getElementById(story.container);story.closeTiddler(tag,false,false);story.createTiddler(_31,_30,_2d,null);story.saveTiddler(_2d);}if(config.options.chkAutoSave){saveChanges();}return false;};window.onClickTag=function(e){if(!e){var e=window.event;}var _34=resolveTarget(e);var _35=(!isNested(_34));if((Popup.stack.length>1)&&(_35==true)){Popup.removeFrom(1);}else{if(Popup.stack.length>0&&_35==false){Popup.removeFrom(0);}}var _36=(_35==false)?"popup":"nestedtagger";var _37=createTiddlyElement(document.body,"ol",_36,"popup",null);Popup.stack.push({root:this,popup:_37});var tag=this.getAttribute("tag");var _39=this.getAttribute("tiddler");if(_37&&tag){var _3a=store.getTaggedTiddlers(tag);var _3b=[];var li,r;for(r=0;r<_3a.length;r++){if(_3a[r].title!=_39){_3b.push(_3a[r].title);}}var _3d=config.views.wikified.tag;if(_3b.length>0){var _3e=createTiddlyButton(createTiddlyElement(_37,"li"),_3d.openAllText.format([tag]),_3d.openAllTooltip,onClickTagOpenAll);_3e.setAttribute("tag",tag);createTiddlyElement(createTiddlyElement(_37,"li"),"hr");for(r=0;r<_3b.length;r++){createTiddlyLink(createTiddlyElement(_37,"li"),_3b[r],true);}}else{createTiddlyText(createTiddlyElement(_37,"li",null,"disabled"),_3d.popupNone.format([tag]));}createTiddlyElement(createTiddlyElement(_37,"li"),"hr");var h=createTiddlyLink(createTiddlyElement(_37,"li"),tag,false);createTiddlyText(h,_3d.openTag.format([tag]));createTiddlyElement(createTiddlyElement(_37,"li"),"hr");var _40=createTiddlyButton(createTiddlyElement(_37,"li"),("Rename tag '"+tag+"'"),null,lewcidRenameTag);_40.setAttribute("tag",tag);}Popup.show(_37,false);e.cancelBubble=true;if(e.stopPropagation){e.stopPropagation();}return (false);};if(!window.isNested){window.isNested=function(e){while(e!=null){var _42=document.getElementById("contentWrapper");if(_42==e){return true;}e=e.parentNode;}return false;};}config.shadowTiddlers.TaggerPluginDocumentation="The documentation is available [[here.|http://tw.lewcid.org/#TaggerPluginDocumentation]]";config.shadowTiddlers.TaggerPluginSource="The uncompressed source code is available [[here.|http://tw.lewcid.org/#TaggerPluginSource]]";\n// %/
http://gslis.simmons.edu/archival/arch/index.html from
!!!Sakai Enterprise Bundle - Worksite Tools\n* Announcements (sakai.announcements)\n* Assignments (sakai.assignment.grades & sakai.assignment)\n* Calendar Summary (sakai.summary.calendar)\n* Chat Room (sakai.chat)\n* Drop Box (sakai.dropbox)\n* E-mail Archive (sakai.mailbox)\n* Forums (sakai.forums)\n* Gradebook (sakai.gradebook.tool)\n* Messages (sakai.messages)\n* News (sakai.news)\n* Post 'Em (sakai.postem)\n* Presentation (sakai.presentation)\n* Resources (sakai.resources)\n* Schedule (sakai.schedule)\n* Section Info (sakai.sections)\n* Site Info (sakai.siteinfo)\n* Syllabus (sakai.syllabus)\n* Tests & Quizzes (sakai.samigo)\n* Web Content (sakai.iframe)\n* Wiki (sakai.rwiki)\n* My Workspace Info Display (sakai.iframe.myworkspace)\n* Recent Announcements (sakai.synoptic.announcement)\n* Recent Chat Messages (sakai.synoptic.chat)\n* Recent Discussion Items (sakai.synoptic.discussion)\n\n!!!Another view of things that have to available in a learning environ. \n\n[img[/filestore/uploads/learning/learning-environ.png]]\n
Andy Powell has posted a [[piece|http://efoundations.typepad.com/efoundations/2009/10/a-couple-of-useful-dublin-core-rdf-usage-patterns.html#comments]] about how simple dublin core has progressed. It not as simple as it was but it is still not all that hard. The question is how to you produce it, using a stripped down model inside and then generating a full blown mode for exchange. You just have to make sure you have all the information there from the start.
{{{\nA couple of days ago I wrote:\n\nIf you were to select a set of RDF ontologies intended to be used in the\nlinked data of archival descriptions, then what ontologies would you\nselect?\n\nAnd in response Ben Companjen <ben.companjen@dans.knaw.nl> wrote the following post, which I think is absolutely wonderful. So wonderful in fact, that I am reposting it with only the tiniest bit of copy editing. I think it is worth a re-read. “Thank you, Ben!”\n\n While I'm no archivist by training (information systems engineer I am),\n I've learned a thing or two from having to work with EAD and its basis\n for use, ISAD(G) (all citations below are from ISAD(G), 2nd edition). [1] As\n with all information modelling, either inside or outside the Linked Data\n domain, you should take a step back to look at the goal of the\n description. When you have a list of what you want to describe, you can\n start looking for ontologies.\n\n You probably know this, but I was triggered by "Because many archival\n descriptions are rooted in MARC records, and MODS is easily mapped from\n MARC." to respond. IMO archival descriptions are rooted in rules for\n description, not a specific file format.\n\n So, when I [see] of (some of) the essences of archival description, I\n think of:\n\n * "The purpose of archival description is to identify and explain\n the context and content of archival material in order to promote\n its accessibility. This is achieved by creating accurate and\n appropriate representations and by organizing them in accordance\n with predetermined models." (§I.2)\n\n * "… seven areas of descriptive information:\n\n 1. Identity Statement Area (where essential information is\n conveyed to identify the unit of description)\n\n 2. Context Area (where information is conveyed about the origin\n and custody of the unit of description)\n\n 3. Content and Structure Area (where information is conveyed\n about the subject matter and arrangement of the unit of\n description)\n\n 4. Condition of Access and Use Area (where information is\n conveyed about the availability of the unit of description)\n\n 5. Allied Materials Area (where information is conveyed about\n materials having an important relationship to the unit of\n description)\n\n 6. Note Area (where specialized information and information that\n cannot be accommodated in any of the other areas may be\n conveyed).\n\n 7. Description Control Area (where information is conveyed on\n how, when and by whom the archival description was prepared)."\n (§I.11)\n\n There is a distinction between the thing being described, and the\n description itself, and both have an important role within the archival\n description. (If anything so far causes confusion with anyone here, I\n misunderstood and accept to be corrected :)) NB: this is one way of\n thinking of descriptions. Incorporating the PROV-ontology would make\n sense for expressing more/other aspects of the provenance of archival\n entities, but I haven't got round to becoming an expert of PROV yet ;)\n\n ISAD(G) lists 26 "elements that may be combined to constitute the\n description of an archival entity".\n\n Trying to translate these 'elements', I'd end up with possible a lot\n more than 26 RDFS/OWL properties.\n\n *Depending on the type of archival entity you can/should of course use\n more specific ontologies.*\n\n Let me list some properties and related ontologies.\n\n * Identity statement area\n\n o Identifiers - The URI, naturally, and other IDs. Could be\n linked using dc(terms):identifier, or mods:identifier, or other\n ontologies. Ideally there is some way of linking the domain of\n the ID to the ID itself, because "box 101" is likely not unique\n in the universe. Perhaps you want to publish a URI strategy\n separately to explain how the URI was assembled/derived.\n\n o Title - Again DC(terms), MODS, RDA\n\n o Date(s) - You want properties that have a clear meaning. For\n example, dcterms:created and mods:dateCreated assume it is clear\n what "when the resource was created" means. DC terms are vague, I\n mean general, on purpose. You could create some properties\n `owl:subPropertyOf` dcterms date properties for this. I'd look\n into EDTF for encoding uncertain dates and ranges and BCE dates\n (MODS doesn't support BCE dates).\n\n o Level of description - What kind of 'documentary unit' does the\n description describe? A whole building's content or one piece of\n paper? I don't know of any ontology with terms "fonds", …,\n "file", "item", but you could say `<http URI> rdf:type <fonds\n class URI>`.\n\n o Extent and medium - Saying anything about extent and medium\n should possible only happen on the lowest level of description.\n Any higher level extent and medium should be calculated by\n aggregating lower level descriptions. On the lowest level, refer\n to class URIs. A combination of dimensions and material\n {c|sh}ould be a class, e.g. A4 paper 80 grams/square meter.\n\n * Context area\n\n o Creator(s) and administrative/biographical history - As ISAD(G)\n refers to ISAAR(CPF) for description of corporate bodies, people,\n and families, this is a perfect example of using existing people-\n and organisation-describing ontologies like FOAF, BIO, ORG, and\n others are useful for separate descriptions of the people and\n organisations involved. You want specific properties to describe\n the roles of these 'agents' in the history of the archival\n entity…\n\n o Archival history and Immediate source of acquisition or\n transfer - … and you would want them 'here' (of course there is\n no particular order in which these properties are used). PREMIS\n and PROV come to mind first for recording who did what to what,\n (where and?) when and with what result. There are probably some\n ontologies describing possible "events" as RDFS/OWL classes, so\n you could link to those. The immediate source of acquisition or\n transfer may be just another event.\n\n * Content and structure area\n\n o Scope and content - Descriptions, keywords, terms from\n authority files about "scope (such as, time periods, geography)\n and content, (such as documentary forms, subject matter,\n administrative processes) … appropriate to the level of\n description.": pretty natural fit for links to SKOS thesauri and\n other ontologies of real-world 'things'. One might think of\n dcterms:subject, dcterms:description, dcterms:temporalCoverage\n etc., but describing *how* exactly such terms relate to the\n archival entity needs more specific properties than "subject" et\n al.\n\n o Appraisal, destruction and scheduling information - Reasons for\n including things and (possibly) removal of archival entities\n should go very well in rules, and some types of rules go very\n well in ontologies. Making this up as I type: <class of letters\n written by the head of state> rdfs:subClassOf <class of 'things\n to be kept'>. The actual selection and destruction actions could\n be modelled in the same way as other actions are described for\n provenance.\n\n o Accruals - Whether more content can be expected probably\n depends on other properties of the archival entity, like its\n type(s) and creator(s). I don't know about specific properties to\n record this, but <class of living heads of state archival\n entities> rdfs:subClassOf <class of 'living' archival entities>?\n There are ways of modelling rules for this, like the Rules\n Interchange Format, but the rules may be defined by the archives\n and archivists.\n\n o System of arrangement - Thinking about this, I tend to think of\n a collection of keywords to describe the arrangement of a\n low-level archival entity like a folder or box: alphabetical, as\n found on deceased's desk. But there is more, of course. Perhaps\n using the Collection Ontology for low levels could help generate\n higher level 'systems of arrangement'.\n\n * Conditions of access and use area\n\n o Conditions governing access and Conditions governing\n reproduction - You can describe rights with the Creative Commons\n Rights Expression Language.\n\n o Language of material - mods:language maybe? Preferably used on\n sub-document level and generated for higher-level descriptions.\n\n o Physical characteristics / technical requirements - Conditions\n should follow from their respective properties: <class of\n PDF/A-1b files> ..:requiresForReading <class of PDF/A-1b readers>\n and rules that say documents in <class A> are embargoed for 20\n years after creation + a creation date can present enough\n information to the agent to determine dcterms:dateAvailable.\n\n o Finding aids - As a non-archivist I had some trouble\n understanding the difference between descriptions and finding\n aids and what the exact use of a finding aid was. Also, having\n grown up with search engines, indexes, I think the concept may\n eventually become extinct. I guess you could use foaf:page to\n link a document-like finding aid to the archival entity and\n rdfs:seeAlso to point to machine-actionable related things.\n\n * Allied materials area\n\n o Existence and location of originals/copies - PROV can be used\n to link a copy to an original (and how the copy was created\n etc.). `<X> prov:wasDerivedFrom <Y>. <Y> :isAt <AnotherArchive>.`\n\n o Related units of description / Publication note - Use\n properties that describe the specific relations among archival\n entities. DC Terms has some useful ones, like for citations.\n Related items can be derived from all or selected properties\n automatically too.\n\n * Notes area\n\n o Notes - dcterms:description? Unlike a document containing rules\n that needs to be finished at some time, Linked Data has no such\n rule. You can always create a property with a well-defined\n meaning to use for specific information.\n\n * Description control area\n\n o Archivist's note / dates of description - Who did what when,\n where, why and how to the description itself. Same as for the\n unit of description itself. This may be a good time to draw a bit\n more attention to the question: *what is a description?* I don't\n have a (/ there is no) final answer, but as The One True Written\n Paper Description from long ago is becoming a set of triples, you\n want to think about it. You could link versions of RDF documents\n using PROV to record this information.\n\n o Rules and conventions - A link to the rules and conventions for\n description. Could also fit with the PROV provenance.\n\n No, this is not a list of ontologies to use/explore right away, but I\n hope you (and others) find it helpful, or perhaps even food for\n discussion. Also, have a look at CIDOC-CRM. [2] It has lots of properties.\n\n [1] ISAD(G) (http://bit.ly/1mmXMmJ) - "This standard provides general\n guidance for the preparation of archival descriptions. It is to be used\n in conjunction with existing national standards or as the basis for the\n development of national standards."\n\n [2] IDOC-CRM (http://www.cidoc-crm.org) - "The CIDOC Conceptual\n Reference Model (CRM) provides definitions and a formal structure for\n describing the implicit and explicit concepts and relationships used in\n cultural heritage documentation.\n\n --\n Ben\n\n\n—\nEric Morgan\n}}}
Ann Abraham (Open University)\nSimon Attfield (UCL Interaction Centre)\nSimon Buckingham Shum (Open University)\nStuart K. Card (PARC)\nJoan DiMicco (IBM)\nTobias Dryks (Franhofer)\nGeorge Furnas (U. Michigan)\nCris Garcia (UFF, Brazil)\nRob Hutton (Klein Associates Division / Applied Research Associates)\nDavid Kirsh (UC San Diego)\nCharlotte Lee (UC Irvine)\nMerrie Morris (Microsoft Research)\nMichael Muller (IBM)\nCharles Naumer (U. Washington)\nSharoda Paul (Penn State U.)\nPeter Pirolli (PARC)\nYan Qu (U. Maryland)\nShy Ravid (Technion)\nDaniel Russell (Google)\nJean Scholtz (PNL)\nAl Selvin (Open University)\nJohn Stasko (Georgia Tech)\nMark Stefik (PARC)\nLeila Takayama (PARC, Stanford)\nGina Venolia (MSR)
/***\n|''Name:''|TiddlyLightBox|\n|''Date:''|Jan 1, 2006|\n|''Version:''|1.0 beta|\n|''Author:''|Saq Imtiaz|\n|''Location:''|http://tw.lewcid.org/#TiddlyLightBoxPlugin|\n|''Documentation:''|http://tw.lewcid.org/#TiddlyLightBoxDocs|\n|''License:''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|\n|''Based on:''|DC3.LightBox<br>Light Box Gone Wild <br>Ibox|\n\n!!Code\n***/\n//{{{\nconfig.macros.imagebox ={};\nconfig.macros.imagebox.handler = function (place,macroName,params,wikifier,paramString,tiddler)\n{\n var e = place.lastChild;\n e.onclick = function(){TiddlyLightBox.initBox('image',this,params[1],params[2],params[0]);return false;};\n}\n\nconfig.macros.divbox ={};\nconfig.macros.divbox.handler = function (place,macroName,params,wikifier,paramString,tiddler)\n{\n if (params[0]!=".")\n createTiddlyButton(place,params[0],params[0],function(){TiddlyLightBox.initBox('html',params[1],params[3],params[4],params[2]);return false;});\n else\n {\n var e = place.lastChild;\n e.onclick = function(){TiddlyLightBox.initBox('html',params[1],params[3],params[4],params[2]);return false;};\n }\n}\n\nconfig.macros.tiddlerbox ={}\nconfig.macros.tiddlerbox.handler = function (place,macroName,params,wikifier,paramString,tiddler)\n{\n config.macros.divbox.handler(place,macroName,[params[0],"tiddler:"+params[1],params[2],params[3],params[4]]);\n return false;\n}\n\nstore.addNotification("TiddlyLightBoxStyles",refreshStyles);\n\nif (!window.TiddlyLightBox)\n window.TiddlyLightBox = {};\n var loadingImage = "indicator.gif";\n window.TiddlyLightBox =\n {\n _curBox: null, // [sentinel]\n\n lightBoxHtml : '<div id="lightBoxOverlay" onclick="TiddlyLightBox.hideBox()" style="display:none"></div><div id="lightboxprogress" style="display:none;"><img src=\s''+loadingImage+'\s' alt=\s'loading\s' style="width:128px;height:128px;"></div><div class="lightBox" id="lightBox" style="display:none"><div id="lightBoxContent"></div><div id="lightBoxTitle">This is a title</div><div id="lightBoxClose"><a href:"#" onclick="TiddlyLightBox.hideBox();return false;">Click to close</a></div></div>',\n\n createBoxWrapper : function()\n {\n var wrapper = createTiddlyElement(document.getElementsByTagName("body")[0],"div","tiddlyLightBoxWrapper");\n wrapper.innerHTML = this.lightBoxHtml;\n },\n\n initBox : function(contentType,url,w,h,text)\n {\n if (this._curBox)\n return;\n this.showProgress();\n this.hideSelects("hidden");\n this.showBg();\n this._curBox = true;\n this.sizeTheBox(contentType,w,h);\n if (contentType == 'image')\n this.showImage(url,text);\n else if (contentType == 'html')\n this.showHtml(url,text);\n return false;\n },\n \n sizeTheBox : function(contentType,w,h)\n {\n var box = document.getElementById("lightBoxContent");\n if (w && isNaN(parseInt(w)))\n {\n addClass(box,w);\n }\n else if (w ||h || contentType == 'html')\n {\n box.style.width = w? w+ "px" : "450px";\n box.style.height = h? h+ "px" : "280px";\n if (contentType=='image')\n setStylesheet("#lightBoxContent img{height:100%;width:100%;}","lightBoxImageSizeHack");\n }\n },\n\n showProgress : function()\n {\n var progress = document.getElementById("lightboxprogress");\n progress.style.display='';\n this._center(progress);\n },\n \n hideProgress: function()\n {\n var progress = document.getElementById("lightboxprogress");\n progress.style.display='none';\n },\n\n //this function lifted from Lightbox Gone Wild\n hideSelects: function(visibility)\n {\n var selects = document.getElementsByTagName('select');\n for(i = 0; i < selects.length; i++)\n {\n selects[i].style.visibility = visibility;\n }\n },\n\n showBg: function()\n {\n var overlay = document.getElementById('lightBoxOverlay');\n if (config.browser.isIE)\n {\n overlay.style.height = Math.max(document.documentElement.scrollHeight,document.documentElement.offsetHeight);\n overlay.style.width = document.documentElement.scrollWidth;\n }\n overlay.style.display = 'block';\n },\n\n showImage: function (url,text)\n {\n imgPreloader = new Image();\n imgPreloader.onload = function ()\n {\n var lb = document.getElementById("lightBoxContent");\n lb.innerHTML = "<img src="+url+">";\n lb.onclick = function(){TiddlyLightBox.hideBox();return false;};\n TiddlyLightBox.posBox(text);\n };\n imgPreloader.src = url;\n },\n \n showHtml : function(theID,text)\n {\n var lb = document.getElementById("lightBoxContent");\n if (theID.indexOf("tiddler:")==-1)\n lb.innerHTML = document.getElementById(theID).innerHTML;\n else\n { \n wikify(store.getTiddlerText(theID.replace("tiddler:","")),lb);\n lb.className='tiddler';\n }\n lb.style.overflow = "auto";\n this.posBox(text);\n },\n\n posBox: function(text)\n {\n this.setTitle(text);\n this.hideProgress();\n var lb = document.getElementById("lightBox");\n lb.style.display = "";\n lb.style.visibilty = "hidden";\n lb.style.position = "absolute";\n this._center(lb);\n if(!TiddlyLightBox._curBox) return;\n lb.style.visibility = "visible";\n lb.style.display = "block";\n },\n\n setTitle: function(text)\n {\n document.getElementById("lightBoxTitle").innerHTML= (text==undefined)? '': text;\n },\n\n _center: function(lb)\n {\n var lbSize = new TiddlyLightBox.getElementSize(lb);\n lb.style.left = (Math.round(findWindowWidth()/2) - (lbSize.width /2) + findScrollX())+'px';\n lb.style.top = (Math.round(findWindowHeight()/2) - (lbSize.height /2) + findScrollY())+'px';\n },\n\n //this function lifted from Ibox\n getElementSize : function(elem)\n {\n this.width = elem.offsetWidth || elem.style.pixelWidth;\n this.height = elem.offsetHeight || elem.style.pixelHeight;\n },\n\n hideBox: function()\n {\n if(!this._curBox)\n return;\n document.getElementById("tiddlyLightBoxWrapper").innerHTML= this.lightBoxHtml;\n setStylesheet("","lightBoxImageSizeHack");\n this._curBox = null;\n return false;\n }\n}\n\nTiddlyLightBox.createBoxWrapper();\n\nStory.prototype.findContainingTiddler = function(e)\n{\n while(e && (!hasClass(e,"tiddler") || !e.getAttribute("tiddler")))\n e = e.parentNode;\n return(e);\n}\n\nconfig.shadowTiddlers.TiddlyLightBoxStyles="/*{{{*/\sn#lightBoxOverlay {\sn position:absolute;\sn top: 0;\sn left: 0;\sn width: 100%;\sn height: 100%;\sn z-index: 90; \sn background-color: #000;\sn -moz-opacity: 0.75;\sn opacity: .75;\sn filter: alpha(opacity=75);\sn}\sn#lightBoxOverlay[id]{ \sn position: fixed;\sn}\sn\sn#lightboxprogress { \sn margin:0;padding:0;\sn position: absolute;\sn z-index:95;\sn}\sn\sndiv.lightBox {\sn background: #fff;\sn color: #fff;\sn border: 4px solid #525252;\snpadding:20px 20px 25px 20px; position:absolute; z-index:99;\sn}\sn\sn#lightBoxClose {text-align:right; color:#000; font-size:1.0em; position:absolute; bottom:6px; right:20px;}\sn#lightBoxClose a{color:#666; border-bottom:1px solid #666;cursor:pointer;}\sn#lightBoxClose a:hover {color:#111; border-bottom:1px solid #666; cursor:pointer; background:transparent;}\sn\sn#lightBoxContent {border:1px solid #525252;color:#000; background:#fff;}\sn#lightBox .tiddler {background:#fff;}\sn\sn#lightBoxContent img {border:0;margin:0;padding:0;display:block;cursor:pointer;}\sn\sn#lightBoxTitle {padding:0px; font-weight:bold; position:absolute; left:20px;bottom:6px; font-size:1.1em; color:#000;}\sn\sn/*}}}*/";\n//}}}
/***\n|Name|SinglePageModePlugin|\n|Source|http://www.TiddlyTools.com/#SinglePageModePlugin|\n|Documentation|http://www.TiddlyTools.com/#SinglePageModePluginInfo|\n|Version|2.9.6|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides|Story.prototype.displayTiddler(), Story.prototype.displayTiddlers()|\n|Options|##Configuration|\n|Description|Show tiddlers one at a time with automatic permalink, or always open tiddlers at top/bottom of page.|\nThis plugin allows you to configure TiddlyWiki to navigate more like a traditional multipage web site with only one tiddler displayed at a time.\n!!!!!Documentation\n>see [[SinglePageModePluginInfo]]\n!!!!!Configuration\n<<<\n<<option chkSinglePageMode>> Display one tiddler at a time\n><<option chkSinglePagePermalink>> Automatically permalink current tiddler\n><<option chkSinglePageKeepFoldedTiddlers>> Don't close tiddlers that are folded\n><<option chkSinglePageKeepEditedTiddlers>> Don't close tiddlers that are being edited\n<<option chkTopOfPageMode>> Open tiddlers at the top of the page\n<<option chkBottomOfPageMode>> Open tiddlers at the bottom of the page\n<<option chkSinglePageAutoScroll>> Automatically scroll tiddler into view (if needed)\n\nNotes:\n* The "display one tiddler at a time" option can also be //temporarily// set/reset by including a 'paramifier' in the document URL: {{{#SPM:true}}} or {{{#SPM:false}}}.\n* If more than one display mode is selected, 'one at a time' display takes precedence over both 'top' and 'bottom' settings, and if 'one at a time' setting is not used, 'top of page' takes precedence over 'bottom of page'.\n* When using Apple's Safari browser, automatically setting the permalink causes an error and is disabled.\n<<<\n!!!!!Revisions\n<<<\n2008.10.17 [2.9.6] changed chkSinglePageAutoScroll default to false\n| Please see [[SinglePageModePluginInfo]] for previous revision details |\n2005.08.15 [1.0.0] Initial Release. Support for BACK/FORWARD buttons adapted from code developed by Clint Checketts.\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.SinglePageModePlugin= {major: 2, minor: 9, revision: 6, date: new Date(2008,10,17)};\n//}}}\n//{{{\nconfig.paramifiers.SPM = { onstart: function(v) {\n config.options.chkSinglePageMode=eval(v);\n if (config.options.chkSinglePageMode && config.options.chkSinglePagePermalink && !config.browser.isSafari) {\n config.lastURL = window.location.hash;\n if (!config.SPMTimer) config.SPMTimer=window.setInterval(function() {checkLastURL();},1000);\n }\n} };\n//}}}\n//{{{\nif (config.options.chkSinglePageMode==undefined)\n config.options.chkSinglePageMode=false;\nif (config.options.chkSinglePagePermalink==undefined)\n config.options.chkSinglePagePermalink=true;\nif (config.options.chkSinglePageKeepFoldedTiddlers==undefined)\n config.options.chkSinglePageKeepFoldedTiddlers=false;\nif (config.options.chkSinglePageKeepEditedTiddlers==undefined)\n config.options.chkSinglePageKeepEditedTiddlers=false;\nif (config.options.chkTopOfPageMode==undefined)\n config.options.chkTopOfPageMode=false;\nif (config.options.chkBottomOfPageMode==undefined)\n config.options.chkBottomOfPageMode=false;\nif (config.options.chkSinglePageAutoScroll==undefined)\n config.options.chkSinglePageAutoScroll=false;\n//}}}\n//{{{\nconfig.SPMTimer = 0;\nconfig.lastURL = window.location.hash;\nfunction checkLastURL()\n{\n if (!config.options.chkSinglePageMode)\n { window.clearInterval(config.SPMTimer); config.SPMTimer=0; return; }\n if (config.lastURL == window.location.hash) return; // no change in hash\n var tids=decodeURIComponent(window.location.hash.substr(1)).readBracketedList();\n if (tids.length==1) // permalink (single tiddler in URL)\n story.displayTiddler(null,tids[0]);\n else { // restore permaview or default view\n config.lastURL = window.location.hash;\n if (!tids.length) tids=store.getTiddlerText("DefaultTiddlers").readBracketedList();\n story.closeAllTiddlers();\n story.displayTiddlers(null,tids);\n }\n}\n\n\nif (Story.prototype.SPM_coreDisplayTiddler==undefined)\n Story.prototype.SPM_coreDisplayTiddler=Story.prototype.displayTiddler;\nStory.prototype.displayTiddler = function(srcElement,tiddler,template,animate,slowly)\n{\n var title=(tiddler instanceof Tiddler)?tiddler.title:tiddler;\n var tiddlerElem=document.getElementById(story.idPrefix+title); // ==null unless tiddler is already displayed\n var opt=config.options;\n var single=opt.chkSinglePageMode && !startingUp;\n var top=opt.chkTopOfPageMode && !startingUp;\n var bottom=opt.chkBottomOfPageMode && !startingUp;\n if (single) {\n story.forEachTiddler(function(tid,elem) {\n // skip current tiddler and, optionally, tiddlers that are folded.\n if ( tid==title\n || (opt.chkSinglePageKeepFoldedTiddlers && elem.getAttribute("folded")=="true"))\n return;\n // if a tiddler is being edited, ask before closing\n if (elem.getAttribute("dirty")=="true") {\n if (opt.chkSinglePageKeepEditedTiddlers) return;\n // if tiddler to be displayed is already shown, then leave active tiddler editor as is\n // (occurs when switching between view and edit modes)\n if (tiddlerElem) return;\n // otherwise, ask for permission\n var msg="'"+tid+"' is currently being edited.\sn\sn";\n msg+="Press OK to save and close this tiddler\snor press Cancel to leave it opened";\n if (!confirm(msg)) return; else story.saveTiddler(tid);\n }\n story.closeTiddler(tid);\n });\n }\n else if (top)\n arguments[0]=null;\n else if (bottom)\n arguments[0]="bottom";\n if (single && opt.chkSinglePagePermalink && !config.browser.isSafari) {\n window.location.hash = encodeURIComponent(String.encodeTiddlyLink(title));\n config.lastURL = window.location.hash;\n document.title = wikifyPlain("SiteTitle") + " - " + title;\n if (!config.SPMTimer) config.SPMTimer=window.setInterval(function() {checkLastURL();},1000);\n }\n if (tiddlerElem && tiddlerElem.getAttribute("dirty")=="true") { // editing... move tiddler without re-rendering\n var isTopTiddler=(tiddlerElem.previousSibling==null);\n if (!isTopTiddler && (single || top))\n tiddlerElem.parentNode.insertBefore(tiddlerElem,tiddlerElem.parentNode.firstChild);\n else if (bottom)\n tiddlerElem.parentNode.insertBefore(tiddlerElem,null);\n else this.SPM_coreDisplayTiddler.apply(this,arguments); // let CORE render tiddler\n } else\n this.SPM_coreDisplayTiddler.apply(this,arguments); // let CORE render tiddler\n var tiddlerElem=document.getElementById(story.idPrefix+title);\n if (tiddlerElem&&opt.chkSinglePageAutoScroll) {\n // scroll to top of page or top of tiddler\n var isTopTiddler=(tiddlerElem.previousSibling==null);\n var yPos=isTopTiddler?0:ensureVisible(tiddlerElem);\n // if animating, defer scroll until after animation completes\n var delay=opt.chkAnimate?config.animDuration+10:0;\n setTimeout("window.scrollTo(0,"+yPos+")",delay); \n }\n}\n\nif (Story.prototype.SPM_coreDisplayTiddlers==undefined)\n Story.prototype.SPM_coreDisplayTiddlers=Story.prototype.displayTiddlers;\nStory.prototype.displayTiddlers = function() {\n // suspend single/top/bottom modes when showing multiple tiddlers\n var opt=config.options;\n var saveSPM=opt.chkSinglePageMode; opt.chkSinglePageMode=false;\n var saveTPM=opt.chkTopOfPageMode; opt.chkTopOfPageMode=false;\n var saveBPM=opt.chkBottomOfPageMode; opt.chkBottomOfPageMode=false;\n this.SPM_coreDisplayTiddlers.apply(this,arguments);\n opt.chkBottomOfPageMode=saveBPM;\n opt.chkTopOfPageMode=saveTPM;\n opt.chkSinglePageMode=saveSPM;\n}\n//}}}
[[User Guide|http://pkp.sfu.ca/ojs/docs/userguide/2.3.3/index.html]]\n[[Technical Reference|http://pkp.sfu.ca/ojs/docs/technicalreference/2.1/index.html]]\n[[API|http://pkp.sfu.ca/ojs/doxygen/current/html/index.html]]\n[[Wiki|http://pkp.sfu.ca/wiki/index.php/Main_Page]]\n
When we talk about //technology// and society what we mean is that digital technology is changing our culture and how we produce knowledge, power structures, etc. Students need to know that.
<<<\nHer prescription begins with, "You can't improve higher education without improving the cost issue" and "we're going to have to figure out how to do a lot more with the same amount [of money]."To accomplish this, we need to focus on Content (what we learn), Socialization (how we learn), and Accreditation (why we learn).\n<<<\n\nAnya Kamenetz,\n\n<<<\nThe Ernst & Young report argues that there are three models that universities might follow to survive to and beyond 2025:\n\n* Stay with the status quo, but significantly streamline their operations;\n* Become a "niche dominator," i.e., stop trying to be all things to all students and focus on one or a few niches where they have a chance of winning greater market share;\n* Become "transformers" in which they redefine what it means to be who they are, create new markets for their products, and outsource much of their operations.\n<<<
Here is a list of the color codes in the ColorPalette, and the sections of this ~TiddlyWiki that they affect. Please note that authors of other ~TiddlyWikis may have configured theirs differently in the StyleSheet. But experimenting with these will give you practice so that you can more easily reconfigure the colors of any ~TiddlyWiki.\n\n\n''Background:'' This controls the color of the background or 'paper', and the text in the title and subtitle.\n\n''Foreground:'' This controls the color of the text.\n\n''~PrimaryPale:'' This controls the color of the Interface Options box.\n\n''~PrimaryLight:'' This controls the color of the top of the Header gradient.\n\n''~PrimaryMid:'' This controls the color of the text in the ~MainMenu, the color of the text for links, the color of the text in the lists of tiddlers and tags, and the color of the bottom of the Header gradient.\n\n''~PrimaryDark:'' This controls the color of the text of the items in the top of the right hand menu and the text of the buttons on the tiddlers.\n\n''~SecondaryPale:'' This controls the color of the background of the boxes in those tiddlers that show snippets of the ~TiddlyWiki code.\n\n''~SecondaryLight:'' This controls the color that appears when the tiddler buttons or items in the right hand menu are highlighted.\n\n''~SecondaryMid:'' This controls the color of the title cells in tables, that is, cells which begin with an exclamation mark (!). It also controls the color of the box that appears when changes have been saved, and the color of the tiddler buttons when they are selected.\n\n''~SecondaryDark:'' This controls the color of the titles of the tiddlers.\n\n''~TertiaryPale:'' This controls the color of the right hand menu that shows lists of tags and tiddlers, as well as the color of the tag button on the tiddlers.\n\n''~TertiaryLight:'' This controls the color of the borders around the right hand menus.\n\n''~TertiaryMid:'' This controls the color of the unselected tabs behind the list of tags and tiddlers in the bottom right hand menu.\n\n''~TertiaryDark:'' This controls the color of the subtitle of each tiddler, that is, the author of the tiddler, the most recent date it was modified and date it was created.\n\n\nhttp://flatuicolors.com/#
http://infrequently.org/2013/11/long-term-web-semantics/\n\nWhat about the //idea// of making progress?
[img[/filestore/uploads/authoring/structured-info.png]]\n\n> have you trade a little hurt during content creation for yet-to-materialize advantages. That's unavoidable, no such thing as a free lunch
[img[/filestore/uploads/learning/21st-Century-Learning.png]]\n[img[/filestore/uploads/learning/Ed-Tech-Quintet.png]]
http://groups.google.com/group/tiddlywiki/browse_thread/thread/67367c6a12750625
!!! Simple ''record'' \n<descMeta>\n<mediaType type="[...]">\n[...]\n<form>[...]</form>\n</mediaType>\n<title type="[...]>[...]</title >\n<covPlace>\n<geogName>[...]</geogName>\n</covPlace>\n<covTime>\n<century>[...]</century>\n</covTime>\n<culture>[...]</culture>\n<description>[...]</description>\n<subject type="[...]>[...]</subject>\n<physDesc>[...]</physDesc>\n<relationships>\n<relation type="[...]">[...]</relation>\n</relationships>\n<repository>\n<corpName>[...]</corpName>\n</repository>\n<rights>[...]</rights>\n</descMeta>
http://www.hawksworx.com/journal/ \n\nGood idea about how to use Jquery plugin
[[from Christina's Rant|http://scientopia.org/blogs/christinaslisrant/2010/05/13/insular-infrastructure-invisible/]]\n\n"Becomes visible upon breakdown" \n\nthe only time you (want) to see a library is when it doesn't work\n\n>If all libraries are good for is contracting for goods, then why not hand this off to the people who order the office supplies or the lab supplies? Surely they have to select among various suppliers -- isn't that the same?
From Peter Norvig http://norvig.com/spell-correct.html\n\nSite is down from Hacker News
<<<\nHowever I think of it this way. A car makes a lousy horse. In hindsight we might say that the automobile was a mistake. Pollution, wars over oil and gas, accidents, drunk driving, the suburbs: there are a lot of reasons to complain about cars. But there's no way we could go back to horse-drawn carriages, not without unmaking our society in fundamental ways (as in some post-apocalyptic sci-fi movie). If we used cars the same way we used horses, then there would be no point in having cars. Or here's another example: calculators. If we only used calculators to perform the same calculations that we used to do with pencil and paper, there wouldn't be much purpose to them. Indeed few people would carry a calculator around them because the need for making calculations in daily life is not worth the bother. Of course computers allow us to make calculations not possible by humans and open new avenues of knowledge and investigation.\n<<<\n[[Alex Ried|http://alex-reid.net/2014/01/drucker-digital-scholarship-and-humanities-research.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+DigitalDigs+%28digital+digs%29]]
<<tagCloud>>
''Saturday 2/28/2009''\n[[Take a look at this website|http://www.bohemiancoding.com/]] This site has some good ideas and a cool look in regard to Web Design. \n\n[[Some ideas for a Omeka site|http://www.learner.org/resources/series13.html]]\n \n\n[[Interface dot com|http://www.interfaceglobal.com/]]\n\n[[Boston University|http://www.bu.edu/]] Simple clean design\n\nhttp://JoshuaBradley.co.uk/\n\nhttp://divitodesign.com/css/960-css-framework-learn-basics/\nBasic typeography and such\n\n!!! Web Colors\n<html>\n<a href='http://www.colorcombos.com/combotester.html?color0=105295&color1=604800&color2=5a5a5a&color3=d2d2d2&color4=008dcd&color5=f0ab00&color6=dddedf&color7=000000&color8=565a5c&color9=ffffff&color10=c8c8c8&color11=f2f2f2&color12=6b6b6b&color13=9f9f9f&color14=c1c1c1&color15=cccccc&color16=afafaf&color17=e1e1e1' title='A web color combinations tool and library for web designers.'>ColorCombos.com Combo</a>\n</html>\n\n!!!CMS-Free website design\nhttp://developmentseed.org/blog/2012/07/27/build-cms-free-websites/f\n\nhttp://getprotean.com/\n\n!!! Flexblock\nhttp://philipwalton.github.io/solved-by-flexbox/demos/grids/
> The brand-new King Abdullah University of Science and Technology, KAUST, received its founding endowment of $10 billion from the King himself. That makes it among the wealthiest handful of universities on the globe, in the company of Harvard, Yale, Stanford and Princeton.
!!! This is the old web 2.0 thing\nAre we doing any thing about this any where in the University? This is the idea behind //a learning commons.//\n\n!!! Class is being passive\nTraditional class is about consumption\nNew learning is about creation
<<<\nLike all big old industries, the media industry is still fighting the obvious, which is the Net and the Web. And they're doing it the way all big old clueless industries do, which is with vendors. "There's a vendor for that," say their brains to themselves. Rather than "How can we work in this new environment that nobody owns, everybody can use and anybody can improve? — and where the opportunities for real innovation are boundless" — they do like the Romney campaign, which (in the words of Ars Technica) "turned to Microsoft and an unnamed application consulting firm." That was a fail, and so will Mark's Mavs move (original tweet) if it's to Tumbler or Myspace (he can't be serious) as the team's "primary site." \n \nBigCos always want BigVends to solve their BigProbs. They also think they're being innovative when they hire a SmallVend or a HotVend. Rather than going native. \n \nThey have my sympathies, because the norms here have huge flywheels, hooked to media engines new and old that are geared primarily for spinning vendor sports stories. That's how the Mark (Cuban) vs. Marc (Zuckerberg) story is playing out, and why Kevin Smith in BusinessInsider, Anna Peel at Valuewalk and Dan Lyons in ReadWrite don't suggest the obvious either. It's not a vendor.\n \nBonus links: Marc Canter, and ReadWrite on Marc's post. \n \n[Later...] Not sayiing vendors are bad, or a wrong choice. Everybody with a business is a vendor of some kind. What I'm talking about is the tendency to outsource a core function, competency or responsibility in a time (now) and a place (the networked world) where the opportunity to expand your company's Net-native competencies are boundless if you don't want to be locked into some vendor's "solution" to a problem that exceeds their scope and won't be the same tomorrow anyway.\n<<<\n[[Doc Searls|http://threads2.scripting.com/2012/november/facebookgate]]
<<<\nI.T. DEPARTMENTS\nOk, so this is another trick answer. More subtly put: IT Departments as we currently know them. Cloud computing and a decade's worth of increased wifi and satellite access will make some of the traditional roles of IT - software, security, and connectivity - a thing of the past. What will IT professionals do with all their free time? Innovate. Look to tech departments to instigate real change in the function of schools over the next twenty years.\n<<<\n\n[[source|http://teachpaperless.blogspot.com/2009/12/21-things-that-will-become-obsolete-in.html]]
<<<\nOntology = a model for describing the world that consists of a set of types, properties, and relationship types. Ontologies in computer science came out of artificial intelligence, and have generally been closely associated with logical inferencing and similar techniques, but have recently begun to be applied to information retrieval.\n\nTopic maps = a subject-based classification technique. Topic maps are organized around topics, and each topic is used to represent some real-world thing. In topic maps, three constructs are provided for describing the subjects represented by the topics: names, occurrences, and associations.\n<<<
!!!About\nThis is about the kind of basic ontologies that we need to know. The below is an iframe from the W3C\n<html>\n<iframe src="http://www.w3.org/2011/rdfa-context/rdfa-1.1" width="100%" height="600ex"/>\n</html>
<html>\n<a href="http://www.knewton.com/digital-education/" ><img class="colorbox-20383" src="http://knewton.marketing.s3.amazonaws.com/images/infographics/state-of-digital-education.jpg" alt="The State of Digital Education" title="The State of Digital Education" width="600" height="2831" /></a>\n<p>Created by <a href="http://www.knewton.com/" >Knewton</a> and <a href="http://columnfivemedia.com/" onclick="javascript:_gaq.push(['_trackEvent','outbound-article','http://columnfivemedia.com/']);">Column Five Media</a></p>\n<p>\n</html>
{{{\n$ ssh -D1080 -oControlMaster=no symkat@symkat.com\nsymkat@symkat:~$\nNow there is a proxy running on 127.0.0.1:1080 that can be used in a web browser or email client. Any application that supports SOCKS 4 or 5 proxies can use 127.0.0.1:1080 to tunnel its traffic.\n}}}\n\nThere are more at http://www.symkat.com/ssh-tips-and-tricks-you-need
!!!What does it take to move to competencies?\n* [[Good question and answer from Matt Reed|http://www.insidehighered.com/blogs/confessions-community-college-dean/ask-administrator-doesn%E2%80%99t-time-matter-itself]]
These are the things that these systems provide. Will they make a difference?\n\n!!! Selection\n* acquisitions and demand driven acquisitions (DDA)) \n\n!!! Print Management \n* circulation, \n* reserves, \n* ILL, etc.) \n\n!!! Electronic Management \n* licensing, tracking, etc. \n\n!!! Digital Asset Management \n* IR functions \n\n!!! Metadata Management \n* cataloging, collaborative metadata management) \n\n!!! Link Resolution \n* OpenURL\n
[[from Black Plastic Glasses|http://www.blackplasticglasses.com/2010/03/23/digital-reading/#more-445]]\n\n<<<\n Digital learning is not pedagogic reading, but rather pedagogic reading is only part of what digital learning can offer. Digital learning can provide continuous assessment, remediation, advanced learning tools, integrated reference and multimedia.\n\n For example, imagine a digital algebra textbook that opens with an adaptive assessment tool that determines how much prior knowledge and skills a student brings to the work. If the student is weak in certain areas, remediation can be delivered before the algebra work is started. If she is highly proficient, she could be delivered a sped up curriculum allowing her to get ahead and advance more quickly.\n\nIn this way digital learning opens up huge and fundamental challenges to the entire learning establishment -- from the schools through the textbook publishers. Current systems of classroom management are mightily challenged by 2 or 3 sets of student paces -- imagine all 50 students in a classroom progressing at their own pace. And where our methods of teaching are challenged so too is the publishing world. No textbook publisher can drop its enormous investment in legacy print programs and invest the ungodly amounts it would take to build systems and platforms to deliver true digital learning.\n\n So the fate of pedagogic reading rests not so much on the success of devices or platforms that students will buy into, but more in the ability of the educational ecosphere to adapt the systems of teaching and textbooks to the potential that digital learning holds. This isn't to say there won't be successful endeavors taking linear textbook content and adapting them to digital -- there will be plenty of success for platforms and products such as the iPad and the eDGe. However, their level of success will be limited to the commercial viability of digital pedagogic reading -- not the true potential that digital learning holds.\n<<<\n\n!!! Types of digital reading\n* Extractive Reading (most common)\n* Immersive\n* Pedagogic\n
/***\n|''Name:''|DataTiddlerPlugin|\n|''Version:''|1.0.6 (2006-08-26)|\n|''Source:''|http://tiddlywiki.abego-software.de/#DataTiddlerPlugin|\n|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|\n|''Licence:''|[[BSD open source license]]|\n|''TiddlyWiki:''|1.2.38+, 2.0|\n|''Browser:''|Firefox 1.0.4+; InternetExplorer 6.0|\n!Description\nEnhance your tiddlers with structured data (such as strings, booleans, numbers, or even arrays and compound objects) that can be easily accessed and modified through named fields (in JavaScript code).\n\nSuch tiddler data can be used in various applications. E.g. you may create tables that collect data from various tiddlers. \n\n''//Example: "Table with all December Expenses"//''\n{{{\n<<forEachTiddler\n where\n 'tiddler.tags.contains("expense") && tiddler.data("month") == "Dec"'\n write\n '"|[["+tiddler.title+"]]|"+tiddler.data("descr")+"| "+tiddler.data("amount")+"|\sn"'\n>>\n}}}\n//(This assumes that expenses are stored in tiddlers tagged with "expense".)//\n<<forEachTiddler\n where\n 'tiddler.tags.contains("expense") && tiddler.data("month") == "Dec"'\n write\n '"|[["+tiddler.title+"]]|"+tiddler.data("descr")+"| "+tiddler.data("amount")+"|\sn"'\n>>\nFor other examples see DataTiddlerExamples.\n\n\n\n\n''Access and Modify Tiddler Data''\n\nYou can "attach" data to every tiddler by assigning a JavaScript value (such as a string, boolean, number, or even arrays and compound objects) to named fields. \n\nThese values can be accessed and modified through the following Tiddler methods:\n|!Method|!Example|!Description|\n|{{{data(field)}}}|{{{t.data("age")}}}|Returns the value of the given data field of the tiddler. When no such field is defined or its value is undefined {{{undefined}}} is returned.|\n|{{{data(field,defaultValue)}}}|{{{t.data("isVIP",false)}}}|Returns the value of the given data field of the tiddler. When no such field is defined or its value is undefined the defaultValue is returned.|\n|{{{data()}}}|{{{t.data()}}}|Returns the data object of the tiddler, with a property for every field. The properties of the returned data object may only be read and not be modified. To modify the data use DataTiddler.setData(...) or the corresponding Tiddler method.|\n|{{{setData(field,value)}}}|{{{t.setData("age",42)}}}|Sets the value of the given data field of the tiddler to the value. When the value is {{{undefined}}} the field is removed.|\n|{{{setData(field,value,defaultValue)}}}|{{{t.setData("isVIP",flag,false)}}}|Sets the value of the given data field of the tiddler to the value. When the value is equal to the defaultValue no value is set (and the field is removed).|\n\nAlternatively you may use the following functions to access and modify the data. In this case the tiddler argument is either a tiddler or the name of a tiddler.\n|!Method|!Description|\n|{{{DataTiddler.getData(tiddler,field)}}}|Returns the value of the given data field of the tiddler. When no such field is defined or its value is undefined {{{undefined}}} is returned.|\n|{{{DataTiddler.getData(tiddler,field,defaultValue)}}}|Returns the value of the given data field of the tiddler. When no such field is defined or its value is undefined the defaultValue is returned.|\n|{{{DataTiddler.getDataObject(tiddler)}}}|Returns the data object of the tiddler, with a property for every field. The properties of the returned data object may only be read and not be modified. To modify the data use DataTiddler.setData(...) or the corresponding Tiddler method.|\n|{{{DataTiddler.setData(tiddler,field,value)}}}|Sets the value of the given data field of the tiddler to the value. When the value is {{{undefined}}} the field is removed.|\n|{{{DataTiddler.setData(tiddler,field,value,defaultValue)}}}|Sets the value of the given data field of the tiddler to the value. When the value is equal to the defaultValue no value is set (and the field is removed).|\n//(For details on the various functions see the detailed comments in the source code.)//\n\n\n''Data Representation in a Tiddler''\n\nThe data of a tiddler is stored as plain text in the tiddler's content/text, inside a "data" section that is framed by a {{{<data>...</data>}}} block. Inside the data section the information is stored in the [[JSON format|http://www.crockford.com/JSON/index.html]]. \n\n//''Data Section Example:''//\n{{{\n<data>{"isVIP":true,"user":"John Brown","age":34}</data>\n}}}\n\nThe data section is not displayed when viewing the tiddler (see also "The showData Macro").\n\nBeside the data section a tiddler may have all kind of other content.\n\nTypically you will not access the data section text directly but use the methods given above. Nevertheless you may retrieve the text of the data section's content through the {{{DataTiddler.getDataText(tiddler)}}} function.\n\n\n''Saving Changes''\n\nThe "setData" methods respect the "ForceMinorUpdate" and "AutoSave" configuration values. I.e. when "ForceMinorUpdate" is true changing a value using setData will not affect the "modifier" and "modified" attributes. With "AutoSave" set to true every setData will directly save the changes after a setData.\n\n\n''Notifications''\n\nNo notifications are sent when a tiddler's data value is changed through the "setData" methods. \n\n''Escape Data Section''\nIn case that you want to use the text {{{<data>}}} or {{{</data>}}} in a tiddler text you must prefix the text with a tilde ('~'). Otherwise it may be wrongly considered as the data section. The tiddler text {{{~<data>}}} is displayed as {{{<data>}}}.\n\n\n''The showData Macro''\n\nBy default the data of a tiddler (that is stored in the {{{<data>...</data>}}} section of the tiddler) is not displayed. If you want to display this data you may used the {{{<<showData ...>>}}} macro:\n\n''Syntax:'' \n|>|{{{<<}}}''showData '' [''JSON''] [//tiddlerName//] {{{>>}}}|\n|''JSON''|By default the data is rendered as a table with a "Name" and "Value" column. When defining ''JSON'' the data is rendered in JSON format|\n|//tiddlerName//|Defines the tiddler holding the data to be displayed. When no tiddler is given the tiddler containing the showData macro is used. When the tiddler name contains spaces you must quote the name (or use the {{{[[...]]}}} syntax.)|\n|>|~~Syntax formatting: Keywords in ''bold'', optional parts in [...]. 'or' means that exactly one of the two alternatives must exist.~~|\n\n\n!Revision history\n* v1.0.6 (2006-08-26) \n** Removed misleading comment\n* v1.0.5 (2006-02-27) (Internal Release Only)\n** Internal\n*** Make "JSLint" conform\n* v1.0.4 (2006-02-05)\n** Bugfix: showData fails in TiddlyWiki 2.0\n* v1.0.3 (2006-01-06)\n** Support TiddlyWiki 2.0\n* v1.0.2 (2005-12-22)\n** Enhancements:\n*** Handle texts "<data>" or "</data>" more robust when used in a tiddler text or as a field value.\n*** Improved (JSON) error messages.\n** Bugs fixed: \n*** References are not updated when using the DataTiddler.\n*** Changes to compound objects are not always saved.\n*** "~</data>" is not rendered correctly (expected "</data>")\n* v1.0.1 (2005-12-13)\n** Features: \n*** The showData macro supports an optional "tiddlername" argument to specify the tiddler containing the data to be displayed\n** Bugs fixed: \n*** A script immediately following a data section is deleted when the data is changed. (Thanks to GeoffS for reporting.)\n* v1.0.0 (2005-12-12)\n** initial version\n\n!Code\n***/\n//{{{\n//============================================================================\n//============================================================================\n// DataTiddlerPlugin\n//============================================================================\n//============================================================================\n\n// Ensure that the DataTiddler Plugin is only installed once.\n//\nif (!version.extensions.DataTiddlerPlugin) {\n\n\n\nversion.extensions.DataTiddlerPlugin = {\n major: 1, minor: 0, revision: 6,\n date: new Date(2006, 7, 26), \n type: 'plugin',\n source: "http://tiddlywiki.abego-software.de/#DataTiddlerPlugin"\n};\n\n// For backward compatibility with v1.2.x\n//\nif (!window.story) window.story=window; \nif (!TiddlyWiki.prototype.getTiddler) {\n TiddlyWiki.prototype.getTiddler = function(title) { \n var t = this.tiddlers[title]; \n return (t !== undefined && t instanceof Tiddler) ? t : null; \n };\n}\n\n//============================================================================\n// DataTiddler Class\n//============================================================================\n\n// ---------------------------------------------------------------------------\n// Configurations and constants \n// ---------------------------------------------------------------------------\n\nfunction DataTiddler() {\n}\n\nDataTiddler = {\n // Function to stringify a JavaScript value, producing the text for the data section content.\n // (Must match the implementation of DataTiddler.parse.)\n //\n stringify : null,\n \n\n // Function to parse the text for the data section content, producing a JavaScript value.\n // (Must match the implementation of DataTiddler.stringify.)\n //\n parse : null\n};\n\n// Ensure access for IE\nwindow.DataTiddler = DataTiddler;\n\n// ---------------------------------------------------------------------------\n// Data Accessor and Mutator\n// ---------------------------------------------------------------------------\n\n\n// Returns the value of the given data field of the tiddler.\n// When no such field is defined or its value is undefined\n// the defaultValue is returned.\n// \n// @param tiddler either a tiddler name or a tiddler\n//\nDataTiddler.getData = function(tiddler, field, defaultValue) {\n var t = (typeof tiddler == "string") ? store.getTiddler(tiddler) : tiddler;\n if (!(t instanceof Tiddler)) {\n throw "Tiddler expected. Got "+tiddler;\n }\n\n return DataTiddler.getTiddlerDataValue(t, field, defaultValue);\n};\n\n\n// Sets the value of the given data field of the tiddler to\n// the value. When the value is equal to the defaultValue\n// no value is set (and the field is removed)\n//\n// Changing data of a tiddler will not trigger notifications.\n// \n// @param tiddler either a tiddler name or a tiddler\n//\nDataTiddler.setData = function(tiddler, field, value, defaultValue) {\n var t = (typeof tiddler == "string") ? store.getTiddler(tiddler) : tiddler;\n if (!(t instanceof Tiddler)) {\n throw "Tiddler expected. Got "+tiddler+ "("+t+")";\n }\n\n DataTiddler.setTiddlerDataValue(t, field, value, defaultValue);\n};\n\n\n// Returns the data object of the tiddler, with a property for every field.\n//\n// The properties of the returned data object may only be read and\n// not be modified. To modify the data use DataTiddler.setData(...) \n// or the corresponding Tiddler method.\n//\n// If no data section is defined a new (empty) object is returned.\n//\n// @param tiddler either a tiddler name or a Tiddler\n//\nDataTiddler.getDataObject = function(tiddler) {\n var t = (typeof tiddler == "string") ? store.getTiddler(tiddler) : tiddler;\n if (!(t instanceof Tiddler)) {\n throw "Tiddler expected. Got "+tiddler;\n }\n\n return DataTiddler.getTiddlerDataObject(t);\n};\n\n// Returns the text of the content of the data section of the tiddler.\n//\n// When no data section is defined for the tiddler null is returned \n//\n// @param tiddler either a tiddler name or a Tiddler\n// @return [may be null]\n//\nDataTiddler.getDataText = function(tiddler) {\n var t = (typeof tiddler == "string") ? store.getTiddler(tiddler) : tiddler;\n if (!(t instanceof Tiddler)) {\n throw "Tiddler expected. Got "+tiddler;\n }\n\n return DataTiddler.readDataSectionText(t);\n};\n\n\n// ---------------------------------------------------------------------------\n// Internal helper methods (must not be used by code from outside this plugin)\n// ---------------------------------------------------------------------------\n\n// Internal.\n//\n// The original JSONError is not very user friendly, \n// especially it does not define a toString() method\n// Therefore we extend it here.\n//\nDataTiddler.extendJSONError = function(ex) {\n if (ex.name == 'JSONError') {\n ex.toString = function() {\n return ex.name + ": "+ex.message+" ("+ex.text+")";\n };\n }\n return ex;\n};\n\n// Internal.\n//\n// @param t a Tiddler\n//\nDataTiddler.getTiddlerDataObject = function(t) {\n if (t.dataObject === undefined) {\n var data = DataTiddler.readData(t);\n t.dataObject = (data) ? data : {};\n }\n \n return t.dataObject;\n};\n\n\n// Internal.\n//\n// @param tiddler a Tiddler\n//\nDataTiddler.getTiddlerDataValue = function(tiddler, field, defaultValue) {\n var value = DataTiddler.getTiddlerDataObject(tiddler)[field];\n return (value === undefined) ? defaultValue : value;\n};\n\n\n// Internal.\n//\n// @param tiddler a Tiddler\n//\nDataTiddler.setTiddlerDataValue = function(tiddler, field, value, defaultValue) {\n var data = DataTiddler.getTiddlerDataObject(tiddler);\n var oldValue = data[field];\n \n if (value == defaultValue) {\n if (oldValue !== undefined) {\n delete data[field];\n DataTiddler.save(tiddler);\n }\n return;\n }\n data[field] = value;\n DataTiddler.save(tiddler);\n};\n\n// Internal.\n//\n// Reads the data section from the tiddler's content and returns its text\n// (as a String).\n//\n// Returns null when no data is defined.\n//\n// @param tiddler a Tiddler\n// @return [may be null]\n//\nDataTiddler.readDataSectionText = function(tiddler) {\n var matches = DataTiddler.getDataTiddlerMatches(tiddler);\n if (matches === null || !matches[2]) {\n return null;\n }\n return matches[2];\n};\n\n// Internal.\n//\n// Reads the data section from the tiddler's content and returns it\n// (as an internalized object).\n//\n// Returns null when no data is defined.\n//\n// @param tiddler a Tiddler\n// @return [may be null]\n//\nDataTiddler.readData = function(tiddler) {\n var text = DataTiddler.readDataSectionText(tiddler);\n try {\n return text ? DataTiddler.parse(text) : null;\n } catch(ex) {\n throw DataTiddler.extendJSONError(ex);\n }\n};\n\n// Internal.\n// \n// Returns the serialized text of the data of the given tiddler, as it\n// should be stored in the data section.\n//\n// @param tiddler a Tiddler\n//\nDataTiddler.getDataTextOfTiddler = function(tiddler) {\n var data = DataTiddler.getTiddlerDataObject(tiddler);\n return DataTiddler.stringify(data);\n};\n\n\n// Internal.\n// \nDataTiddler.indexOfNonEscapedText = function(s, subString, startIndex) {\n var index = s.indexOf(subString, startIndex);\n while ((index > 0) && (s[index-1] == '~')) { \n index = s.indexOf(subString, index+1);\n }\n return index;\n};\n\n// Internal.\n//\nDataTiddler.getDataSectionInfo = function(text) {\n // Special care must be taken to handle "<data>" and "</data>" texts inside\n // a data section. \n // Also take care not to use an escaped <data> (i.e. "~<data>") as the start \n // of a data section. (Same for </data>)\n\n // NOTE: we are explicitly searching for a data section that contains a JSON\n // string, i.e. framed with braces. This way we are little bit more robust in\n // case the tiddler contains unescaped texts "<data>" or "</data>". This must\n // be changed when using a different stringifier.\n\n var startTagText = "<data>{";\n var endTagText = "}</data>";\n\n var startPos = 0;\n\n // Find the first not escaped "<data>".\n var startDataTagIndex = DataTiddler.indexOfNonEscapedText(text, startTagText, 0);\n if (startDataTagIndex < 0) {\n return null;\n }\n\n // Find the *last* not escaped "</data>".\n var endDataTagIndex = text.indexOf(endTagText, startDataTagIndex);\n if (endDataTagIndex < 0) {\n return null;\n }\n var nextEndDataTagIndex;\n while ((nextEndDataTagIndex = text.indexOf(endTagText, endDataTagIndex+1)) >= 0) {\n endDataTagIndex = nextEndDataTagIndex;\n }\n\n return {\n prefixEnd: startDataTagIndex, \n dataStart: startDataTagIndex+(startTagText.length)-1, \n dataEnd: endDataTagIndex, \n suffixStart: endDataTagIndex+(endTagText.length)\n };\n};\n\n// Internal.\n// \n// Returns the "matches" of a content of a DataTiddler on the\n// "data" regular expression. Return null when no data is defined\n// in the tiddler content.\n//\n// Group 1: text before data section (prefix)\n// Group 2: content of data section\n// Group 3: text behind data section (suffix)\n//\n// @param tiddler a Tiddler\n// @return [may be null] null when the tiddler contains no data section, otherwise see above.\n//\nDataTiddler.getDataTiddlerMatches = function(tiddler) {\n var text = tiddler.text;\n var info = DataTiddler.getDataSectionInfo(text);\n if (!info) {\n return null;\n }\n\n var prefix = text.substr(0,info.prefixEnd);\n var data = text.substr(info.dataStart, info.dataEnd-info.dataStart+1);\n var suffix = text.substr(info.suffixStart);\n \n return [text, prefix, data, suffix];\n};\n\n\n// Internal.\n//\n// Saves the data in a <data> block of the given tiddler (as a minor change). \n//\n// The "chkAutoSave" and "chkForceMinorUpdate" options are respected. \n// I.e. the TiddlyWiki *file* is only saved when AutoSave is on.\n//\n// Notifications are not send. \n//\n// This method should only be called when the data really has changed. \n//\n// @param tiddler\n// the tiddler to be saved.\n//\nDataTiddler.save = function(tiddler) {\n\n var matches = DataTiddler.getDataTiddlerMatches(tiddler);\n\n var prefix;\n var suffix;\n if (matches === null) {\n prefix = tiddler.text;\n suffix = "";\n } else {\n prefix = matches[1];\n suffix = matches[3];\n }\n\n var dataText = DataTiddler.getDataTextOfTiddler(tiddler);\n var newText = \n (dataText !== null) \n ? prefix + "<data>" + dataText + "</data>" + suffix\n : prefix + suffix;\n if (newText != tiddler.text) {\n // make the change in the tiddlers text\n \n // ... see DataTiddler.MyTiddlerChangedFunction\n tiddler.isDataTiddlerChange = true;\n \n // ... do the action change\n tiddler.set(\n tiddler.title,\n newText,\n config.options.txtUserName, \n config.options.chkForceMinorUpdate? undefined : new Date(),\n tiddler.tags);\n\n // ... see DataTiddler.MyTiddlerChangedFunction\n delete tiddler.isDataTiddlerChange;\n\n // Mark the store as dirty.\n store.dirty = true;\n\n \n // AutoSave if option is selected\n if(config.options.chkAutoSave) {\n saveChanges();\n }\n }\n};\n\n// Internal.\n//\nDataTiddler.MyTiddlerChangedFunction = function() {\n // Remove the data object from the tiddler when the tiddler is changed\n // by code other than DataTiddler code. \n //\n // This is necessary since the data object is just a "cached version" \n // of the data defined in the data section of the tiddler and the \n // "external" change may have changed the content of the data section.\n // Thus we are not sure if the data object reflects the data section \n // contents. \n // \n // By deleting the data object we ensure that the data object is \n // reconstructed the next time it is needed, with the data defined by\n // the data section in the tiddler's text.\n \n // To indicate that a change is a "DataTiddler change" a temporary\n // property "isDataTiddlerChange" is added to the tiddler.\n if (this.dataObject && !this.isDataTiddlerChange) {\n delete this.dataObject;\n }\n \n // call the original code.\n DataTiddler.originalTiddlerChangedFunction.apply(this, arguments);\n};\n\n\n//============================================================================\n// Formatters\n//============================================================================\n\n// This formatter ensures that "~<data>" is rendered as "<data>". This is used to \n// escape the "<data>" of a data section, just in case someone really wants to use\n// "<data>" as a text in a tiddler and not start a data section.\n//\n// Same for </data>.\n//\nconfig.formatters.push( {\n name: "data-escape",\n match: "~<\s\s/?data>",\n\n handler: function(w) {\n w.outputText(w.output,w.matchStart + 1,w.nextMatch);\n }\n} );\n\n\n// This formatter ensures that <data>...</data> sections are not rendered.\n//\nconfig.formatters.push( {\n name: "data",\n match: "<data>",\n\n handler: function(w) {\n var info = DataTiddler.getDataSectionInfo(w.source);\n if (info && info.prefixEnd == w.matchStart) {\n w.nextMatch = info.suffixStart;\n } else {\n w.outputText(w.output,w.matchStart,w.nextMatch);\n }\n }\n} );\n\n\n//============================================================================\n// Tiddler Class Extension\n//============================================================================\n\n// "Hijack" the changed method ---------------------------------------------------\n\nDataTiddler.originalTiddlerChangedFunction = Tiddler.prototype.changed;\nTiddler.prototype.changed = DataTiddler.MyTiddlerChangedFunction;\n\n// Define accessor methods -------------------------------------------------------\n\n// Returns the value of the given data field of the tiddler. When no such field \n// is defined or its value is undefined the defaultValue is returned.\n//\n// When field is undefined (or null) the data object is returned. (See \n// DataTiddler.getDataObject.)\n//\n// @param field [may be null, undefined]\n// @param defaultValue [may be null, undefined]\n// @return [may be null, undefined]\n//\nTiddler.prototype.data = function(field, defaultValue) {\n return (field) \n ? DataTiddler.getTiddlerDataValue(this, field, defaultValue)\n : DataTiddler.getTiddlerDataObject(this);\n};\n\n// Sets the value of the given data field of the tiddler to the value. When the \n// value is equal to the defaultValue no value is set (and the field is removed).\n//\n// @param value [may be null, undefined]\n// @param defaultValue [may be null, undefined]\n//\nTiddler.prototype.setData = function(field, value, defaultValue) {\n DataTiddler.setTiddlerDataValue(this, field, value, defaultValue);\n};\n\n\n//============================================================================\n// showData Macro\n//============================================================================\n\nconfig.macros.showData = {\n // Standard Properties\n label: "showData",\n prompt: "Display the values stored in the data section of the tiddler"\n};\n\nconfig.macros.showData.handler = function(place,macroName,params) {\n // --- Parsing ------------------------------------------\n\n var i = 0; // index running over the params\n // Parse the optional "JSON"\n var showInJSONFormat = false;\n if ((i < params.length) && params[i] == "JSON") {\n i++;\n showInJSONFormat = true;\n }\n \n var tiddlerName = story.findContainingTiddler(place).id.substr(7);\n if (i < params.length) {\n tiddlerName = params[i];\n i++;\n }\n\n // --- Processing ------------------------------------------\n try {\n if (showInJSONFormat) {\n this.renderDataInJSONFormat(place, tiddlerName);\n } else {\n this.renderDataAsTable(place, tiddlerName);\n }\n } catch (e) {\n this.createErrorElement(place, e);\n }\n};\n\nconfig.macros.showData.renderDataInJSONFormat = function(place,tiddlerName) {\n var text = DataTiddler.getDataText(tiddlerName);\n if (text) {\n createTiddlyElement(place,"pre",null,null,text);\n }\n};\n\nconfig.macros.showData.renderDataAsTable = function(place,tiddlerName) {\n var text = "|!Name|!Value|\sn";\n var data = DataTiddler.getDataObject(tiddlerName);\n if (data) {\n for (var i in data) {\n var value = data[i];\n text += "|"+i+"|"+DataTiddler.stringify(value)+"|\sn";\n }\n }\n \n wikify(text, place);\n};\n\n\n// Internal.\n//\n// Creates an element that holds an error message\n// \nconfig.macros.showData.createErrorElement = function(place, exception) {\n var message = (exception.description) ? exception.description : exception.toString();\n return createTiddlyElement(place,"span",null,"showDataError","<<showData ...>>: "+message);\n};\n\n// ---------------------------------------------------------------------------\n// Stylesheet Extensions (may be overridden by local StyleSheet)\n// ---------------------------------------------------------------------------\n//\nsetStylesheet(\n ".showDataError{color: #ffffff;background-color: #880000;}",\n "showData");\n\n\n} // of "install only once"\n// Used Globals (for JSLint) ==============\n\n// ... TiddlyWiki Core\n/*global createTiddlyElement, saveChanges, store, story, wikify */\n// ... DataTiddler\n/*global DataTiddler */\n// ... JSON\n/*global JSON */\n \n\n/***\n!JSON Code, used to serialize the data\n***/\n/*\nCopyright (c) 2005 JSON.org\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the "Software"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe Software shall be used for Good, not Evil.\n\nTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n*/\n\n/*\n The global object JSON contains two methods.\n\n JSON.stringify(value) takes a JavaScript value and produces a JSON text.\n The value must not be cyclical.\n\n JSON.parse(text) takes a JSON text and produces a JavaScript value. It will\n throw a 'JSONError' exception if there is an error.\n*/\nvar JSON = {\n copyright: '(c)2005 JSON.org',\n license: 'http://www.crockford.com/JSON/license.html',\n/*\n Stringify a JavaScript value, producing a JSON text.\n*/\n stringify: function (v) {\n var a = [];\n\n/*\n Emit a string.\n*/\n function e(s) {\n a[a.length] = s;\n }\n\n/*\n Convert a value.\n*/\n function g(x) {\n var c, i, l, v;\n\n switch (typeof x) {\n case 'object':\n if (x) {\n if (x instanceof Array) {\n e('[');\n l = a.length;\n for (i = 0; i < x.length; i += 1) {\n v = x[i];\n if (typeof v != 'undefined' &&\n typeof v != 'function') {\n if (l < a.length) {\n e(',');\n }\n g(v);\n }\n }\n e(']');\n return;\n } else if (typeof x.toString != 'undefined') {\n e('{');\n l = a.length;\n for (i in x) {\n v = x[i];\n if (x.hasOwnProperty(i) &&\n typeof v != 'undefined' &&\n typeof v != 'function') {\n if (l < a.length) {\n e(',');\n }\n g(i);\n e(':');\n g(v);\n }\n }\n return e('}');\n }\n }\n e('null');\n return;\n case 'number':\n e(isFinite(x) ? +x : 'null');\n return;\n case 'string':\n l = x.length;\n e('"');\n for (i = 0; i < l; i += 1) {\n c = x.charAt(i);\n if (c >= ' ') {\n if (c == '\s\s' || c == '"') {\n e('\s\s');\n }\n e(c);\n } else {\n switch (c) {\n case '\sb':\n e('\s\sb');\n break;\n case '\sf':\n e('\s\sf');\n break;\n case '\sn':\n e('\s\sn');\n break;\n case '\sr':\n e('\s\sr');\n break;\n case '\st':\n e('\s\st');\n break;\n default:\n c = c.charCodeAt();\n e('\s\su00' + Math.floor(c / 16).toString(16) +\n (c % 16).toString(16));\n }\n }\n }\n e('"');\n return;\n case 'boolean':\n e(String(x));\n return;\n default:\n e('null');\n return;\n }\n }\n g(v);\n return a.join('');\n },\n/*\n Parse a JSON text, producing a JavaScript value.\n*/\n parse: function (text) {\n var p = /^\ss*(([,:{}\s[\s]])|"(\s\s.|[^\sx00-\sx1f"\s\s])*"|-?\sd+(\s.\sd*)?([eE][+-]?\sd+)?|true|false|null)\ss*/,\n token,\n operator;\n\n function error(m, t) {\n throw {\n name: 'JSONError',\n message: m,\n text: t || operator || token\n };\n }\n\n function next(b) {\n if (b && b != operator) {\n error("Expected '" + b + "'");\n }\n if (text) {\n var t = p.exec(text);\n if (t) {\n if (t[2]) {\n token = null;\n operator = t[2];\n } else {\n operator = null;\n try {\n token = eval(t[1]);\n } catch (e) {\n error("Bad token", t[1]);\n }\n }\n text = text.substring(t[0].length);\n } else {\n error("Unrecognized token", text);\n }\n } else {\n token = operator = undefined;\n }\n }\n\n\n function val() {\n var k, o;\n switch (operator) {\n case '{':\n next('{');\n o = {};\n if (operator != '}') {\n for (;;) {\n if (operator || typeof token != 'string') {\n error("Missing key");\n }\n k = token;\n next();\n next(':');\n o[k] = val();\n if (operator != ',') {\n break;\n }\n next(',');\n }\n }\n next('}');\n return o;\n case '[':\n next('[');\n o = [];\n if (operator != ']') {\n for (;;) {\n o.push(val());\n if (operator != ',') {\n break;\n }\n next(',');\n }\n }\n next(']');\n return o;\n default:\n if (operator !== null) {\n error("Missing value");\n }\n k = token;\n next();\n return k;\n }\n }\n next();\n return val();\n }\n};\n\n/***\n!Setup the data serialization\n***/\n\nDataTiddler.format = "JSON";\nDataTiddler.stringify = JSON.stringify;\nDataTiddler.parse = JSON.parse;\n\n//}}}\n
<<<\nAdaptive learning systems are the future course product. Increasingly interwoven with these systems are assessments, learning analytics, tutoring programs, and adaptive aids that will help each student reach his/her full potential. Like pharmaceutical drugs, these systems are designed and developed in order to demonstrate that using the tools results in enhanced learning outcomes. Already applied in emporium models, these tools target remediation requirements, helping students achieve the necessary levels of mastery at their own pace and signaling to instructors or others where various forms of intervention could be helpful.\n<<<
We are looking forward to your visit on Monday, April 4th. I've put together a schedule. Let me know if this works for you.\n\n10-11 Meet with Mike Rush at the Beinecke Library, discuss finding aids @ Yale\n11-11:30 Tour Beinecke Library and Sterling Memorial Library\n11:30-1 Lunch with Mike Rush and one or two others. \n1-2 Finding Aids Coordinating Committee meeting\n2-3:30 Meet with Library IT Office staff\n\nHopefully this is convenient. There are numerous parking options in New Haven (map available at http://cityofnewhaven.com/ParkingAuthority/images/map.gif). You'll probably want to park in a garage. The Grove Street garage is fairly convenient to the Beinecke and Sterling. For directions to the Beinecke Library, see http://www.library.yale.edu/beinecke/brblinfo/brbldirections.html. \n\nWe look forward to discussing Connecticut Archives Online, finding aids in general, systems development in libraries, and whatever questions you bring.\n\n[[New Haven Parking Map|http://cityofnewhaven.com/ParkingAuthority/images/map.gif]]
/***\n|''Name:''|BreadCrumbsPlugin|\n|''Version:''|2.2.1 (05-July-2007)|\n|''Author:''|AlanHecht|\n|''Adapted By:''|[[Jack]]|\n|''Type:''|Plugin|\n!Description\nThis plugin creates an area at the top of the tiddler area that displays "breadcrumbs" of where you've been. This is especially useful for ~TWs using SinglePageMode by Eric Schulman.\n!Usage\nJust install the plugin and tag with systemConfig. Optionally position the following div in your PageTemplate to control the positioning of the breadcrumbs menu:\n{{{\n<div id='breadCrumbs'></div>\n}}}\n!Revision History\n* Original by AlanHecht\n* 2.0 Made 2.0.x compatible by [[Jack]]\n* Made 2.0.10 compatible (onstart paramifier)\n* Bugfix -> return false in onClickTiddlerLink()\n* 2.2 Made 2.2.x compatible\n!Code\n***/\n\n// // Use the following line to set the number of breadcrumbs to display before rotating them off the list.\n//{{{\nversion.extensions.breadCrumbs = {major: 2, minor: 2, revision: 1, date: new Date("Jul 5, 2007")};\nvar crumbsToShow = 7;\nvar breadCrumbs = [];\n\nonClickTiddlerLink_orig_breadCrumbs = onClickTiddlerLink;\nonClickTiddlerLink = function(e){\n onClickTiddlerLink_orig_breadCrumbs(e);\n breadcrumbsAdd(e);\n return false;\n}\n\nrestart_orig_breadCrumbs = restart;\nfunction restart() {\n invokeParamifier(params,"onstart");\n var defaultParams = store.getTiddlerText("DefaultTiddlers").parseParams("open",null,false);\n invokeParamifier(defaultParams,"onstart");\n breadCrumbs = [];\n breadcrumbsRefresh();\n window.scrollTo(0,0);\n return false;\n}\n\nfunction breadcrumbsAdd(e) {\n var uniqueCrumb = true;\n var crumbIndex = 0;\n if (!e) var e = window.event;\n var target = resolveTarget(e);\n var thisCrumb="[["+resolveTarget(e).getAttribute("tiddlyLink")+"]]";\n var lastInactiveCrumb = breadCrumbs.length -(breadCrumbs.length < crumbsToShow ? breadCrumbs.length : crumbsToShow);\n for(t=lastInactiveCrumb; t<breadCrumbs.length; t++)\n if(breadCrumbs[t] == thisCrumb) {\n uniqueCrumb = false;\n crumbIndex = t+1;\n }\n if(uniqueCrumb)\n breadCrumbs.push(thisCrumb);\n else\n breadCrumbs = breadCrumbs.slice(0,crumbIndex);\n breadcrumbsRefresh(); \n}\n\nfunction breadcrumbsRefresh() {\n \n if (!document.getElementById("breadCrumbs")) {\n // Create breadCrumbs div\n var ca = document.createElement("div");\n ca.id = "breadCrumbs";\n ca.style.visibility= "hidden";\n var targetArea = document.getElementById("tiddlerDisplay")||document.getElementById("storyDisplay");\n targetArea.parentNode.insertBefore(ca,targetArea);\n }\n\n var crumbArea = document.getElementById("breadCrumbs");\n crumbArea.style.visibility = "visible";\n removeChildren(crumbArea);\n createTiddlyButton(crumbArea,"Home",null,restart);\n crumbArea.appendChild(document.createTextNode(" > "));\n \n var crumbLine = "";\n var crumbCount = breadCrumbs.length;\n var firstCrumb = crumbCount -(crumbCount < crumbsToShow ? crumbCount : crumbsToShow);\n for(t=firstCrumb; t<crumbCount; t++) {\n if(t != firstCrumb)\n crumbLine += " > ";\n crumbLine += breadCrumbs[t];\n }\n wikify(crumbLine,crumbArea)\n}\n\n\n//}}}
It may not be efficient but:\n\n* Schemaless (easy updates, easy to combine data)\n* Use an RDF processor that has reasoning\n* Use various ontologies that will give different insights\n* Take about data on the web ( not local )\n* Well defined standard
"To me" the effectiness and efficiancy of library service depends on the use of information technology. My question is "how can we have a strategic plan that does not address information technololgy.
http://svn.zope.org/Zope/tags/2.11.3/doc/ZOPE3.txt?rev=99667&view=auto\n\n{{{\n/srv/Zope/Products/CookieCrumbler/CookieCrumbler.py:27: DeprecationWarning: \nHTMLFile is deprecated. import from App.special_dtml instead from Globals import HTMLFile\n\n/srv/Zope/Products/CookieCrumbler/CookieCrumbler.py:374: DeprecationWarning: \nInitializeClass is deprecated. import from App.class_init instead Globals.InitializeClass(CookieCrumbler)\n\n/srv/Zope/Products/Formulator/__init__.py:1: DeprecationWarning: \nDTMLFile is deprecated. import from App.special_dtml instead from Globals import DTMLFile\n\n/srv/Zope/Products/Formulator/Form.py:4: DeprecationWarning: \nPersistent is deprecated. import from Persistence instead from Globals import DTMLFile, Persistent\n\n/srv/Zope/Products/Formulator/FieldRegistry.py:3: DeprecationWarning: \nImageFile is deprecated. import from App.ImageFile instead from Globals import ImageFile\n\n/srv/Zope/lib/python/Products.OAICore-2.3-py2.6.egg/Products/OAICore/core.py:7: DeprecationWarning: \nPersistentMapping is deprecated. import from Persistence instead from Globals import PersistentMapping\n\n/srv/Zope/Products/ParsedXML/DOM/Core.py:59: DeprecationWarning: \nThe sre module is deprecated, please import re. import sre # Note that Python 1.5.2's re module chokes. Require sre.\n\n/srv/Zope/Products/ZWiki/__init__.py:12: DeprecationWarning: \npackage_home is deprecated. import from App.Common instead from Globals import package_home, MessageDialog, ImageFile\n\n/srv/Zope/Products/ZWiki/__init__.py:12: DeprecationWarning: \nMessageDialog is deprecated. import from App.Dialogs instead from Globals import package_home, MessageDialog, ImageFile\n\n/srv/Zope/Products/ZWiki/OutlineSupport.py:54: DeprecationWarning: \nREPLACEABLE is deprecated. import from OFS.ObjectManager instead from Globals import InitializeClass, REPLACEABLE\n\n/srv/Zope/Products/ParsedXML/DOM/Core.py:59: DeprecationWarning: \nThe sre module is deprecated, please import re.\n\n/opt/Zope2-2.12.3/src/OFS/Application.py:697: DeprecationWarning: \n__init__.py of Products.ExternalFile has a long deprecated 'methods' attribute. 'methods' support might be removed in Zope 2.11 or a later feature release. Please use the 'legacy' argument of registerClass instead if the methods are constructors. Or refactor the product using adapters.\n\n2010-02-09 17:04:14 WARNING \nInit Class Products.ZopeXMLMethods.DTDValidateMethod.DTDValidateMethod has a security declaration for nonexistent method 'dtdValidationResultsString'\n\n2010-02-09 17:04:14 WARNING \nInit Class Products.ZopeXMLMethods.DTDValidateMethod.DTDValidateMethod has a security declaration for nonexistent method 'dtdValidationResultsString'\n\n/srv/Zope/Products/ZopeXMLMethods/CacheManager.py:34: DeprecationWarning: \nHTML is deprecated. import from App.special_dtml instead\n from Globals import MessageDialog, HTML\n\n\n\n}}}
/***\n<<checkForDataTiddlerPlugin>>\n|''Name:''|FormTiddlerPlugin|\n|''Version:''|1.0.6 (2007-06-24)|\n|''Source:''|http://tiddlywiki.abego-software.de/#FormTiddlerPlugin|\n|''Author:''|UdoBorkowski (ub [at] abego-software [dot] de)|\n|''Licence:''|[[BSD open source license]]|\n|''Macros:''|formTiddler, checkForDataTiddlerPlugin, newTiddlerWithForm|\n|''Requires:''|DataTiddlerPlugin|\n|''TiddlyWiki:''|1.2.38+, 2.0|\n|''Browser:''|Firefox 1.0.4+; InternetExplorer 6.0|\n!Description\nUse form-based tiddlers to enter your tiddler data using text fields, listboxes, checkboxes etc. (All standard HTML Form input elements supported).\n\n''Syntax:'' \n|>|{{{<<}}}''formTiddler'' //tiddlerName//{{{>>}}}|\n|//tiddlerName//|The name of the FormTemplate tiddler to be used to edit the data of the tiddler containing the macro.|\n\n|>|{{{<<}}}''newTiddlerWithForm'' //formTemplateName// //buttonLabel// [//titleExpression// [''askUser'']] {{{>>}}}|\n|//formTemplateName//|The name of the tiddler that defines the form the new tiddler should use.|\n|//buttonLabel//|The label of the button|\n|//titleExpression//|A (quoted) JavaScript String expression that defines the title (/name) of the new tiddler.|\n|''askUser''|Typically the user is not asked for the title when a title is specified (and not yet used). When ''askUser'' is given the user will be asked in any case. This may be used when the calculated title is just a suggestion that must be confirmed by the user|\n|>|~~Syntax formatting: Keywords in ''bold'', optional parts in [...]. 'or' means that exactly one of the two alternatives must exist.~~|\n\nFor details and how to use the macros see the [[introduction|FormTiddler Introduction]] and the [[examples|FormTiddler Examples]].\n\n!Revision history\n* v1.0.6 (2007-06-24)\n** Fixed problem when using SELECT component in Internet Explorer (thanks to MaikBoenig for reporting)\n* v1.0.5 (2006-02-24)\n** Removed "debugger;" instruction\n* v1.0.4 (2006-02-07)\n** Bug: On IE no data is written to data section when field values changed (thanks to KenGirard for reporting)\n* v1.0.3 (2006-02-05)\n** Bug: {{{"No form template specified in <<formTiddler>>"}}} when using formTiddler macro on InternetExplorer (thanks to KenGirard for reporting)\n* v1.0.2 (2006-01-06)\n** Support TiddlyWiki 2.0\n* v1.0.1 (2005-12-22)\n** Features: \n*** Support InternetExplorer\n*** Added newTiddlerWithForm Macro\n* v1.0.0 (2005-12-14)\n** initial version\n\n!Code\n***/\n//{{{\n\n//============================================================================\n//============================================================================\n// FormTiddlerPlugin\n//============================================================================\n//============================================================================\n\nif (!window.abego) window.abego = {};\n\nabego.getOptionsValue = function(element,i) {\n var v = element.options[i].value;\n if (!v && element.options[i].text)\n v = element.options[i].text;\n return v;\n};\n\nversion.extensions.FormTiddlerPlugin = {\n major: 1, minor: 0, revision: 5,\n date: new Date(2006, 2, 24), \n type: 'plugin',\n source: "http://tiddlywiki.abego-software.de/#FormTiddlerPlugin"\n};\n\n// For backward compatibility with v1.2.x\n//\nif (!window.story) window.story=window; \nif (!TiddlyWiki.prototype.getTiddler) TiddlyWiki.prototype.getTiddler = function(title) { return t = this.tiddlers[title]; return (t != undefined && t instanceof Tiddler) ? t : null; } \n\n//============================================================================\n// formTiddler Macro\n//============================================================================\n\n// -------------------------------------------------------------------------------\n// Configurations and constants \n// -------------------------------------------------------------------------------\n\nconfig.macros.formTiddler = {\n // Standard Properties\n label: "formTiddler",\n version: {major: 1, minor: 0, revision: 4, date: new Date(2006, 2, 7)},\n prompt: "Edit tiddler data using forms",\n\n // Define the "setters" that set the values of INPUT elements of a given type\n // (must match the corresponding "getter")\n setter: { \n button: function(e, value) {/*contains no data */ },\n checkbox: function(e, value) {e.checked = value;},\n file: function(e, value) {try {e.value = value;} catch(e) {/* ignore, possibly security error*/}},\n hidden: function(e, value) {e.value = value;},\n password: function(e, value) {e.value = value;},\n radio: function(e, value) {e.checked = (e.value == value);},\n reset: function(e, value) {/*contains no data */ },\n "select-one": function(e, value) {config.macros.formTiddler.setSelectOneValue(e,value);},\n "select-multiple": function(e, value) {config.macros.formTiddler.setSelectMultipleValue(e,value);},\n submit: function(e, value) {/*contains no data */},\n text: function(e, value) {e.value = value;},\n textarea: function(e, value) {e.value = value;}\n },\n\n // Define the "getters" that return the value of INPUT elements of a given type\n // Return undefined to not store any data.\n getter: { \n button: function(e, value) {return undefined;},\n checkbox: function(e, value) {return e.checked;},\n file: function(e, value) {return e.value;},\n hidden: function(e, value) {return e.value;},\n password: function(e, value) {return e.value;},\n radio: function(e, value) {return e.checked ? e.value : undefined;},\n reset: function(e, value) {return undefined;},\n "select-one": function(e, value) {return config.macros.formTiddler.getSelectOneValue(e);},\n "select-multiple": function(e, value) {return config.macros.formTiddler.getSelectMultipleValue(e);},\n submit: function(e, value) {return undefined;},\n text: function(e, value) {return e.value;},\n textarea: function(e, value) {return e.value;}\n }\n};\n\n\n// -------------------------------------------------------------------------------\n// The formTiddler Macro Handler \n// -------------------------------------------------------------------------------\n\nconfig.macros.formTiddler.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n if (!config.macros.formTiddler.checkForExtensions(place, macroName)) {\n return;\n }\n // --- Parsing ------------------------------------------\n\n var i = 0; // index running over the params\n\n // get the name of the form template tiddler\n var formTemplateName = undefined;\n if (i < params.length) {\n formTemplateName = params[i];\n i++;\n }\n\n if (!formTemplateName) {\n config.macros.formTiddler.createErrorElement(place, "No form template specified in <<" + macroName + ">>.");\n return;\n }\n\n\n // --- Processing ------------------------------------------\n\n // Get the form template text. \n // (This contains the INPUT elements for the form.)\n var formTemplateTiddler = store.getTiddler(formTemplateName);\n if (!formTemplateTiddler) {\n config.macros.formTiddler.createErrorElement(place, "Form template '" + formTemplateName + "' not found.");\n return;\n }\n var templateText = formTemplateTiddler.text;\n if(!templateText) {\n // Shortcut: when template text is empty we do nothing.\n return;\n }\n\n // Get the name of the tiddler containing this "formTiddler" macro\n // (i.e. the tiddler, that will be edited and that contains the data)\n var tiddlerName = config.macros.formTiddler.getContainingTiddlerName(place);\n\n // Append a "form" element. \n var formName = "form"+formTemplateName+"__"+tiddlerName;\n var e = document.createElement("form");\n e.setAttribute("name", formName);\n place.appendChild(e);\n\n // "Embed" the elements defined by the templateText (i.e. the INPUT elements) \n // into the "form" element we just created\n wikify(templateText, e);\n\n // Initialize the INPUT elements.\n config.macros.formTiddler.initValuesAndHandlersInFormElements(formName, DataTiddler.getDataObject(tiddlerName));\n}\n\n\n// -------------------------------------------------------------------------------\n// Form Data Access \n// -------------------------------------------------------------------------------\n\n// Internal.\n//\n// Initialize the INPUT elements of the form with the values of their "matching"\n// data fields in the tiddler. Also setup the onChange handler to ensure that\n// changes in the INPUT elements are stored in the tiddler's data.\n//\nconfig.macros.formTiddler.initValuesAndHandlersInFormElements = function(formName, data) {\n // config.macros.formTiddler.trace("initValuesAndHandlersInFormElements(formName="+formName+", data="+data+")");\n\n // find the form\n var form = config.macros.formTiddler.findForm(formName);\n if (!form) {\n return;\n }\n\n try {\n var elems = form.elements;\n for (var i = 0; i < elems.length; i++) {\n var c = elems[i];\n \n var setter = config.macros.formTiddler.setter[c.type];\n if (setter) {\n var value = data[c.name];\n if (value != null) {\n setter(c, value);\n }\n c.onchange = onFormTiddlerChange;\n } else {\n config.macros.formTiddler.displayFormTiddlerError("No setter defined for INPUT element of type '"+c.type+"'. (Element '"+c.name+"' in form '"+formName+"')");\n }\n }\n } catch(e) {\n config.macros.formTiddler.displayFormTiddlerError("Error when updating elements with new formData. "+e);\n }\n}\n\n\n// Internal.\n//\n// @return [may be null]\n//\nconfig.macros.formTiddler.findForm = function(formName) {\n // We must manually iterate through the document's forms, since\n // IE does not support the "document[formName]" approach\n\n var forms = window.document.forms;\n for (var i = 0; i < forms.length; i++) {\n var form = forms[i];\n if (form.name == formName) {\n return form;\n }\n }\n\n return null;\n}\n\n\n// Internal.\n//\nconfig.macros.formTiddler.setSelectOneValue = function(element,value) {\n var n = element.options.length;\n for (var i = 0; i < n; i++) {\n element.options[i].selected = abego.getOptionsValue(element,i) == value;\n }\n}\n\n// Internal.\n//\nconfig.macros.formTiddler.setSelectMultipleValue = function(element,value) {\n var values = {};\n for (var i = 0; i < value.length; i++) {\n values[value[i]] = true;\n }\n \n var n = element.length;\n for (var i = 0; i < n; i++) {\n element.options[i].selected = !(!values[abego.getOptionsValue(element,i)]);\n }\n}\n\n// Internal.\n//\nconfig.macros.formTiddler.getSelectOneValue = function(element) {\n var i = element.selectedIndex;\n return (i >= 0) ? abego.getOptionsValue(element,i) : null;\n}\n\n// Internal.\n//\nconfig.macros.formTiddler.getSelectMultipleValue = function(element) {\n var values = [];\n var n = element.length;\n for (var i = 0; i < n; i++) {\n if (element.options[i].selected) {\n values.push(abego.getOptionsValue(element,i));\n }\n }\n return values;\n}\n\n\n\n// -------------------------------------------------------------------------------\n// Helpers \n// -------------------------------------------------------------------------------\n\n// Internal.\n//\nconfig.macros.formTiddler.checkForExtensions = function(place,macroName) {\n if (!version.extensions.DataTiddlerPlugin) {\n config.macros.formTiddler.createErrorElement(place, "<<" + macroName + ">> requires the DataTiddlerPlugin. (You can get it from http://tiddlywiki.abego-software.de/#DataTiddlerPlugin)");\n return false;\n }\n return true;\n}\n\n// Internal.\n//\n// Displays a trace message in the "TiddlyWiki" message pane.\n// (used for debugging)\n//\nconfig.macros.formTiddler.trace = function(s) {\n displayMessage("Trace: "+s);\n}\n\n// Internal.\n//\n// Display some error message in the "TiddlyWiki" message pane.\n//\nconfig.macros.formTiddler.displayFormTiddlerError = function(s) {\n alert("FormTiddlerPlugin Error: "+s);\n}\n\n// Internal.\n//\n// Creates an element that holds an error message\n// \nconfig.macros.formTiddler.createErrorElement = function(place, message) {\n return createTiddlyElement(place,"span",null,"formTiddlerError",message);\n}\n\n// Internal.\n//\n// Returns the name of the tiddler containing the given element.\n// \nconfig.macros.formTiddler.getContainingTiddlerName = function(element) {\n return story.findContainingTiddler(element).id.substr(7);\n}\n\n// -------------------------------------------------------------------------------\n// Event Handlers \n// -------------------------------------------------------------------------------\n\n// This function must be called by the INPUT elements whenever their\n// data changes. Typically this is done through an "onChange" handler.\n//\nfunction onFormTiddlerChange (e) {\n // config.macros.formTiddler.trace("onFormTiddlerChange "+e);\n\n if (!e) var e = window.event;\n\n var target = resolveTarget(e);\n var tiddlerName = config.macros.formTiddler.getContainingTiddlerName(target);\n var getter = config.macros.formTiddler.getter[target.type];\n if (getter) {\n var value = getter(target);\n DataTiddler.setData(tiddlerName, target.name, value);\n } else {\n config.macros.formTiddler.displayFormTiddlerError("No getter defined for INPUT element of type '"+target.type+"'. (Element '"+target.name+"' used in tiddler '"+tiddlerName+"')");\n }\n}\n\n// ensure that the function can be used in HTML event handler\nwindow.onFormTiddlerChange = onFormTiddlerChange;\n\n\n// -------------------------------------------------------------------------------\n// Stylesheet Extensions (may be overridden by local StyleSheet)\n// -------------------------------------------------------------------------------\n\nsetStylesheet(\n ".formTiddlerError{color: #ffffff;background-color: #880000;}",\n "formTiddler");\n\n\n//============================================================================\n// checkForDataTiddlerPlugin Macro\n//============================================================================\n\nconfig.macros.checkForDataTiddlerPlugin = {\n // Standard Properties\n label: "checkForDataTiddlerPlugin",\n version: {major: 1, minor: 0, revision: 0, date: new Date(2005, 12, 14)},\n prompt: "Check if the DataTiddlerPlugin exists"\n}\n\nconfig.macros.checkForDataTiddlerPlugin.handler = function(place,macroName,params) {\n config.macros.formTiddler.checkForExtensions(place, config.macros.formTiddler.label);\n}\n\n\n\n//============================================================================\n// newTiddlerWithForm Macro\n//============================================================================\n\nconfig.macros.newTiddlerWithForm = {\n // Standard Properties\n label: "newTiddlerWithForm",\n version: {major: 1, minor: 0, revision: 1, date: new Date(2006, 1, 6)},\n prompt: "Creates a new Tiddler with a <<formTiddler ...>> macro"\n}\n\nconfig.macros.newTiddlerWithForm.handler = function(place,macroName,params) {\n // --- Parsing ------------------------------------------\n\n var i = 0; // index running over the params\n\n // get the name of the form template tiddler\n var formTemplateName = undefined;\n if (i < params.length) {\n formTemplateName = params[i];\n i++;\n }\n\n if (!formTemplateName) {\n config.macros.formTiddler.createErrorElement(place, "No form template specified in <<" + macroName + ">>.");\n return;\n }\n\n // get the button label\n var buttonLabel = undefined;\n if (i < params.length) {\n buttonLabel = params[i];\n i++;\n }\n\n if (!buttonLabel) {\n config.macros.formTiddler.createErrorElement(place, "No button label specified in <<" + macroName + ">>.");\n return;\n }\n\n // get the (optional) tiddlerName script and "askUser"\n var tiddlerNameScript = undefined;\n var askUser = false;\n if (i < params.length) {\n tiddlerNameScript = params[i];\n i++;\n\n if (i < params.length && params[i] == "askUser") {\n askUser = true;\n i++;\n }\n }\n\n // --- Processing ------------------------------------------\n\n if(!readOnly) {\n var onClick = function() {\n var tiddlerName;\n if (tiddlerNameScript) {\n try {\n tiddlerName = eval(tiddlerNameScript);\n } catch (ex) {\n }\n }\n if (!tiddlerName || askUser) {\n tiddlerName = prompt("Please specify a tiddler name.", askUser ? tiddlerName : "");\n }\n while (tiddlerName && store.getTiddler(tiddlerName)) {\n tiddlerName = prompt("A tiddler named '"+tiddlerName+"' already exists.\sn\sn"+"Please specify a tiddler name.", tiddlerName);\n }\n\n // tiddlerName is either null (user canceled) or a name that is not yet in the store.\n if (tiddlerName) {\n var body = "<<formTiddler [["+formTemplateName+"]]>>";\n var tags = [];\n store.saveTiddler(tiddlerName,tiddlerName,body,config.options.txtUserName,new Date(),tags);\n story.displayTiddler(null,tiddlerName,1);\n }\n }\n\n createTiddlyButton(place,buttonLabel,buttonLabel,onClick);\n }\n}\n\n//}}}\n\n\n/***\n!Licence and Copyright\nCopyright (c) abego Software ~GmbH, 2005 ([[www.abego-software.de|http://www.abego-software.de]])\n\nRedistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met:\n\nRedistributions of source code must retain the above copyright notice, this\nlist of conditions and the following disclaimer.\n\nRedistributions in binary form must reproduce the above copyright notice, this\nlist of conditions and the following disclaimer in the documentation and/or other\nmaterials provided with the distribution.\n\nNeither the name of abego Software nor the names of its contributors may be\nused to endorse or promote products derived from this software without specific\nprior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY\nEXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\nOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT\nSHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\nINCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR\nBUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\nCONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\nANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH\nDAMAGE.\n***/\n
1. url for the item itself\n2. url for the web page that displays the item\n3 url for what the item is about
[[The new type of learner and why the university must change|http://www.edge.org/3rd_culture/tapscott09/tapscott09_index.html]]\n\nThe International Journal of Digital Curation \n\nFrom Duke about a metadata editor\nhttp://library.duke.edu/blogs/digital-collections/2008/10/10/a-metadata-tool-that-scales/#more-111\n\n[[Extensible Catalog Schema|http://www.extensiblecatalog.org/sites/default/files/fulltext/XCSchemaProperties20090107.pdf]]\n\n\nhttp://halfanhour.blogspot.com/2010/03/three-models-of-knowledge-production.html\n\nLorcan Dempsey and Discovery\nhttp://www.educause.edu/ero/article/thirteen-ways-looking-libraries-discovery-and-catalog-scale-workflow-attention
>Engaging the broader library community in implementing leading-edge advances such as those described above and others re-sulting from programs offered by IMLS and private funders such as the Mellon Foundation. More than just a matter of disseminating information about these advances, this broader engagement will require systematic and systemic effort to help different audiences learn a new language, with faculty needing to understand issues of librarianship and librarians growing to appreciate faculty roles. Of particular interest is the challenge these changing roles will place on the future structure and content of graduate and professional school programs.\n\nThis is a interesting take on the subject
function generateSEOFiles()\n{\n // last update: 2007-02-14 by Fabrice Proudhon\n // http://www.superphysique.net#%5B%5BSEO%20TiddlyWiki%20Plugin%5D%5D\n // new additions (Oct 2010) by Sotirios A Tsaftaris to allow the script to work with more special characters in tiddlers such as ?, :, ! etc.\n var originalPath = document.location.toString();\n if(originalPath.substr(0,5) != "file:") \n {\n alert(config.messages.notFileUrlError);\n if(store.tiddlerExists(config.messages.saveInstructions))\n story.displayTiddler(null,config.messages.saveInstructions);\n return;\n }\n var y = [];\n var g = [];\n var localPath = getLocalPath(originalPath);\n var c = store.getTiddlerText("SEOTiddlyWikiConfig");\n var su = store.getTiddlerText("SiteUrl");\n var st = wikifyPlain("SiteTitle");\n var sbt = wikifyPlain("SiteSubtitle");\n var htmlPath = localPath.substr(0,localPath.lastIndexOf("\s\s"));\n var tiddlers = store.getTiddlers("modified","excludeSearch");\n g.push('<url><loc>' + su.htmlEncode() + '</loc></url>');\n y.push(su.htmlEncode());\n for (var t=0; t<tiddlers.length; t++) {\n var content = c;\n var filename = tiddlers[t].title.htmlEncode();\n filename = filename.toLowerCase();\n filename = filename.replace(/ |\s/|@|[?]|:/gi, '-');\n filename = filename.replace(/(-)\s1+/gi, '$1');\n content = content.replace(/SITE_TITLE/gi, st.htmlEncode());\n content = content.replace(/SITE_SUBTITLE/gi, sbt.htmlEncode());\n content = content.replace(/TIDDLER_TITLE/gi, tiddlers[t].title.htmlEncode());\n content = content.replace(/TIDDLER_URL/gi, su.htmlEncode() + '#' + String.encodeTiddlyLink(tiddlers[t].title));\n content = content.replace(/TIDDLER_KEYWORDS/gi, tiddlers[t].tags.join(',').htmlEncode());\n content = content.replace(/TIDDLER_CONTENT/gi, wikifyStatic(tiddlers[t].text,null,tiddlers[t]).htmlEncode());\n content = content.replace(/&lt;/gi, '<');\n content = content.replace(/&gt;/gi, '>');\n content = content.replace(/&quot;/gi, '"');\n var d = tiddlers[t].modified.getFullYear() + '-';\n if (tiddlers[t].modified.getMonth() + 1 < 10) d = d + '0';\n d = d + (tiddlers[t].modified.getMonth() + 1) + '-';\n if (tiddlers[t].modified.getDate() < 10) d = d + '0';\n d = d + tiddlers[t].modified.getDate();\n for (var ta=0; ta<tiddlers[t].tags.length; ta++) {\n var tag = tiddlers[t].tags[ta].toLowerCase();\n g.push('<url><loc>' + su.htmlEncode() + escape(tag) + '/' + escape(filename) + '.htm' + '</loc><lastmod>' + d + '</lastmod></url>');\n y.push(su.htmlEncode() + escape(tag) + '/' + escape(filename) + '.htm');\n saveFile(htmlPath + '\s\s' + tag + '\s\s' + filename + '.htm', convertUnicodeToUTF8(content));\n }\n }\n saveFile(htmlPath + '\s\surllist.txt', convertUnicodeToUTF8(y.join('\sn')));\n saveFile(htmlPath + '\s\ssitemap.xml', '<?xml version="1.0" encoding="utf-8"?><urlset xmlns="http://www.google.com/schemas/sitemap/0.9">\sn' + convertUnicodeToUTF8(g.join('\sn')) + '</urlset>');\n displayMessage('SEO files created', '');\n}
/***\n|Name|InlineJavascriptPlugin|\n|Source|http://www.TiddlyTools.com/#InlineJavascriptPlugin|\n|Documentation|http://www.TiddlyTools.com/#InlineJavascriptPluginInfo|\n|Version|1.9.4|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <br>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides||\n|Description|Insert Javascript executable code directly into your tiddler content.|\n''Call directly into TW core utility routines, define new functions, calculate values, add dynamically-generated TiddlyWiki-formatted output'' into tiddler content, or perform any other programmatic actions each time the tiddler is rendered.\n!!!!!Documentation\n>see [[InlineJavascriptPluginInfo]]\n!!!!!Revisions\n<<<\n2009.02.26 [1.9.4] in $(), handle leading '#' on ID for compatibility with JQuery syntax\n|please see [[InlineJavascriptPluginInfo]] for additional revision details|\n2005.11.08 [1.0.0] initial release\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.InlineJavascriptPlugin= {major: 1, minor: 9, revision: 3, date: new Date(2008,6,11)};\n\nconfig.formatters.push( {\n name: "inlineJavascript",\n match: "\s\s<script",\n lookahead: "\s\s<script(?: src=\s\s\s"((?:.|\s\sn)*?)\s\s\s")?(?: label=\s\s\s"((?:.|\s\sn)*?)\s\s\s")?(?: title=\s\s\s"((?:.|\s\sn)*?)\s\s\s")?(?: key=\s\s\s"((?:.|\s\sn)*?)\s\s\s")?( show)?\s\s>((?:.|\s\sn)*?)\s\s</script\s\s>",\n\n handler: function(w) {\n var lookaheadRegExp = new RegExp(this.lookahead,"mg");\n lookaheadRegExp.lastIndex = w.matchStart;\n var lookaheadMatch = lookaheadRegExp.exec(w.source)\n if(lookaheadMatch && lookaheadMatch.index == w.matchStart) {\n var src=lookaheadMatch[1];\n var label=lookaheadMatch[2];\n var tip=lookaheadMatch[3];\n var key=lookaheadMatch[4];\n var show=lookaheadMatch[5];\n var code=lookaheadMatch[6];\n if (src) { // load a script library\n // make script tag, set src, add to body to execute, then remove for cleanup\n var script = document.createElement("script"); script.src = src;\n document.body.appendChild(script); document.body.removeChild(script);\n }\n if (code) { // there is script code\n if (show) // show inline script code in tiddler output\n wikify("{{{\sn"+lookaheadMatch[0]+"\sn}}}\sn",w.output);\n if (label) { // create a link to an 'onclick' script\n // add a link, define click handler, save code in link (pass 'place'), set link attributes\n var link=createTiddlyElement(w.output,"a",null,"tiddlyLinkExisting",wikifyPlainText(label));\n var fixup=code.replace(/document.write\ss*\s(/gi,'place.bufferedHTML+=(');\n link.code="function _out(place){"+fixup+"\sn};_out(this);"\n link.tiddler=w.tiddler;\n link.onclick=function(){\n this.bufferedHTML="";\n try{ var r=eval(this.code);\n if(this.bufferedHTML.length || (typeof(r)==="string")&&r.length)\n var s=this.parentNode.insertBefore(document.createElement("span"),this.nextSibling);\n if(this.bufferedHTML.length)\n s.innerHTML=this.bufferedHTML;\n if((typeof(r)==="string")&&r.length) {\n wikify(r,s,null,this.tiddler);\n return false;\n } else return r!==undefined?r:false;\n } catch(e){alert(e.description||e.toString());return false;}\n };\n link.setAttribute("title",tip||"");\n var URIcode='javascript:void(eval(decodeURIComponent(%22(function(){try{';\n URIcode+=encodeURIComponent(encodeURIComponent(code.replace(/\sn/g,' ')));\n URIcode+='}catch(e){alert(e.description||e.toString())}})()%22)))';\n link.setAttribute("href",URIcode);\n link.style.cursor="pointer";\n if (key) link.accessKey=key.substr(0,1); // single character only\n }\n else { // run inline script code\n var fixup=code.replace(/document.write\ss*\s(/gi,'place.innerHTML+=(');\n var c="function _out(place){"+fixup+"\sn};_out(w.output);";\n try { var out=eval(c); }\n catch(e) { out=e.description?e.description:e.toString(); }\n if (out && out.length) wikify(out,w.output,w.highlightRegExp,w.tiddler);\n }\n }\n w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;\n }\n }\n} )\n//}}}\n\n// // Backward-compatibility for TW2.1.x and earlier\n//{{{\nif (typeof(wikifyPlainText)=="undefined") window.wikifyPlainText=function(text,limit,tiddler) {\n if(limit > 0) text = text.substr(0,limit);\n var wikifier = new Wikifier(text,formatter,null,tiddler);\n return wikifier.wikifyPlain();\n}\n//}}}\n\n// // GLOBAL FUNCTION: $(...) -- 'shorthand' convenience syntax for document.getElementById()\n//{{{\nif (typeof($)=='undefined') { function $(id) { return document.getElementById(id.replace(/^#/,'')); } }\n//}}}
LMS have been used primarily to provide access to "courseware" (e.g. syllabi, lecture notes, supporting slides, reading lists and links). The reasons behind this are, on the one hand, the reluctance of teachers to experiment with organising and moderating Web-based learning processes and, on the other hand, the lack of capability of LMS to handle didactically more complex learning designs."\n\nfrom [[Open Educational Practices and Resources|http://www.olcos.org/cms/upload/docs/olcos_roadmap.pdf]]
Add elements to schema.org\n\nhttp://www.lrmi.net/the-specification
[[Cutting the throat of the University|http://www.downes.ca/files/cutting.htm]]\n\n[[Dr. Guy Bensausan|http://www.itdl.org/journal/jul_04/invited01.htm]] Lookup '''Hexadigm'''\n\n<<<\nAnd: so long as professors refuse to work as part of top-flight educational teams, more\nor less competently managed, their achievements will be eclipsed, over time, by teams\nof skilled professionals producing top-flight educational materials. And when\nprofessors, teaching alone in a classroom, are widely recognized as an inferior (not to\nmention expensive) form of education, the call for privatized education will take full\nflight\n<<<\n\n<<<\nAside from some very broad choices (will I study engineering or philosophy?) students\nhave very few choices in a university. Having selected a program, they are routed to a\nfaculty, given a small selection of options and a bevy of required courses, and are\nassigned professors (if they are lucky, they will learn about and manage to avoid the\nparticularly bad professors). Inside the classroom, they have very little choice about the\ncourse content, nature and number of assignments, criteria for passing, time and place\nof course offerings, labs, workshops or seminars. They have no choice at all regarding\ntheir classmates, limited choice in assigned texts and readings, and are unified in their\nquest for a single (obligatory) goal, the university degree.\n<<<\n\n[[The above come from Stephen Downes|http://www.usdla.org/html/journal/OCT01_Issue/ED_OCT01.PDF]]
[[Colors|http://flatuicolors.com/]]\n[[Icons and such|http://www.pixeden.com/]]\n
array('html', 'text/html'),\n array('xhtml', 'application/xhtml+xml'),\n array('xml', array('application/xml', 'text/xml', 'application/x-xml')),\n array('json', array('application/json', 'text/x-json','application/jsonrequest')),\n array('js', array('text/javascript', 'application/javascript', 'application/x-javascript')),\n array('css', 'text/css'),\n array('rss', 'application/rss+xml'),\n array('yaml', array('application/x-yaml', 'text/yaml')),\n array('atom', 'application/atom+xml'),\n array('text', 'text/plain'),\n array('png', 'image/png'),\n array('jpg', 'image/jpeg', 'image/pjpeg'),\n array('gif', 'image/gif'),\n array('form', 'multipart/form-data'),\n array('url-form', 'application/x-www-form-urlencoded'),\n array('csv', 'text/csv'),
The classic definition of the purpose of a library catalog is that of C. A. Cutter, who stated that the "objects" of a catalog were:\n\nTo enable a person to find a book of which either\n* the author )\n* the title ) is known\n* the subject )\n* To show what the library has\n** by a given author\n**on a given subject\n**in a given kind of literature [poetry, drama, fiction].\n*To assist in the choice of a work\n**as to its edition (bibliographically)\n**as to its character (literary or topical) (Endnote 5).
body {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}\n\na {color:[[ColorPalette::PrimaryMid]];}\na:hover {background-color:[[ColorPalette::PrimaryMid]]; color:[[ColorPalette::Background]];}\na img {border:0;}\n\nh1,h2,h3,h4,h5,h6 {color:[[ColorPalette::SecondaryDark]]; background:transparent;}\nh1 {border-bottom:2px solid [[ColorPalette::TertiaryLight]];}\nh2,h3 {border-bottom:1px solid [[ColorPalette::TertiaryLight]];}\n\n.button {color:[[ColorPalette::PrimaryDark]]; border:1px solid [[ColorPalette::Background]];}\n.button:hover {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::SecondaryLight]]; border-color:[[ColorPalette::SecondaryMid]];}\n.button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::SecondaryDark]];}\n\n.header {background:[[ColorPalette::PrimaryMid]];}\n.headerShadow {color:[[ColorPalette::Foreground]];}\n.headerShadow a {font-weight:normal; color:[[ColorPalette::Foreground]];}\n.headerForeground {color:[[ColorPalette::Background]];}\n.headerForeground a {font-weight:normal; color:[[ColorPalette::PrimaryPale]];}\n\n.tabSelected{color:[[ColorPalette::PrimaryDark]];\n background:[[ColorPalette::TertiaryPale]];\n border-left:1px solid [[ColorPalette::TertiaryLight]];\n border-top:1px solid [[ColorPalette::TertiaryLight]];\n border-right:1px solid [[ColorPalette::TertiaryLight]];\n}\n.tabUnselected {color:[[ColorPalette::Background]]; background:[[ColorPalette::TertiaryMid]];}\n.tabContents {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::TertiaryPale]]; border:1px solid [[ColorPalette::TertiaryLight]];}\n.tabContents .button {border:0;}\n\n#sidebar {}\n#sidebarOptions input {border:1px solid [[ColorPalette::PrimaryMid]];}\n#sidebarOptions .sliderPanel {background:[[ColorPalette::PrimaryPale]];}\n#sidebarOptions .sliderPanel a {border:none;color:[[ColorPalette::PrimaryMid]];}\n#sidebarOptions .sliderPanel a:hover {color:[[ColorPalette::Background]]; background:[[ColorPalette::PrimaryMid]];}\n#sidebarOptions .sliderPanel a:active {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::Background]];}\n\n.wizard {background:[[ColorPalette::PrimaryPale]]; border:1px solid [[ColorPalette::PrimaryMid]];}\n.wizard h1 {color:[[ColorPalette::PrimaryDark]]; border:none;}\n.wizard h2 {color:[[ColorPalette::Foreground]]; border:none;}\n.wizardStep {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];\n border:1px solid [[ColorPalette::PrimaryMid]];}\n.wizardStep.wizardStepDone {background::[[ColorPalette::TertiaryLight]];}\n.wizardFooter {background:[[ColorPalette::PrimaryPale]];}\n.wizardFooter .status {background:[[ColorPalette::PrimaryDark]]; color:[[ColorPalette::Background]];}\n.wizard .button {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryLight]]; border: 1px solid;\n border-color:[[ColorPalette::SecondaryPale]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryDark]] [[ColorPalette::SecondaryPale]];}\n.wizard .button:hover {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Background]];}\n.wizard .button:active {color:[[ColorPalette::Background]]; background:[[ColorPalette::Foreground]]; border: 1px solid;\n border-color:[[ColorPalette::PrimaryDark]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryPale]] [[ColorPalette::PrimaryDark]];}\n\n#messageArea {border:1px solid [[ColorPalette::SecondaryMid]]; background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]];}\n#messageArea .button {color:[[ColorPalette::PrimaryMid]]; background:[[ColorPalette::SecondaryPale]]; border:none;}\n\n.popupTiddler {background:[[ColorPalette::TertiaryPale]]; border:2px solid [[ColorPalette::TertiaryMid]];}\n\n.popup {background:[[ColorPalette::TertiaryPale]]; color:[[ColorPalette::TertiaryDark]]; border-left:1px solid [[ColorPalette::TertiaryMid]]; border-top:1px solid [[ColorPalette::TertiaryMid]]; border-right:2px solid [[ColorPalette::TertiaryDark]]; border-bottom:2px solid [[ColorPalette::TertiaryDark]];}\n.popup hr {color:[[ColorPalette::PrimaryDark]]; background:[[ColorPalette::PrimaryDark]]; border-bottom:1px;}\n.popup li.disabled {color:[[ColorPalette::TertiaryMid]];}\n.popup li a, .popup li a:visited {color:[[ColorPalette::Foreground]]; border: none;}\n.popup li a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border: none;}\n.popup li a:active {background:[[ColorPalette::SecondaryPale]]; color:[[ColorPalette::Foreground]]; border: none;}\n.popupHighlight {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}\n.listBreak div {border-bottom:1px solid [[ColorPalette::TertiaryDark]];}\n\n.tiddler .defaultCommand {font-weight:bold;}\n\n.shadow .title {color:[[ColorPalette::TertiaryDark]];}\n\n.title {color:[[ColorPalette::SecondaryDark]];}\n.subtitle {color:[[ColorPalette::TertiaryDark]];}\n\n.toolbar {color:[[ColorPalette::PrimaryMid]];}\n.toolbar a {color:[[ColorPalette::TertiaryLight]];}\n.selected .toolbar a {color:[[ColorPalette::TertiaryMid]];}\n.selected .toolbar a:hover {color:[[ColorPalette::Foreground]];}\n\n.tagging, .tagged {border:1px solid [[ColorPalette::TertiaryPale]]; background-color:[[ColorPalette::TertiaryPale]];}\n.selected .tagging, .selected .tagged {background-color:[[ColorPalette::TertiaryLight]]; border:1px solid [[ColorPalette::TertiaryMid]];}\n.tagging .listTitle, .tagged .listTitle {color:[[ColorPalette::PrimaryDark]];}\n.tagging .button, .tagged .button {border:none;}\n\n.footer {color:[[ColorPalette::TertiaryLight]];}\n.selected .footer {color:[[ColorPalette::TertiaryMid]];}\n\n.sparkline {background:[[ColorPalette::PrimaryPale]]; border:0;}\n.sparktick {background:[[ColorPalette::PrimaryDark]];}\n\n.error, .errorButton {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::Error]];}\n.warning {color:[[ColorPalette::Foreground]]; background:[[ColorPalette::SecondaryPale]];}\n.lowlight {background:[[ColorPalette::TertiaryLight]];}\n\n.zoomer {background:none; color:[[ColorPalette::TertiaryMid]]; border:3px solid [[ColorPalette::TertiaryMid]];}\n\n.imageLink, #displayArea .imageLink {background:transparent;}\n\n.annotation {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; border:2px solid [[ColorPalette::SecondaryMid]];}\n\n.viewer .listTitle {list-style-type:none; margin-left:-2em;}\n.viewer .button {border:1px solid [[ColorPalette::SecondaryMid]];}\n.viewer blockquote {border-left:3px solid [[ColorPalette::TertiaryDark]];}\n\n.viewer table, table.twtable {border:2px solid [[ColorPalette::TertiaryDark]];}\n.viewer th, .viewer thead td, .twtable th, .twtable thead td {background:[[ColorPalette::SecondaryMid]]; border:1px solid [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::Background]];}\n.viewer td, .viewer tr, .twtable td, .twtable tr {border:1px solid [[ColorPalette::TertiaryDark]];}\n\n.viewer pre {border:1px solid [[ColorPalette::SecondaryLight]]; background:[[ColorPalette::SecondaryPale]];}\n.viewer code {color:[[ColorPalette::SecondaryDark]];}\n.viewer hr {border:0; border-top:dashed 1px [[ColorPalette::TertiaryDark]]; color:[[ColorPalette::TertiaryDark]];}\n\n.highlight, .marked {background:[[ColorPalette::SecondaryLight]];}\n\n.editor input {border:1px solid [[ColorPalette::PrimaryMid]];}\n.editor textarea {border:1px solid [[ColorPalette::PrimaryMid]]; width:100%;}\n.editorFooter {color:[[ColorPalette::TertiaryMid]];}\n\n#backstageArea {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::TertiaryMid]];}\n#backstageArea a {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}\n#backstageArea a:hover {background:[[ColorPalette::SecondaryLight]]; color:[[ColorPalette::Foreground]]; }\n#backstageArea a.backstageSelTab {background:[[ColorPalette::Background]]; color:[[ColorPalette::Foreground]];}\n#backstageButton a {background:none; color:[[ColorPalette::Background]]; border:none;}\n#backstageButton a:hover {background:[[ColorPalette::Foreground]]; color:[[ColorPalette::Background]]; border:none;}\n#backstagePanel {background:[[ColorPalette::Background]]; border-color: [[ColorPalette::Background]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]] [[ColorPalette::TertiaryDark]];}\n.backstagePanelFooter .button {border:none; color:[[ColorPalette::Background]];}\n.backstagePanelFooter .button:hover {color:[[ColorPalette::Foreground]];}\n#backstageCloak {background:[[ColorPalette::Foreground]]; opacity:0.6; filter:'alpha(opacity:60)';\n#ZiddlyFormats,#ZiddlyPowered,#ZiddlyFormats a,#ZiddlyPowered a{color:#fff};}\n
[img[/filestore/uploads/repositories/oasis-model.png]]\n\n!!!More Detail\n[img[/filestore/uploads/repositories/aip-detail.png]]\n\n!!!And Even More\n\n[img[/filestore/uploads/repositories/oasis.gif]]
> Libraries should no longer aim to be the portal to the world of information for a local audience. Libraries should try to be the portal to local information for a global audience.
!!!Edgar_Dale's Cone of Learning\n[img[/filestore/uploads/learning/Edgar_Dale's_cone_of_learning.gif]]\n\n<<<\nThe Profiling Phase includes these questions: What does the learner know? What does the learner need to know? And what way does the learner learn best?\nThe Strategizing Phase includes these questions: What resources do I have? What will constitute the learning journey? Who will do what?\nThe Ascertainment Phase includes these two questions: How do I check that the learner achieved the outcomes? How will I report this?\n<<<\n<<<\nHow do we do that?\n\nWork with Subject Matter Experts to identify what students need to learn\nDevelop objectives and ensure content matches those objectives\nRevise and rewrite content to shape it for learning needs\nStructure content and activities for student learning\nCreate media to support learning (e.g., visual aids for face-to-face, various multimedia for e-learning and online)\nDevelop assessments (note that this does not only mean tests)\nAdapt instructional materials created for one format to another format (usually this is adapting materials from face-to-face to e-learning)\n<<<
{{{\n(function ($, MyObject, undefined) {\n MyObject.publicFunction = function() {\n console.log("This is a public function!");\n };\n var privateFunction = function() {\n console.log("This is a private function!");\n };\n \n MyObject.sayStuff = function() {\n this.publicFunction();\n privateFunction();\n privateNumber++;\n console.log(privateNumber);\n };\n var privateNumber = 0;\n}(jQuery, window.MyObject = window.MyObject || {}));\n\nMyObject.sayStuff();\nMyObject.sayStuff();\nMyObject.publicFunction();\nMyObject.privateFunction(); // Returns error\nprivateFunction(); // Returns error\n}}}\n\n[[from|http://www.impressivewebs.com/my-current-javascript-design-pattern/#comment-32826]]
<<tabs tabsClass\nLayout "Layout Templates" SystemLayout\nSystem "System Tiddlers" SystemTiddlers\nStyle "StyleSheets" StyleSheet\nOptions "Personal Preferences" SystemOptions\nPlugins "Installed Plugins" PluginManager\nShadows "Hidden System Pages" ShadowedPages\n>>
{{{\n* unordered list, level 1\n** unordered list, level 2\n*** unordered list, level 3\n\n# ordered list, level 1\n## ordered list, level 2\n### unordered list, level 3\n\n; definition list, term\n: definition list, description\n}}}\n<<<\n* unordered list, level 1\n** unordered list, level 2\n*** unordered list, level 3\n\n# ordered list, level 1\n## ordered list, level 2\n### unordered list, level 3\n\n; definition list, term\n: definition list, description\n
[img[filestore/uploads/students/studentsearches.jpg]]\n\nfrom [[FirstMonday|http://www.uic.edu/htbin/cgiwrap/bin/ojs/index.php/fm/article/view/3484/2857]]
<<<\nTo set aside all the skepticism of a universtiy strategic plan, I would say that one thing that it absolutely needs is a comprehensive plan for meeting the challenges of entering a digital age. \n\nIn teaching, \n* we need to figure out how to teach well online, \n* build physical spaces that facilitate in-class learning with digital media, \n* figure out how to teach in those spaces too, \n* help our students develop digital literacies, and \n* construct a network that will support all that. \n\nIn research \n* we similarly need to support faculty in transitioning to digital publication, \n* determine how to evaluate new scholarly practices, and \n* create digital infrastructure to support these activites. \n\nPerhaps more importantly we need to develop smart administrative practices that can make good decisions out of student data. This last one seems to me to be the real black swan for higher education. We think we know what student information systems should look like because we've been using them for years, but I really don't think we are prepared for the level of data that will become available. \n<<<\n\n//The above was formatted by me//\n[[from Alex Reid|http://www.alex-reid.net/2013/01/university-futures.html]]
z9EIuN1UUVjh7ymnmKk
/***\n|Name|DatePlugin|\n|Source|http://www.TiddlyTools.com/#DatePlugin|\n|Version|2.3.1|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides||\n|Description|formatted dates plus popup menu with 'journal' link, changes and (optional) reminders|\n\nThere are quite a few calendar generators, reminders, to-do lists, 'dated tiddlers' journals, blog-makers and GTD-like schedule managers that have been built around TW. While they all have different purposes, and vary in format, interaction, and style, in one way or another each of these plugins displays and/or uses date-based information to make finding, accessing and managing relevant tiddlers easier. This plugin provides a general approach to embedding dates and date-based links/menus within tiddler content.\n\nThis plugin display formatted dates, for the specified year, month, day using number values or mathematical expressions such as (Y+1) or (D+30). Optionally, you can create a link from the formatted output to a 'dated tiddler' for quick blogging or create a popup menu that includes the dated tiddler link plus links to changes made on that date as well as links to any pending reminders for the coming 31 days (if the RemindersPlugin is installed). This plugin also provides a public API for easily incorporating formatted date output (with or without the links/popups) into other plugins, such as calendar generators, etc.\n!!!!!Usage\n<<<\nWhen installed, this plugin defines a macro: {{{<<date [mode] [date] [format] [linkformat]>>}}}. All of the macro parameters are optional and, in it's simplest form, {{{<<date>>}}}, it is equivalent to the ~TiddlyWiki core macro, {{{<<today>>}}}.\n\nHowever, where {{{<<today>>}}} simply inserts the current date/time in a predefined format (or custom format, using {{{<<today [format]>>}}}), the {{{<<date>>}}} macro's parameters take it much further than that:\n* [mode] is either ''display'', ''link'' or ''popup''. If omitted, it defaults to ''display''. This param let's you select between simply displaying a formatted date, or creating a link to a specific 'date titled' tiddler or a popup menu containing a dated tiddler link, plus links to changes and reminders.\n* [date] lets you enter ANY date (not just today) as ''year, month, and day values or simple mathematical expressions'' using pre-defined variables, Y, M, and D for the current year, month and day, repectively. You can display the modification date of the current tiddler by using the keyword: ''tiddler'' in place of the year, month and day parameters. Use ''tiddler://name-of-tiddler//'' to display the modification date of a specific tiddler. You can also use keywords ''today'' or ''filedate'' to refer to these //dynamically changing// date/time values. \n* [format] and [linkformat] uses standard ~TiddlyWiki date formatting syntax. The default is "YYYY.0MM.0DD"\n>^^''DDD'' - day of week in full (eg, "Monday"), ''DD'' - day of month, ''0DD'' - adds leading zero^^\n>^^''MMM'' - month in full (eg, "July"), ''MM'' - month number, ''0MM'' - adds leading zero^^\n>^^''YYYY'' - full year, ''YY'' - two digit year, ''hh'' - hours, ''mm'' - minutes, ''ss'' - seconds^^\n>^^//note: use of hh, mm or ss format codes is only supported with ''tiddler'', ''today'' or ''filedate'' values//^^\n* [linkformat] - specify an alternative date format so that the title of a 'dated tiddler' link can have a format that differs from the date's displayed format\n\nIn addition to the macro syntax, DatePlugin also provides a public javascript API so that other plugins that work with dates (such as calendar generators, etc.) can quickly incorporate date formatted links or popups into their output:\n\n''{{{showDate(place, date, mode, format, linkformat, autostyle, weekend)}}}'' \n\nNote that in addition to the parameters provided by the macro interface, the javascript API also supports two optional true/false parameters:\n* [autostyle] - when true, the font/background styles of formatted dates are automatically adjusted to show the date's status: 'today' is boxed, 'changes' are bold, 'reminders' are underlined, while weekends and holidays (as well as changes and reminders) can each have a different background color to make them more visibly distinct from each other.\n* [weekend] - true indicates a weekend, false indicates a weekday. When this parameter is omitted, the plugin uses internal defaults to automatically determine when a given date falls on a weekend.\n<<<\n!!!!!Examples\n<<<\nThe current date: <<date>>\nThe current time: <<date today "0hh:0mm:0ss">>\nToday's blog: <<date link today "DDD, MMM DDth, YYYY">>\nRecent blogs/changes/reminders: <<date popup Y M D-1 "yesterday">> <<date popup today "today">> <<date popup Y M D+1 "tomorrow">>\nThe first day of next month will be a <<date Y M+1 1 "DDD">>\nThis tiddler (DatePlugin) was last updated on: <<date tiddler "DDD, MMM DDth, YYYY">>\nThe SiteUrl was last updated on: <<date tiddler:SiteUrl "DDD, MMM DDth, YYYY">>\nThis document was last saved on <<date filedate "DDD, MMM DDth, YYYY at 0hh:0mm:0ss">>\n<<date 2006 07 24 "MMM DDth, YYYY">> will be a <<date 2006 07 24 "DDD">>\n<<<\n!!!!!Installation\n<<<\nimport (or copy/paste) the following tiddlers into your document:\n''DatePlugin'' (tagged with <<tag systemConfig>>)\n<<<\n!!!!!Revision History\n<<<\n''2007.06.20 [2.3.1]'' in onClickDatePopup(), use Popup.show() instead of deprecated ScrollToTiddlerPopup(). Fixes fatal error that prevents popups from being properly displayed\n''2007.05.31 [2.3.0]'' list "created" tiddlers in date popup. Also, force re-cache of created/modified indices when displaying current date and store.isDirty(), so that popup is kept in sync with tiddler changes.\n''2006.05.09 [2.2.1]'' added "todaybg" handling to set background color of current date. Also, honor excludeLists tag when getting lists of tiddlers. Based on suggestions by Mark Hulme.\n''2006.05.05 [2.2.0]'' added "linkedbg" handling to set background color when a 'dated tiddler' exists. Based on a suggestion by Mark Hulme.\n''2006.03.08 [2.1.2]'' add 'override leadtime' flag param in call to findTiddlersWithReminders(), and add "Enter a title" default text to new reminder handler. Thanks to Jeremy Sheeley for these additional tweaks.\n''2006.03.06 [2.1.0]'' hasReminders() nows uses window.reminderCacheForCalendar[] when present. If calendar cache is not present, indexReminders() now uses findTiddlersWithReminders() with a 90-day look ahead to check for reminders. Also, switched default background colors for autostyled dates: reminders are now greenish ("c0ffee") and holidays are now reddish ("ffaace").\n''2006.02.14 [2.0.5]'' when readOnly is set (by TW core), omit "new reminders..." popup menu item and, if a "dated tiddler" does not already exist, display the date as simple text instead of a link.\n''2006.02.05 [2.0.4]'' added var to variables that were unintentionally global. Avoids FireFox 1.5.0.1 crash bug when referencing global variables\n''2006.01.18 [2.0.3]'' In 1.2.x the tiddler editor's text area control was given an element ID=("tiddlerBody"+title), so that it was easy to locate this field and programmatically modify its content. With the addition of configuration templates in 2.x, the textarea no longer has an ID assigned. To find this control we now look through all the child nodes of the tiddler editor to locate a "textarea" control where attribute("edit") equals "text", and then append the new reminder to the contents of that control.\n''2006.01.11 [2.0.2]'' correct 'weekend' override detection logic in showDate()\n''2006.01.10 [2.0.1]'' allow custom-defined weekend days (default defined in config.macros.date.weekend[] array)\nadded flag param to showDate() API to override internal weekend[] array\n''2005.12.27 [2.0.0]'' Update for TW2.0\nAdded parameter handling for 'linkformat'\n''2005.12.21 [1.2.2]'' FF's date.getYear() function returns 105 (for the current year, 2005). When calculating a date value from Y M and D expressions, the plugin adds 1900 to the returned year value get the current year number. But IE's date.getYear() already returns 2005. As a result, plugin calculated date values on IE were incorrect (e.g., 3905 instead of 2005). Adding +1900 is now conditional so the values will be correct on both browsers.\n''2005.11.07 [1.2.1]'' added support for "tiddler" dynamic date parameter\n''2005.11.06 [1.2.0]'' added support for "tiddler:title" dynamic date parameter\n''2005.11.03 [1.1.2]'' when a reminder doesn't have a specified title parameter, use the title of the tiddler that contains the reminder as "fallback" text in the popup menu. Based on a suggestion from BenjaminKudria.\n''2005.11.03 [1.1.1]'' Temporarily bypass hasReminders() logic to avoid excessive overhead from generating the indexReminders() cache. While reminders can still appear in the popup menu, they just won't be indicated by auto-styling the date number that is displayed. This single change saves approx. 60% overhead (5 second delay reduced to under 2 seconds).\n''2005.11.01 [1.1.0]'' corrected logic in hasModifieds() and hasReminders() so caching of indexed modifieds and reminders is done just once, as intended. This should hopefully speed up calendar generators and other plugins that render multiple dates...\n''2005.10.31 [1.0.1]'' documentation and code cleanup\n''2005.10.31 [1.0.0]'' initial public release\n''2005.10.30 [0.9.0]'' pre-release\n<<<\n!!!!!Credits\n<<<\nThis feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]].\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.date = {major: 2, minor: 3, revision: 1, date: new Date(2007,6,20)};\n//}}}\n\n//{{{\nconfig.macros.date = {\n format: "YYYY.0MM.0DD", // default date display format\n linkformat: "YYYY.0MM.0DD", // 'dated tiddler' link format\n linkedbg: "#babb1e", // "babble"\n todaybg: "#ffab1e", // "fable"\n weekendbg: "#c0c0c0", // "cocoa"\n holidaybg: "#ffaace", // "face"\n createdbg: "#bbeeff", // "beef"\n modifiedsbg: "#bbeeff", // "beef"\n remindersbg: "#c0ffee", // "coffee"\n holidays: [ "01/01", "07/04", "07/24", "11/24" ], // NewYearsDay, IndependenceDay(US), Eric's Birthday (hooray!), Thanksgiving(US)\n weekend: [ 1,0,0,0,0,0,1 ] // [ day index values: sun=0, mon=1, tue=2, wed=3, thu=4, fri=5, sat=6 ]\n};\n//}}}\n\n//{{{\nconfig.macros.date.handler = function(place,macroName,params)\n{\n // do we want to see a link, a popup, or just a formatted date?\n var mode="display";\n if (params[0]=="display") { mode=params[0]; params.shift(); }\n if (params[0]=="popup") { mode=params[0]; params.shift(); }\n if (params[0]=="link") { mode=params[0]; params.shift(); }\n // get the date\n var now = new Date();\n var date = now;\n if (!params[0] || params[0]=="today")\n { params.shift(); }\n else if (params[0]=="filedate")\n { date=new Date(document.lastModified); params.shift(); }\n else if (params[0]=="tiddler")\n { date=store.getTiddler(story.findContainingTiddler(place).id.substr(7)).modified; params.shift(); }\n else if (params[0].substr(0,8)=="tiddler:")\n { var t; if ((t=store.getTiddler(params[0].substr(8)))) date=t.modified; params.shift(); }\n else {\n var y = eval(params.shift().replace(/Y/ig,(now.getYear()<1900)?now.getYear()+1900:now.getYear()));\n var m = eval(params.shift().replace(/M/ig,now.getMonth()+1));\n var d = eval(params.shift().replace(/D/ig,now.getDate()+0));\n date = new Date(y,m-1,d);\n }\n // date format with optional custom override\n var format=this.format; if (params[0]) format=params.shift();\n var linkformat=this.linkformat; if (params[0]) linkformat=params.shift();\n showDate(place,date,mode,format,linkformat);\n}\n//}}}\n\n//{{{\nwindow.showDate=showDate;\nfunction showDate(place,date,mode,format,linkformat,autostyle,weekend)\n{\n if (!mode) mode="display";\n if (!format) format=config.macros.date.format;\n if (!linkformat) linkformat=config.macros.date.linkformat;\n if (!autostyle) autostyle=false;\n\n // format the date output\n var title = date.formatString(format);\n var linkto = date.formatString(linkformat);\n\n // just show the formatted output\n if (mode=="display") { place.appendChild(document.createTextNode(title)); return; }\n\n // link to a 'dated tiddler'\n var link = createTiddlyLink(place, linkto, false);\n link.appendChild(document.createTextNode(title));\n link.title = linkto;\n link.date = date;\n link.format = format;\n link.linkformat = linkformat;\n\n // if using a popup menu, replace click handler for dated tiddler link\n // with handler for popup and make link text non-italic (i.e., an 'existing link' look)\n if (mode=="popup") {\n link.onclick = onClickDatePopup;\n link.style.fontStyle="normal";\n }\n\n // format the popup link to show what kind of info it contains (for use with calendar generators)\n if (!autostyle) return;\n if (hasModifieds(date)||hasCreateds(date))\n { link.style.fontStyle="normal"; link.style.fontWeight="bold"; }\n if (hasReminders(date))\n { link.style.textDecoration="underline"; }\n if(isToday(date))\n { link.style.border="1px solid black"; }\n\n if( (weekend!=undefined?weekend:isWeekend(date)) && (config.macros.date.weekendbg!="") )\n { place.style.background = config.macros.date.weekendbg; }\n if(isHoliday(date)&&(config.macros.date.holidaybg!=""))\n { place.style.background = config.macros.date.holidaybg; }\n if (hasCreateds(date)&&(config.macros.date.createdbg!=""))\n { place.style.background = config.macros.date.createdbg; }\n if (hasModifieds(date)&&(config.macros.date.modifiedsbg!=""))\n { place.style.background = config.macros.date.modifiedsbg; }\n if (store.tiddlerExists(linkto)&&(config.macros.date.linkedbg!=""))\n { place.style.background = config.macros.date.linkedbg; }\n if (hasReminders(date)&&(config.macros.date.remindersbg!=""))\n { place.style.background = config.macros.date.remindersbg; }\n if(isToday(date)&&(config.macros.date.todaybg!=""))\n { place.style.background = config.macros.date.todaybg; }\n}\n//}}}\n\n//{{{\nfunction isToday(date) // returns true if date is today\n { var now=new Date(); return ((now-date>=0) && (now-date<86400000)); }\n\nfunction isWeekend(date) // returns true if date is a weekend\n { return (config.macros.date.weekend[date.getDay()]); }\n\nfunction isHoliday(date) // returns true if date is a holiday\n{\n var longHoliday = date.formatString("0MM/0DD/YYYY");\n var shortHoliday = date.formatString("0MM/0DD");\n for(var i = 0; i < config.macros.date.holidays.length; i++) {\n var holiday=config.macros.date.holidays[i];\n if (holiday==longHoliday||holiday==shortHoliday) return true;\n }\n return false;\n}\n//}}}\n\n//{{{\n// Event handler for clicking on a day popup\nfunction onClickDatePopup(e)\n{\n if (!e) var e = window.event;\n var theTarget = resolveTarget(e);\n var popup = Popup.create(this);\n if(popup) {\n // always show dated tiddler link (or just date, if readOnly) at the top...\n if (!readOnly || store.tiddlerExists(this.date.formatString(this.linkformat)))\n createTiddlyLink(popup,this.date.formatString(this.linkformat),true);\n else\n createTiddlyText(popup,this.date.formatString(this.linkformat));\n addCreatedsToPopup(popup,this.date,this.format);\n addModifiedsToPopup(popup,this.date,this.format);\n addRemindersToPopup(popup,this.date,this.linkformat);\n }\n Popup.show(popup,false);\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n return(false);\n}\n//}}}\n\n//{{{\nfunction indexCreateds() // build list of tiddlers, hash indexed by creation date\n{\n var createds= { };\n var tiddlers = store.getTiddlers("title","excludeLists");\n for (var t = 0; t < tiddlers.length; t++) {\n var date = tiddlers[t].created.formatString("YYYY0MM0DD")\n if (!createds[date])\n createds[date]=new Array();\n createds[date].push(tiddlers[t].title);\n }\n return createds;\n}\nfunction hasCreateds(date) // returns true if date has created tiddlers\n{\n if (!config.macros.date.createds) config.macros.date.createds=indexCreateds();\n return (config.macros.date.createds[date.formatString("YYYY0MM0DD")]!=undefined);\n}\n\nfunction addCreatedsToPopup(popup,when,format)\n{\n var force=(store.isDirty() && when.formatString("YYYY0MM0DD")==new Date().formatString("YYYY0MM0DD"));\n if (force || !config.macros.date.createds) config.macros.date.createds=indexCreateds();\n var indent=String.fromCharCode(160)+String.fromCharCode(160);\n var createds = config.macros.date.createds[when.formatString("YYYY0MM0DD")];\n if (createds) {\n createds.sort();\n var e=createTiddlyElement(popup,"div",null,null,"created:");\n for(var t=0; t<createds.length; t++) {\n var link=createTiddlyLink(popup,createds[t],false);\n link.appendChild(document.createTextNode(indent+createds[t]));\n createTiddlyElement(popup,"br",null,null,null);\n }\n }\n}\n//}}}\n\n//{{{\nfunction indexModifieds() // build list of tiddlers, hash indexed by modification date\n{\n var modifieds= { };\n var tiddlers = store.getTiddlers("title","excludeLists");\n for (var t = 0; t < tiddlers.length; t++) {\n var date = tiddlers[t].modified.formatString("YYYY0MM0DD")\n if (!modifieds[date])\n modifieds[date]=new Array();\n modifieds[date].push(tiddlers[t].title);\n }\n return modifieds;\n}\nfunction hasModifieds(date) // returns true if date has modified tiddlers\n{\n if (!config.macros.date.modifieds) config.macros.date.modifieds = indexModifieds();\n return (config.macros.date.modifieds[date.formatString("YYYY0MM0DD")]!=undefined);\n}\n\nfunction addModifiedsToPopup(popup,when,format)\n{\n var force=(store.isDirty() && when.formatString("YYYY0MM0DD")==new Date().formatString("YYYY0MM0DD"));\n if (force || !config.macros.date.modifieds) config.macros.date.modifieds=indexModifieds();\n var indent=String.fromCharCode(160)+String.fromCharCode(160);\n var mods = config.macros.date.modifieds[when.formatString("YYYY0MM0DD")];\n if (mods) {\n mods.sort();\n var e=createTiddlyElement(popup,"div",null,null,"changed:");\n for(var t=0; t<mods.length; t++) {\n var link=createTiddlyLink(popup,mods[t],false);\n link.appendChild(document.createTextNode(indent+mods[t]));\n createTiddlyElement(popup,"br",null,null,null);\n }\n }\n}\n//}}}\n\n//{{{\nfunction indexReminders(date,leadtime) // build list of tiddlers with reminders, hash indexed by reminder date\n{\n var reminders = { };\n if(window.findTiddlersWithReminders!=undefined) { // reminder plugin is installed\n // DEBUG var starttime=new Date();\n var t = findTiddlersWithReminders(date, [0,leadtime], null, null, 1);\n for(var i=0; i<t.length; i++) reminders[t[i].matchedDate]=true;\n // DEBUG var out="Found "+t.length+" reminders in "+((new Date())-starttime+1)+"ms\sn";\n // DEBUG out+="startdate: "+date.toLocaleDateString()+"\sn"+"leadtime: "+leadtime+" days\sn\sn";\n // DEBUG for(var i=0; i<t.length; i++) { out+=t[i].matchedDate.toLocaleDateString()+" "+t[i].params.title+"\sn"; }\n // DEBUG alert(out);\n }\n return reminders;\n}\n\nfunction hasReminders(date) // returns true if date has reminders\n{\n if (window.reminderCacheForCalendar)\n return window.reminderCacheForCalendar[date]; // use calendar cache\n if (!config.macros.date.reminders)\n config.macros.date.reminders = indexReminders(date,90); // create a 90-day leadtime reminder cache\n return (config.macros.date.reminders[date]);\n}\n\nfunction addRemindersToPopup(popup,when,format)\n{\n if(window.findTiddlersWithReminders==undefined) return; // reminder plugin not installed\n\n var indent = String.fromCharCode(160)+String.fromCharCode(160);\n var reminders=findTiddlersWithReminders(when, [0,31],null,null,1);\n var e=createTiddlyElement(popup,"div",null,null,"reminders:"+(!reminders.length?" none":""));\n for(var t=0; t<reminders.length; t++) {\n link = createTiddlyLink(popup,reminders[t].tiddler,false);\n var diff=reminders[t].diff;\n diff=(diff<1)?"Today":((diff==1)?"Tomorrow":diff+" days");\n var txt=(reminders[t].params["title"])?reminders[t].params["title"]:reminders[t].tiddler;\n link.appendChild(document.createTextNode(indent+diff+" - "+txt));\n createTiddlyElement(popup,"br",null,null,null);\n }\n if (readOnly) return; // omit "new reminder..." link\n var link = createTiddlyLink(popup,indent+"new reminder...",true); createTiddlyElement(popup,"br");\n var title = when.formatString(format);\n link.title="add a reminder to '"+title+"'";\n link.onclick = function() {\n // show tiddler editor\n story.displayTiddler(null, title, 2, null, null, false, false);\n // find body 'textarea'\n var c =document.getElementById("tiddler" + title).getElementsByTagName("*");\n for (var i=0; i<c.length; i++) if ((c[i].tagName.toLowerCase()=="textarea") && (c[i].getAttribute("edit")=="text")) break;\n // append reminder macro to tiddler content\n if (i<c.length) {\n if (store.tiddlerExists(title)) c[i].value+="\sn"; else c[i].value="";\n c[i].value += "<<reminder";\n c[i].value += " day:"+when.getDate();\n c[i].value += " month:"+(when.getMonth()+1);\n c[i].value += " year:"+when.getFullYear();\n c[i].value += ' title:"Enter a title" >>';\n }\n };\n}\n//}}}\n
[[Reference|http://dublincore.org/documents/dc-ds-xml/]]\n\nAccording to the "Description Set Model" of the DCMI Abstract Model [ABSTRACT-MODEL], a DC description set has the following structure:\n\n* a description set is made up of one or more descriptions\n* a description is made up of\n** zero or one described resource URI and\n** one or more statements\n* a statement is made up of\n** exactly one property URI and\n** exactly one value surrogate\n* a value surrogate is either a literal value surrogate or a non-literal value surrogate\n** a literal value surrogate is made up of\n** exactly one value string\n* a non-literal value surrogate is made up of\n** zero or one value URIs\n** zero or one vocabulary encoding scheme URIs\n** zero or more value strings\n* a value string is either a plain value string or a typed value string\n** a plain value string may be associated with a value string language\n** a typed value string is associated with a syntax encoding scheme URI\n** a non-literal value may be described by another description
>Topic Maps was created to support high-level indexing of information resources to increase findability. RDF on the other hand, was intended to support the vision of the Semantic Web as a large database by providing structured metadata about resources and a foundation for logical inferencing. RDF is resource-centric, whereas Topic Maps are subject-centric. In RDF one starts with information resources and attaches metadata structures to them; in Topic Maps, the focus is the subject that the information is "about". Topic Maps becomes an information overlay. It also has some built in features that make it very interesting for knowledge centric applications, such as scopes, merging and reification.\n\n!!! Using //explicit// association make topic maps different than RDF\n\n>Below, the same relationship is shown in RDF. Obviously, the relationship is a lot simpler, but it is harder to extend, and it is also not clear to software with no knowledge of the schema that it is a relationship. \n\n<<<\nThere are three major differences between how RDF and topic maps represent relationships:\n\n* The most obvious is the difference in the structure of the representation. RDF relates one thing to another, while topic maps can relate any number of things, and make it clear what involvement each has in the relationship. It is possible to achieve something similar with RDF, but that requires extra work, both in conceptualization and in implementation.\n\n* Another difference is that in topic maps relationships are inherently two-way. That is, you cannot say that I work for Ontopia without at the same time saying that Ontopia employs me. It is possible to traverse relationships backwards in RDF, and it is also possible to specify inverse properties, but this is not inherent in the way relationships are represented.\n\n* A third, and much more subtle, difference is that there is no way of knowing when an RDF statement is asserting a relationship between two abstract things and when it is saying that the one thing is really a resource that has information about the other, which is an abstract thing. Some statements also assign attributes to things, but it is possible to tell these apart, as they will have literals as objects instead of URIs.\n<<<\n\n!!! Occurrences as Attributes\n\n<<<\nThis is perhaps the point at which the differences between topic maps and RDF become most pronounced. There are three different classes of attributes involved here, and these are worth discussing separately:\n\n* Names can be represented in both topic maps and RDF, but only in topic maps is it possible for software with no knowledge of the schema to know which properties are names. The result is that in any interface topics can be represened by their names, something that requires schema knowledge in RDF. For generic applications this is very useful.\n\n* Simple properties are very similar in topic maps and RDF. A string is attached to the thing, and another thing tells you what the relationship of the string to the thing is.\n\n* Resources relevant to a thing are indistinguishable from relationships in RDF, both being represented by statements. In topic maps, the fact that the relationship is an occurrence relationship makes it clear that the resource contains more information about the thing. The occurrence type makes it clear what kind of information is found there.\n\nAgain topic maps are found to be higher-level than RDF and to contain more explicit semantics. This means both that it is easier to develop generic software for topic maps, and that conceptualization of topic map applications is easier, because some of the work has been done in the standard itself.\n<<<\n\n !!! Context (Scopes)\n>The main differences between topic maps and RDF in this area is that context is much easier to work with in topic maps, and that generic software can know how contexts are represented in each application.\n\n!!!Reification\nWhat's the difference? (blank nodes?)\n\n!!! Summary\n>RDF and topic maps have the same central concept, which I have here called 'thing'. They have entirely different notions about how characteristics are assigned to these 'things', however, and their ideas about how to establish the identities of the 'things' are also different. In RDF statements, in the form of (subject, property, object) triples, are the only way of assigning characteristics, while in topic maps topics may have names, occurrences, and participate in associations.\n
[img[/filestore/uploads/repositories/zebra.png]]\n\n[[Search Engine Comparison| http://wrg.upf.edu/WRG/dctos/Middleton-Baeza.pdf]]
!!! Pretty much stay the way we are but with better language\nhttp://library.pdx.edu/strategic-plan.html\n\n!!! look at cost / benefit\n* brandies\n!!! More than us\n* http://www.lib.jmu.edu/plan/goals.aspx\n\n!!! Take a look\n* http://library.nyu.edu/about/Strategic_Plan.pdf\n//from NYU//\n\n1 USER EXPERIENCE\nCreate a user experience that is high quality,\nlocation, access method, or objective.\n\n2 TEACHING ROLE\nExpand and strengthen our teaching role and\neducational impact as an academic partner.\n\n3 DIGITAL INFRASTRUCTURE\nBuild the sustainable digital infrastructure\n\n4 COLLECTIONS\n\nmaterials.\n\n5 ORGANIZATIONAL CULTURE\nDevelop and sustain a skilled and engaged\n\n\n6 Web Integration\n Integrate with users everyday life and tools\n\n7 OUTREACH & MARKETING\n\n8 DATA-DRIVEN EXPLORATION & DECISION MAKING\n\n\n
<<<\nEffective Learning Techniques is the focus of a special issue of Psychological Science in the Public Interest. The authors review evidence for the efficacy of 10 learning techniques that are commonly used in educational settings. Their basic question: would using these techniques boost student performance along four dimensions: learning condition (e.g. studying alone vs. in a group); student qualities (e.g., age or ability); materials (e.g., science, history, math); and type of assessment (essay vs. multiple-choice tests). Based on available research, each technique was categorized as having high, moderate, or low utility. Briefly, this is what they found:\n\n1. Elaborative interrogation. Gist of the technique: get students to generate explanations for facts. Supposed to work by facilitating the integration of new information and prior learning. Rated as having moderate utility. Seems to work best when applied to relatively simple or short fact lists, and may not work as well for students lacking knowledge on the topic. \n2. Self-explanation. Gist of the technique: get students to explain what they are doing as they are learning (e.g., solving a problem). Supposed to work like elaborative interrogation, by promoting integration of new/old information. Rated as having moderate utility. Generalizes across content and different tasks and for a variety of learning outcomes. Works better when students are taught how to do this. Drawback is that it may take too much time. Also, not clear how well the effects persist over time.\n3. Summarization. Gist of the technique: students should identify key points of a text without trying to learn unimportant information. Obviously supposed to work by getting students to focus on high-level meaning, core lessons, etc. Rated as having low utility. Reason is that most students don’t know how to do it well, and so it is effective for only the highly skilled. Learning to do it well requires “extensive” training and may not be feasible for most faculty. Also, unclear what types of tasks summarization will help with, and what textual factors may influence its efficacy (e.g., text length).\n4. Highlighting and underlining. Supposed to work because it isolates critical terms, phrases, etc., so that they will “pop out” of the text and thereby become more memorable. Rated as having low utility. For most students, highlighting/underlining has no effect on performance above just reading. There is some evidence that it may help students who already know how to highlight effectively. Highlighting may reduce performance on “higher-level tasks that require inference-making.”\n5. The keyword mnemonic. Gist of the technique: uses mental images to assist with remembering facts, lists of words, or associations between words. An example is creating an image to help remember the translation of a word from another language, as when an image of a dentist holding a tooth is used to remember that la dente (which sounds like dentist) means tooth. Most students don’t know/use this technique. Rated as having low utility. Although this can work for many kinds of materials, at least for short-term memorization, the resulting learning does not endure. It is also not efficient. \n6. Imagery used for text learning. Gist of the technique: students generate an image of a paragraph (that would incorporate key elements of the content) to help remember it. Idea is that it can help organize information or help with integration of information. Rated as low utility. May be beneficial for texts that lend themselves to visual imagery and for memorization, but is not generalizable. \n7. Rereading. Gist of the technique: obviously to read texts at least two times. Supposed to work by increasing the amount of information encoded into memory and/or facilitating higher-level processing upon repeated readings. Rated as having low utility. Advantages are that students do not need training and that it can help with recall-based memory. However, effects on comprehension are unclear.\n8. Practice testing. Gist of the technique: is that students practice giving responses that they may need to give on the actual test. Includes many forms of testing, including flashcards, practice problems from a book, or practice tests that mimic the actual test. Supposed to work by triggering students to search their memory to find the correct response, and this may help make connections to related information. Also may enhance mental organization of information. Rated as having high utility. Does not require much training, is relatively efficient, and seems to work in many different educational contexts.\n9. Distributed practice. Gist of the technique: students engage in learning activities that are distributed across time (spaced), as opposed to trying to cram intensively in one long session. Supposed to work because later learning sessions help to remind the student of the earlier sessions and what was learned then. Another explanation is that, if there are very short intervals between learning sessions, students will not have to try as hard to remember, and they may have a false sense of what they actually know. Also allows for consolidation of earlier learning. Rated as having high utility. Works across many kinds of materials, produces more durable learning, and for complex and simple information.\n10. Interleaved practice. Gist of the technique: rather than block studying in which a student studies all of the material for one test and then moves on to study all of the material for another test, studying is interwoven. Thus students alternate between studying for one and then another test. Supposed to work by enhancing organization in memory (students learn to distinguish between different kinds of “problems” and between different kinds of “solutions.” Also requires more tapping more often into long-term memory and repeated retrieval. Rated as having moderate utility. Seems to work in math and similar kinds of skills. However, the research on this technique is limited and mixed. \n \nDunlosky, J., Rawson, K.A., Marsh, E.J., Nathan, M.J., & Willingham, D.T. (2013). Improving students’ learning with effective learning techniques: Promising directions for cognitive and educational psychology. Psychological Science in the Public Interest, 14, 4-58. \n_______\n<<<\nSummary (of long article) by Dan Barritt
<<<\nSince the Internet works like a giant copy machine, Kelly believes that creators need to focus on generating value in new ways, rather \nthan relying on simply selling copies. He identi(es eight categories of value that can bring in revenue, even when books, music, \ngames, so*ware—anything digital—is available freely or nearly so:\n. \n*Immediacy. You can eventually get anything you want for free if you wait long enough. But if you want it as soon as the creator \nor the artist has created it, you may be willing to pay for the immediacy of it. \n* Personalization. If raw music is free, you might pay to personalize it to the acoustics of your living room.\n* Authentication. People will pay for the “o+cial” version of so*ware to make sure they have the most complete, robust copy \nwith guarantees, updates, etc.\n* Findability. A particular piece of content may be free or nearly so. But in a nearly in(nite library, you may pay for a good way to \nlocate just what you’re looking for. \n* Embodiment. The recording is free, but you’ll pay to see the performer, the author, the artist. \n* Interpretation. The old joke in the so*ware industry is that the so*ware is free…but the manual is $1,000. Training, education \nand understanding will cost money. \n* Accessibility. Paying for the ability to get something immediately, in your preferred format. \n* Attention. That is, patronage. People will pay if the creator is giving them some attention.\n<<<
/***\n|''Name:''|DropDownMenuPlugin|\n|''Description:''|Create dropdown menus from unordered lists|\n|''Author:''|Saq Imtiaz ( lewcid@gmail.com )|\n|''Source:''|http://tw.lewcid.org/#DropDownMenuPlugin|\n|''Code Repository:''|http://tw.lewcid.org/svn/plugins|\n|''Version:''|2.1|\n|''Date:''|11/04/2007|\n|''License:''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|\n|''~CoreVersion:''|2.2.5|\n\n!!Usage:\n* create a two-level unordered list using wiki syntax, and place {{{<<dropMenu>>}}} on the line after it.\n* to create a vertical menu use {{{<<dropMenu vertical>>}}} instead.\n* to assign custom classes to the list, just pass them as parameters to the macro {{{<<dropMenu className1 className2 className3>>}}}\n\n!!Features:\n*Supports just a single level of drop-downs, as anything more usually provides a poor experience for the user.\n* Very light weight, about 1.5kb of JavaScript and 4kb of CSS.\n* Comes with two built in css 'themes', the default horizontal and vertical. \n\n!!Customizing:\n* to customize the appearance of the menu's, you can either add a custom class as described above or, you can edit the CSS via the StyleSheetDropDownMenu shadow tiddler.\n\n!!Examples:\n* [[DropDownMenuDemo]]\n\n***/\n// /%\n//!BEGIN-PLUGIN-CODE\nconfig.macros.dropMenu={\n\n dropdownchar: "\su25bc",\n\n handler : function(place,macroName,params,wikifier,paramString,tiddler){\n list = findRelated(place.lastChild,"UL","tagName","previousSibling");\n if (!list)\n return;\n addClass(list,"suckerfish");\n if (params.length){\n addClass(list,paramString);\n }\n this.fixLinks(list);\n },\n \n fixLinks : function(el){\n var els = el.getElementsByTagName("li");\n for(var i = 0; i < els.length; i++) {\n if(els[i].getElementsByTagName("ul").length>0){\n var link = findRelated(els[i].firstChild,"A","tagName","nextSibling");\n if(!link){\n var ih = els[i].firstChild.data;\n els[i].removeChild(els[i].firstChild);\n var d = createTiddlyElement(null,"a",null,null,ih+this.dropdownchar,{href:"javascript:;"});\n els[i].insertBefore(d,els[i].firstChild);\n }\n else{\n link.firstChild.data = link.firstChild.data + this.dropdownchar;\n removeClass(link,"tiddlyLinkNonExisting");\n }\n }\n els[i].onmouseover = function() {\n addClass(this, "sfhover");\n };\n els[i].onmouseout = function() {\n removeClass(this, "sfhover");\n };\n }\n } \n};\n\nconfig.shadowTiddlers["StyleSheetDropDownMenuPlugin"] = \n "/*{{{*/\sn"+\n "/***** LAYOUT STYLES - DO NOT EDIT! *****/\sn"+\n "ul.suckerfish, ul.suckerfish ul {\sn"+\n " margin: 0;\sn"+\n " padding: 0;\sn"+\n " list-style: none;\sn"+\n " line-height:1.4em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li {\sn"+\n " display: inline-block; \sn"+\n " display: block;\sn"+\n " float: left; \sn"+\n "}\sn\sn"+\n "ul.suckerfish li ul {\sn"+\n " position: absolute;\sn"+\n " left: -999em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li:hover ul, ul.suckerfish li.sfhover ul {\sn"+\n " left: auto;\sn"+\n "}\sn\sn"+\n "ul.suckerfish ul li {\sn"+\n " float: none;\sn"+\n " border-right: 0;\sn"+\n " border-left:0;\sn"+\n "}\sn\sn"+\n "ul.suckerfish a, ul.suckerfish a:hover {\sn"+\n " display: block;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li a.tiddlyLink, ul.suckerfish li a, #mainMenu ul.suckerfish li a {font-weight:bold;}\sn"+\n "/**** END LAYOUT STYLES *****/\sn"+\n "\sn\sn"+\n "/**** COLORS AND APPEARANCE - DEFAULT *****/\sn"+\n "ul.suckerfish li a {\sn"+\n " padding: 0.5em 1.5em;\sn"+\n " color: #FFF;\sn"+\n " background: #0066aa;\sn"+\n " border-bottom: 0;\sn"+\n " font-weight:bold;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li:hover a, ul.suckerfish li.sfhover a{\sn"+\n " background: #00558F;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li:hover ul a, ul.suckerfish li.sfhover ul a{\sn"+\n " color: #000;\sn"+\n " background: #eff3fa;\sn"+\n " border-top:1px solid #FFF;\sn"+\n "}\sn\sn"+\n "ul.suckerfish ul li a:hover {\sn"+\n " background: #e0e8f5;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li a{\sn"+\n " width:9em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish ul li a, ul.suckerfish ul li a:hover{\sn"+\n " display:inline-block;\sn"+\n " width:9em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish li {\sn"+\n " border-left: 1px solid #00558F;\sn"+\n "}\sn"+\n "/***** END COLORS AND APPEARANCE - DEFAULT *****/\sn"+\n "\sn\sn"+\n "/***** LAYOUT AND APPEARANCE: VERTICAL *****/\sn"+\n "ul.suckerfish.vertical li{\sn"+\n " width:10em;\sn"+\n " border-left: 0px solid #00558f;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical ul li, ul.suckerfish.vertical li a, ul.suckerfish.vertical li:hover a, ul.suckerfish.vertical li.sfhover a {\sn"+\n " border-left: 0.8em solid #00558f;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical li a, ul.suckerfish.vertical li:hover a, ul.suckerfish.vertical li.sfhover a, ul.suckerfish.vertical li.sfhover a:hover{\sn"+\n " width:8em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical {\sn"+\n " width:10em; text-align:left;\sn"+\n " float:left;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical li a {\sn"+\n " padding: 0.5em 1em 0.5em 1em;\sn"+\n " border-top:1px solid #fff;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical, ul.suckerfish.vertical ul {\sn"+\n " line-height:1.4em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical li:hover ul, ul.suckerfish.vertical li.sfhover ul { \sn"+\n " margin: -2.4em 0 0 10.9em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical li:hover ul li a, ul.suckerfish.vertical li.sfhover ul li a {\sn"+\n " border: 0px solid #FFF;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical li:hover a, ul.suckerfish.vertical li.sfhover a{\sn"+\n " padding-right:1.1em;\sn"+\n "}\sn\sn"+\n "ul.suckerfish.vertical li:hover ul li, ul.suckerfish.vertical li.sfhover ul li {\sn"+\n " border-bottom:1px solid #fff;\sn"+\n "}\sn\sn"+\n "/***** END LAYOUT AND APPEARANCE: VERTICAL *****/\sn"+\n "/*}}}*/";\nstore.addNotification("StyleSheetDropDownMenuPlugin",refreshStyles);\n//!END-PLUGIN-CODE\n// %/
[[Course from Harvard|http://cscie153.dce.harvard.edu/lecture_notes/2009/20091103/handout.html]]
<!--{{{-->\n<link rel="alternate" type="application/rss+xml" title="RSS" href="?format=xml" />\n<!-- Below are added to use the lessframework -->\n<!--[if lt IE 9]>\n <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>\n<![endif]-->\n\n<meta name="viewport" content="width=device-width, initial-scale=1"/>\n<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>\n<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>\n<script type="text/javascript" src="http://kennison.name/files/js/jquery.dav.js"></script> \n<script type="text/javascript" src="http://kennison.name/files/js/jDavFilters.js"></script> \n\n<!--}}}-->
[img[filestore/uploads/datamodels/pearce-annex1fig.png]]
<<<\nNikhil Goyal\n\n!!!Meta-Learning: META is where you'll learn to mimic the world's fastest learners.\nTim Ferriss\n\n* Deconstruction: What are the minimal learnable units, the LEGO blocks, I should be starting with?\n* Selection: Which 20% of the blocks should I focus on for 80% or more of the outcome I want?\n* Sequencing: In what order should I learn the blocks?\n*Stakes: How do I set up stakes to create real consequences and guarantee I follow the program?\n<<<\n\nSome of this is right but is it all? The concept of //deconstruction// vs. learning how to see the whole seems obvious to me.
|!Option|!Syntax|!Output|\n|bold font|{{{''bold''}}}|''bold''|\n|italic type|{{{//italic//}}}|//italic//|\n|underlined text|{{{__underlined__}}}|__underlined__|\n|strikethrough text|{{{--strikethrough--}}}|--strikethrough--|\n|superscript text|{{{^^super^^script}}}|^^super^^script|\n|subscript text|{{{~~sub~~script}}}|~~sub~~script|\n|highlighted text|{{{@@highlighted@@}}}|@@highlighted@@|\n|monospaced text|{{{{{{monospaced}}}}}}|{{{monospaced}}}|
This guy gets it! In [[this article|http://donaldclarkplanb.blogspot.com/2011/11/from-gutenberg-to-zuckerberg-scale.html]] he talks about scaling and why buildings and faculty don't scale. There is also a comment about "personalization". Good article\n\n[[This is a good article on assessment|http://donaldclarkplanb.blogspot.com/2011/09/7-reasons-kafka-would-have-loved.html]]\n\nHe talked about [[Eric Mauzur at Harvard|http://mazur.harvard.edu/education/educationmenu.php]] (It's not the presentation that matters but but things / technology that help you learn.)\n\n Hacker & Dreifus and the balance between "liberal arts" (prepare for vocation) and vocational programs (67% students enrolled in vocational)
!!! Query string to path\n<<<\n{{{\nTo avoid recursion, you should check the request line instead as the query string in %{QUERY_STRING} may already have been changed by another rule:\n\nRewriteCond %{THE_REQUEST} ^GET\s /\s?(([^&\ss]*&)*)tag=([^&\ss]+)&?([^\ss]*)\nRewriteRule ^(.*)$ /tag/%3?%1%4 [L,R=301]\nThen you can rewrite that requests back internally without conflicts:\n\nRewriteRule ^tag/(.*) index.php?tag=$1 [L]\n}}}\n<<<
[[Technology Research News|http://www.trnmag.com/]] is a good place to start. The thing to do might be to take the major //entities// and then try and link this up semanticly. \n\n!!!Topics and Methods\n\n[[This is a list of methods used in various diciplines|http://cshprotocols.cshlp.org/site/misc/subject.xhtml]]\n
from Eric Raymond\n>Smart data structures and dumb code works a lot better than the other way around.
If you can help someone understand something thats good. Pointing out what they need to understand isn't always helpful. They can't handle what information is coming their way now. But I think this is a little like the "productivity paradox", you're too busy getting things done to learn how to do things better.
!!!Collection\n* Collection Title* \n* Collection Contributor* \n* Collection Date Range \n* Collection Narrative Description \n* Collection Work Type* \n* Collection Subjects (Topics, People, Places)*\n\n\n!!! Work\n<work>\ntype (sound, image, thesis)\ngenre\nid {internal number}\nTitle\nAlt title\nLang\nPointer to surrogates\ndescription\n</work>\n<expression>\ntype (sound, image, thesis)</type>\n<expression>\n<manifestation>\nextent\netc\n</manifestation>\n<item>\nrights\n</item>\n!!! Agent\n<agent>\n<person>\n affilication\nCreator (author, photographer etc)\nContributor (advisor, interviewee)\nPublisher\n</agent>\n\n!!! Subject\n<subject>\n<concept id=uri >\nsubject\nkeywords\n</concepts>\n<events>\n</events>\n<places>\n</places>\n<object>\n\n</subject>\n\n!!! Relationships between the above entities\n<relationships>\n <responsible>\n <subject>\n <structural>\n <other>\n</relationships>\n\n\n!!! Administrative\nid (url)\naccessRights\nreproduction Rights\nsource (if harvested)\npublication status\n\n!!! Technical \nfilename\nformat (mime type)\n''Depends on object type what shows up here''\nScanned date\nCreated Date\nHeight/Width\nLength (extent)\nmedium \nmaterials and techniques\n\n\n!!! Preservation\nsource \ncapture device\ncondition\ntreatment history\ntreatment scheduled\nlocation of item\ncustodial history\n\nChanges to object\n\n\n\n\n\n \n\n!!!Annotations\n\n\n\n\n\n
<html>\n<div class="subsection">\n\n \n<p>Schema.org defines subclasses of CreativeWork. These are generally have finer granularity than the other resource type lists and sometimes combine a number of different aspects. Subclasses are noted below (except a few subclasses have additional subclasses which have not been indicated). This is understandably focused on web resources so has limited applicability. Some of the classes may be expressed as media object under the property encoding (e.g. an article can be a videoObject or an audioObject)</p>\n\n<p>Article<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; BlogPosting<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NewsArticle<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ScholarlyArticle<br>\n Blog<br>\n\n Book <br>\n Comment<br>\n Diet<br>\n ExercisePlan<br>\n ItemList<br>\n Map<br>\n\n MediaObject<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AudioObject<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ImageObject<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MusicVideoObject<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; VideoObject<br>\n\n Movie<br>\n MusicPlaylist<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MusicAlbum<br>\n MusicRecording<br>\n Painting<br>\n Photograph<br>\n\n Recipe<br>\n Review<br>\n Sculpture<br>\n SoftwareApplication<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MobileApplication<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WebApplication<br>\n\n TVEdisode&nbsp;&nbsp; TVEpisode <br>\n TVSeason<br>\n TVSeries<br>\n WebPage<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; AboutPage<br>\n\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CheckOutPage<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CollectionPage<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ContactPage<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ItemPage<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MedicalWebPage<br>\n\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ProfilePage<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SearchResultsPage<br>\n WebPageElement<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SiteNavigationElement<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Table<br>\n\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPAdBlock<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPFooter<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPHeader<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPSideBar<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>\n\n The product types ontology (<a href="http://www.productontology.org/">www.productontology.org</a>) is closely related to schema.org and may be worth considering for resource types with finer granularity; it includes over 300,000 types for products and services (many of which are irrelevant for bibliographic data).</p>\n</div>\n</html>\n\n[[from Bibframe.org|http://bibframe.org:8281/documentation/resource-types/20130625.html]]
<<<\nGive a man the answer, and he'll only have a temporary solution. Teach him the principles that led you to that answer, and he will be able to create his own solutions in the future.\n\n<<<\n\n[[Chad Perrin|http://www.techrepublic.com/blog/security/teach-a-man-to-fish/367]]
<<<\nToday, and for the last century, education has been practiced in segregated buildings by carefully regimented and standardized classes of students led and instructed by teachers working essentially alone.\n\nOver the last ten years, this model has been seen in many quarters to be obsolete. We have seen the emergence of a new model, where education is practiced in the community as a whole, by individuals studying personal curricula at their own pace, guided and assisted by community facilitators, online instructors and experts around the world.\n\nThough today we stand at the cusp of this new vision, the future will see institutions and traditional forms of education receding gradually, reluctantly, to a tide of self-directing and self-motivated learners. This will be the last generation in which education is the practice of authority, and the first where it becomes, as has always been intended by educators, an act of liberty.\n<<<\n\n[[Stephen Downes|http://halfanhour.blogspot.com/2008/11/future-of-online-learning-ten-years-on_16.html]]
<<timeline created >>
!!!Siloed Applicatons\n[img[/filestore/uploads/repositories/pennstate3.png]]\n\n!!! Where we want to be\n[img[/filestore/uploads/repositories/pennstate2.png]]\n\n!!!Another view of the above\n[img[/filestore/uploads/repositories/pennstate.png]]\n\n\n\n\n!!!Can we use this?\n[[Academic Institution Internal Structure Onotology|http://vocab.org/aiiso/schema]]
>When people talk about education, they are usually mixing together several ideas. The first is the idea of learning. The second is the idea of socialization. The third is the idea of credentialing - giving a piece of paper to someone that proves to the world that he or she knows what they know. These three different aspects of education are muddled together because today they are all performed by the same institutions - you go to college to learn, have a life experience and get a degree.\n\nIn our business model we need to think about these things and how best to provide them. \n\n>It has always been my opinion that 'education' is something people do to you, whereas 'learning' is something you do for yourself,
{{{\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml"></html>\n}}}
[[Mike changed to fedora|https://wikispaces.psu.edu/pages/viewpage.action?pageId=83887209]]
>Cultures vary in five dimensions: \n* power distance, \n* collectivism-individualism, \n* uncertainty avoidance, \n* long and short-term orientation, and \n* masculinity-femininity (Hofstede, 1997).
<<<\n\nConcerning technology, this is how the picture seems to\ndeveloping and more or less in this chronological order.\n\n \n\n1. Information wants to be free.\n\n \n\n2. Educational traditionalists resist.\n\n \n\n3. Education pioneers respond by teaching online and more\nand more for free. Prime examples: MIT open courseware, Khan Academy, Sebastian\nThrun.\n\n \n\n3. Most educational establishments start shifting lessons\nonline but still try to brand their offerings and some begin certifying their\nfree training. Example: MITX.\n\n \n\n4. Casual or informal learning becomes more recognized.\n\n \n\n5. Educational traditionalists claim the old way is the best\nway and point to diplomas, certificates, etc.\n\n \n\n7. True, a big problem is certifying learning. There will be\na rise in certification bodies with the acceptance that it doesn't matter where\nor how you learned it, if you know it you know it and someone will certify it.\nThis is going to become a fast growing business but will have many problems to\nsolve.\n\n \n\n8. Technological tools will reduce the amount of things\npeople have to learn and remember. Improved translating programs will mean that\nsome people, but not all, will not need to learn English well. They will be\nable to rely on translators to help them for simple or basic needs. Other\ntechnologies will provide answers when information is needed. These will not\nreplace the need for learning facts but will reduce the need. Example: Siri,\nEvi, Google translate, Google Glass Project.\n\n \n\n9. Almost all of the current type of university teaching\nwill be considered boring and disconnected from the exact needs of a career.\nUniversities will have to drastically change their style. The best training\nwill be a marriage between smart content (as a top professor can offer) with\nappealing presentation (similar to what a documentary producer can offer).\nThink Discovery Channel. This will be about 80% of the new role of cutting\nedge universities or teaching centers but with maybe 10% of more personalized\ntraining for higher level academics and 10% of more personalized training for\nslow learners who can't learn unless someone holds their hand.\n\n \n\n10. Due to rapid changes in society because of the impact of\ntechnological advances, our children are preparing for a future where the types\nof jobs that they will have do not even exist yet, and these jobs and therefore\ncareers, will be changing rapidly. Most people will have 3-4 careers in their\nlifetime. No longer will people go to university for four years to learn\nsomething they will use for a job they will have for all their lives. People\nwill retool themselves 3-4 times and have to learn new skills, as well, to keep\nabilities updated. Therefore, learning will be more available and more\nbite-sized. Think just-In-Time learning.\n\n \n\nIn other words, universities, as we know them, are doomed.\nCertifying bodies will become more important than they are today. People will\nlearn anywhere and everywhere, be able to get recognition for this learning,\nand will need to learn constantly as their careers morph from one field to\nanother and technologies create new jobs that never existed before.\n<<<\n\n[[from Dave Kees|http://groups.yahoo.com/group/evonline2002_webheads/message/29191]]
<<<\nIt’s important to emphasize that this heightened attention to the quality of instructional content is not the result of changing ideas of best practices for pedagogy or even demands by students for better quality content, at least not directly. Rather, it’s the result of the new context in which the course is experienced. Typically, a university-level course is experienced and evaluated as part of a larger set of experiences and resources that constitute the traditional university experience: a credential system, residential experiences, a program of study, and so forth. Pulled out of this traditional context, the MOOC is evaluated on the basis of other criteria. What matters most to the student in this new context is what can be learnt, full-stop. So, the determinants of value for the learner fall more heavily on factors such as the clarity of exposition, the degree to which the course inspires interest in the learner (and maintains that interest), and how quickly and easily learning occurs. While these factors are certainly important in the traditional university context, they are less important and are often outweighed by other factors, such as obtaining a degree.\n<<<\n\n[[Source: Dr. Keith Hampson is Managing Director, Client Innovations at Acrobatiq, a Carnegie Mellon University|http://higheredmanagement.net/2013/11/24/instructional-content-moocs-and-competition/]]
>And while "locked away in people's neural networks," tacit knowledge expresses itself in our actions, our responses, and our expressions.\n\n>- There are two different types of knowledge, two different sets of skills. The first, a public knowledge, is based on symbols, codes and rules. The second, a private knowledge, is based on concepts, skills and procedures.\n\n>Polanyi writes, "when I receive Information by reading a letter and when I ponder the message of the letter I am subsidiarily aware not only of its text, but also of all the past occasions by which I have come to understand the words of the text, and the whole range of this subsidiary awareness is presented focally in terms of the message. This message or meaning on which attention is now focused is not something tangible; it is the conception evoked by the text." The text says one thing, but when we read, we think of (and learn about) whatever is (in ourselves) evoked by the text.\n\n[[from Stephan Downes|http://www.huffingtonpost.com/stephen-downes/two-kinds-of-knowledge_b_785411.html]]
!!!Seven Principles\nThe 7 principles are:\n\n* Students' prior knowledge can help or hinder learning.\n* How students organize knowledge influences how they learn and apply what they know.\n* Students' motivation determines, directs, and sustains what they do to learn.\n* To develop mastery, students must acquire component skills, practice integrating them, and know when to apply what they have learned.\n* Goal-directed practice coupled with targeted feedback enhances the quality of student's learning.\n* Students' current level of development interacts with the social, emotional, and intellectual climate of the course to impact learning.\n* To become self-directed learners, students must learn to monitor and adjust their approaches to learning. (Ambrose, et. al., 2010, p. 4-6)\n\n!!!Another version of the same thing\nClose read: Principles of Learning and Their Implications (by Peter Hill)\n\n# Effort Produces Achievement\n# Learning Is About Making Connections\n#We Learn With and Through Others\n#Learning Takes Time\n# Motivation Matters
[img[/filestore/uploads/metadata/frbr/frbr-level1.png]]\n\nNice examples by William Denton http://www.frbr.org/files/denton-frbr-talk-slides.pdf\n\n!!! FRBR is a conceptual model\n[[Look at this|http://opencitations.wordpress.com/2011/06/29/extending-frbr-within-fabio/]]
<<<\nhow will content be created,\nwhere will it be housed,\nhow will it be delivered,\nhow will it be found,\nwho's the audience,\nwhat's the need,\nwhat controls will be needed,\nwhat oversight will be needed,\nwhat measures will be used, and more.\n\n<<<
{{{\n$field =~\n m/^(\n [\s09\s0A\s0D\sx20-\sx7E] # ASCII\n | [\sxC2-\sxDF][\sx80-\sxBF] # non-overlong 2-byte\n | \sxE0[\sxA0-\sxBF][\sx80-\sxBF] # excluding overlongs\n | [\sxE1-\sxEC\sxEE\sxEF][\sx80-\sxBF]{2} # straight 3-byte\n | \sxED[\sx80-\sx9F][\sx80-\sxBF] # excluding surrogates\n | \sxF0[\sx90-\sxBF][\sx80-\sxBF]{2} # planes 1-3\n | [\sxF1-\sxF3][\sx80-\sxBF]{3} # planes 4-15\n | \sxF4[\sx80-\sx8F][\sx80-\sxBF]{2} # plane 16\n )*$/x;\n}}}
* College Records\n* Manuscript Collections\n* Rare Books\n** What subject areas of rare books?\n* Digital Resources\n* Honors Papers & Theses
!!! Overview\n\nThis loads the xml and xslt resources @@synchronosly@@ (false param on\n open.). It transforms the xml to html and then inserts it in the\nexample element in the document. \n\n{{{\n<script>\nfunction loadXMLDoc(resource){\n if (window.XMLHttpRequest){\n xhttp=new XMLHttpRequest();\n }\n else{\n xhttp=new ActiveXObject("Microsoft.XMLHTTP");\n }\n xhttp.open("GET",resource,false);\n xhttp.send("");\n return xhttp.responseXML;\n}\n\nfunction displayResult(){\n xml=loadXMLDoc("cdcatalog.xml");\n xsl=loadXMLDoc("cdcatalog.xsl");\n // code for IE\n if (window.ActiveXObject){\n ex=xml.transformNode(xsl);\n document.getElementById("example").innerHTML=ex;\n }\n // code for Mozilla, Firefox, Opera, etc.\n else if (document.implementation && document.implementation.createDocument){\n xsltProcessor=new XSLTProcessor();\n xsltProcessor.importStylesheet(xsl);\n resultDocument = xsltProcessor.transformToFragment(xml,document);\n document.getElementById("example").appendChild(resultDocument);\n }\n}\n</script>\n}}}\n
I'm testing this out\n<<formTiddler "MyFormTemplate>>\n<<showData>>
<html>\n<iframe src="/filestore/uploads/libraries/insideout.pdf" width="90%" height="800px"></iframe>\n</html>
!!!Education Ecosystem\n\n# Convenient access ( all online\n# 21st Century ERP system (tightly measure all performance indicators, CRM every interaction matters )\n# Unbundled faculty roles\n# Cloud services ( highly distributed)\n# Dynamically meeting the market needs\n\n[[Paul Kim|http://www.slideshare.net/eden_online/mobile-innovations-and-evolutions-in-education-ecosystem]]
the list cam't go into the <did> or <repository> but you could put a <note> in the <did> and put that <list> in the <note>\n\nhttp://www.c4lpt.co.uk/blog/2011/09/12/social-learning-doesnt-mean-what-you-think-it-does/\n\nhttp://www.knewton.com/digital-education/\n\nhttp://llk.media.mit.edu/papers/mres-wef.pdf\n\nhttp://www.ewenger.com/\n\n:\sDocuments and Settings\sinfinitelink>twextract Traceback\n (most recent call last): \nFile "C:\sPython25\sScripts\stwextract-script.py", line 5, in <module> \nfrom pkg_resources import load_entry_point ImportError: No module named pkg_resources\n\n\nhttp://www.dajobe.org/papers/xmleurope2002/\n\n<html>\n<del>This is just a test!</del>\n<ins>No way Jose, this is for real</ins>\n</html>\n\nhttp://www.softpanorama.net/Education/index.shtml\nhttp://logosjournal.com/2012/spring-summer_schultz/\n\nhttp://www.e-ucm.es/drafts/e-UCM_draft_69.pdf
>When education goes online, how professors teach, what students learn and how institutions are structured will change significantly.
[[2005 Raffeiner|http://cocoon.ifs.tuwien.ac.at/lehre/diplomarbeiten/2005_Raffeiner_Ontologies.pdf]]
> But when it comes to discovery, access and utility, nothing substitutes for authorial and editorial judgment, as evidenced in the structural and contextual tags applied to our content.\n\nhttp://www.magellanmediapartners.com/index.php/mmcp/article/context_first_revisited/
!!Software Defined Networking (SDN) and Network Function Virtulization\nThese are the future but it's going to take programming\nhttp://www.sdncentral.com/technology/nfv-and-sdn-whats-the-difference/2013/03/\n\n<html>\n<table border="1" cellspacing="0" cellpadding="0">\n<tbody>\n<tr>\n<td valign="top" bgcolor="#C0C0C0">\n<p align="center"><strong>Category</strong></p>\n</td>\n<td valign="top" bgcolor="#C0C0C0">\n<p align="center"><strong>SDN</strong></p>\n</td>\n<td valign="top" bgcolor="#C0C0C0">\n<p align="center"><strong>NFV</strong></p>\n</td>\n</tr>\n<tr>\n<td valign="top">Reason for Being</td>\n<td valign="top">Separation of control and data, centralization of control and programmability of network</td>\n<td valign="top">Relocation of network functions from dedicated appliances to generic servers</td>\n</tr>\n<tr>\n<td valign="top">Target Location</td>\n<td valign="top">Campus, data center / cloud</td>\n<td valign="top">Service provider network</td>\n</tr>\n<tr>\n<td valign="top">Target Devices</td>\n<td valign="top">Commodity servers and switches</td>\n<td valign="top">Commodity servers and switches</td>\n</tr>\n<tr>\n<td valign="top">Initial Applications</td>\n<td valign="top">Cloud orchestration and networking</td>\n<td valign="top">Routers, firewalls, gateways, CDN, WAN accelerators, SLA assurance</td>\n</tr>\n<tr>\n<td valign="top">New Protocols</td>\n<td valign="top">OpenFlow</td>\n<td valign="top">None yet</td>\n</tr>\n<tr>\n<td valign="top">Formalization</td>\n<td valign="top">Open Networking Forum (ONF)</td>\n<td valign="top">ETSI NFV Working Group</td>\n</tr>\n</tbody>\n</table>\n</html>\n\nhttp://www.tid.es/es/Documents/NFV_White_PaperV2.pdf\n\n\nThe following is required experience and knowledge:\n* Professional certification (Certified Information Systems Security Professional--CISSP, Global Information Assurance Certification--GIAC, etc.);\n* Experience with developing security practices as a people problem as well as a technical problem;\n* Broad knowledge of information security issues, requirements, and trends, including compliance requirements related to FERPA, HIPPA, PCI and other information-security-related laws and regulations;\n* Knowledge of contemporary hardware, software, and network architectures and how security policy can best be implemented within these architectures;\n* Knowledge of forensic techniques for investigating incidents, determining root causes, and extent of total exposure;\n* Knowledge of authentication, authorization and encryption technologies;\n* Ability to work well on collaborative, cross-functional teams that include both technical and non- technical members;\n\n!!!Take Two\n* Expertise with physical network technology such as fiber-optic and copper \n* Expertise with Cisco switches and routers, including installation and configuration, IOS and Cat/OS, the Nexus 7000 series, and Cisco 6500/4500 series service modules\n* Expert knowledge Aruba Wireless network technology is desired\n* Experience with TCP/IP technologies and protocols including IPV6 desired\n* Experience networking Virtual Machines ESX desirable\n* Familiarity with other products, including firewalls, IDS appliances, and network design and analysis tools\n* Spanning Tree, VLANs, and routing protocols such as EIGRP, OSPF and BGP\n* Experience designing and implementing a network QoS infrastructure\n* Knowledge of network authentication and identity frameworks and protocols, 802.1x, RADIUS, and Kerberos\n* Familiarity of TCPdump, SNMP, Sniffer, MRTG, Open NMS, CiscoWorks, RMON, AirWave and other network monitoring and management technologies\n* Familiarity with network security as it relates to the network infrastructure, routers and switches, and wireless technology\n* Familiarity with VoIP systems and their operation at a network infrastructure level.\n* Familiarity with block-structured programming, shell scripting and basic CGI scripting.\n\n!!! List of issues\n* Securing remote access\n* Keeping virus definitions and AV software up to date\n* Patching systems\n* Monitoring intrusions\n* Securing file transfers\n* Network use monitoring\n* User policy awareness and training\n* Password management and administrative access\n* User training\n* Monitoring of system logs\n* Finding and replacing nonsecure Internet protocols\n\n!!!Problems\n<<<\nFor example, to add or move any device, IT must touch multiple switches, routers, firewalls, Web authentication portals, etc. and update ACLs, VLANs, quality of services (QoS), and other protocol-based mechanisms using device-level management tools. In addition, network topology, vendor switch model, and software version all must be taken into account. Due to this complexity, today's networks are relatively static as IT seeks to minimize the risk of service disruption.\n<<<
[img[/filestore/uploads/students/degree-compass.png]]
!!!What are the possible elements of a statement?\n\nStatement (\n ResourceURI ( <http://dublincore.org/pages/home> )\n\n PropertyURI ( dcterms:subject )\n ValueClassURI ( <http://example.org/terms/Concept> )\n VocabularyEncodingSchemeURI ( <http://purl.org/dc/terms/LCSH> )\n ValueString ( "Metadata" )\n ValueString ( "Métadonnées" )\n )\n\nLiteralValueString ( "DCMI Home Page"\n Language ( en-GB )\n\nSyntaxEncodingSchemeURI ( <http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> )\n\nValueRef - ValueID
[[Examples of for each|http://tiddlywiki.abego-software.de/#ForEachTiddlerExamples]]
<<<\nLibrarians traditionally performed four functions. \n* First, they gathered materials. (''librarian's role as arbiter'' )\n* Second, they created records of the materials that were so gathered. As a part of this process they developed schemes for organizing information so that it could be retrieved. \n* Third, they physically arranged and preserved the materials. \n* Fourth, they distributed the materials to those who needed them. (centers on circulating materials and providing reference service,)\n<<<
* creating content (maybe)\n* select and organize materials, \n* motivate and guide students, \n* facilitate discussion, and \n* assess learning outcomes.\n\n>For many, education is predominantly about consuming knowledge from trusted sources and seeking the wisdom of established experts. Study is seen as a relatively private activity which finishes with a series of exams. It's not commonly perceived as an evolving practice in which personal views are openly shared and in which students' opinions become a valued part of a communal learning experience.
!!! What we're trying to get to\n* application-independent information \n* interchange and \n* self-describing documents
<<quiz>>
<<<\nThe value proposition of traditional higher education is complex, built around such considerations as opportunity to: interact face to face with research-active faculty and with student peers; experience social growth through campus and residential life; gain an education that will be professionally and intellectually rewarding; and associate oneself with the brand value of the institution. Obviously, not all traditional institutions offer all of these opportunities to the same degree, thus defining a de facto hierarchy within higher education that, for shorthand, I will call the traditional brand value (TBV).\n<<<\n\n[[From|http://www.changinghighereducation.com/2013/03/creating_new_institions.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+changinghighereducation%2FLFzB+%28Changing+Higher+Education%29]]
http://www-distance.syr.edu/andraggy.html\n\nhttp://www.westga.edu/~distance/ojdla/fall63/hutchins63.html
[[Fedora Notes from Indiana|https://wiki.dlib.indiana.edu/confluence/display/INF/Fedora]]. \n\n[[List of front ends for Fedora|http://fedora-commons.org/confluence/display/DEV/Fedora+Tools]]\n\n[[Wisconsin Presentation|http://prezi.com/66109/]]
<<<\n!!! WebDAV:\n* Adds 7 new HTTP methods\n* Natively understands folders as "collections"\n* Clients manipulate and control namespace \n* Clients can "parse" URIs to apply semantics of hierarchy\n* Supports locking of entire hierarchies\n* Natively supports relocating and copying document to a different folder\n* Does not separate modifiable resources from read-only view of resources\n\n!!! AtomPub:\n* No new HTTP methods\n* Natively understands listings as "feeds" and modifiable listings as "collections"\n* Servers control namespace, clients can make suggestions. \n* Clients can navigate to URIs identified in hypertext but not construct these URIs\n* Natively supports only optimistic concurrency control of single resources\n* Separates view-only resources from their underlying modifiable resources.\n\nBottom line is "use WebDAV if you can". AtomPub is a simpler technique, but it is also less feature rich. Of course, extensions and other such things will add back some of the features over time, if people like the lightweight foundation of AtomPub.\n<<<\n\n[[from Nikunj Mehta| http://blog.o-micron.com/2009/05/webdav-or-atompub.html]]
[img[/filestore/uploads/repositories/CIDOC-CRM.gif]]\n[[Source:"CIDOC Conceptual Reference Model "|http://firstmonday.org/ojs/index.php/fm/article/view/1145/1065]]
Sensemaking is what you do when you collect, organize and restructure information to come to some deeper understanding. In essence, it's the process we follow when we research complex historical topics... or when we're buying a refrigerator.
[img[/filestore/uploads/authoring/MachineReadableModelSpectrum.png]]
[[You innovate without permission or you become obsolete|http://lemire.me/blog/archives/2011/04/04/how-information-technology-is-really-built/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+daniel-lemire%2Fatom+%28Daniel+Lemire%27s+blog%29]]\n\nfrom [[Greg Linden|http://glinden.blogspot.com/2006/04/early-amazon-shopping-cart.html]]\n\n<<<\nI do know that, in some organizations, challenging an SVP would be a fatal mistake, right or wrong. When I was at Stanford Business School, I had many occasions to debate those that favored command-and-control style management and learn more about their beliefs.\n\nThose that favor command-and-control, top-down structures seemed to argue that it matters little which hill you charge, as long as you all charge the same hill. Loyalty and obedience, they said, matter more than competence. As they see it, for any organization, chaos is the enemy. \n\nIn my experience, innovation can only come from the bottom. Those closest to the problem are in the best position to solve it. I believe any organization that depends on innovation must embrace chaos. Loyalty and obedience are not your tools; you must use measurement and objective debate to separate the good from the bad.\n\nAt the time, Amazon was certainly chaotic, but I suspect I was taking a risk by ignoring commands from above. As good as Amazon was, it did not yet have a culture that fully embraced measurement and debate. \n\nI think building this culture is the key to innovation. Creativity must flow from everywhere. Whether you are a summer intern or the CTO, any good idea must be able to seek an objective test, preferably a test that exposes the idea to real customers.\n\nEveryone must be able to experiment, learn, and iterate. Position, obedience, and tradition should hold no power. For innovation to flourish, measurement must rule.\n<<<
[[Uses Drupal (but could be done with Zope)|http://scholar.harvard.edu/bsimmons/home]] What we should be doing for the Provost
//from Tony Bates//\n<<<\nI broke online teaching down into the following activities:\n\n* Content development and delivery \n* Student activities\n* Learner support\n* Assessment\n* Planning, administration and overheads\n<<<
Our struggle to put first things first can be characterized by the contrast between two powerful tools that direct us: the clock and the compass. The clock represents our commitments, appointments, schedules, goals, activities -- what we do with, and how we manage our time. The compass represents our vision, values, principles, mission, conscience, direction -- what we feel is important and how we lead our lives. In an effort to close the gap between the clock and the compass in our lives, many of us turn to the field of "time management."
[img[/filestore/uploads/repositories/data_skills.jpg]]
> These ideas came from ~TiddlyWeb\nWhen writing code separate, \n* web request handling (wsgi, maki)\n* data model (the content model , tiddler, image, etc.)\n* serialization model (format of the content model, xml, html, txt, json, etc.)(has to work both ways!)\n* storage model (on the filesystem AND in Zebra AND OR dbxml with webdav)\n* authentication model (simple http)\n* authorization model. (? policy thingy (role, owner, etc.))\n\nIn each distinct section ask what are the resources and what are the simple REST-like actions that will be performed. Minimize state. Maximize separation and layers.\n\n\n!!! Types from TiddlyWeb\n* store\n* serializer\n* handler\n* challenger (authentication)\n* extractor (authentication)\n* validator (called when resources are put)\n* filter \n* renderer\n\n
!!!University Perspective\n* Visibility of degree programmes and research output of HE institutions \n* Curriculum design \n* Recruitment and retention of students \n* Efficiency of accreditation \n* Collaboration across departments and institutions through workflows \n* Integration of knowledge capital, cross-curricular initiatives \n* Transparency of data held by educational institutions \n\n!!! Other Issues\n* Course creation and delivery workflows \n* Group formation for learning and teaching activities \n* Critical thinking and argumentation support \n*Personal and group knowledge space construction \n* Assessment, certification and addressing of plagiarism\n\n!!!Collaborative activities \n* Team Building \n* Computer Mediated Discussion \n* Computer Mediated Experimentation \n* Role Play \n* Content Creation \n* Content Annotation \n* Simulation \n* Experiments \n\n!!!T&L activities involving the individual \n* Information Gathering \n* Information Handling \n* Information Publishing \n\n[[Linked Data as a Foundation for the Deployment of Semantic Applications in Higher Education|http://compsci.wssu.edu/iis/swel/SWEL09/Papers/swel09_submission_13_TIROPANIS.pdf]]\n
!!! Digital Applications librarian\n<<<\nprovide leadership and guidance for the Libraries on existing and emerging\ntechnologies including digital repository, discovery and preservation systems \n<<<\nfrom Oregon
[img[/filestore/uploads/highered/costofeducation.png]]
I didn't read the book but this [[site|http://emergentbydesign.com/2011/02/06/program-or-be-programmed-10-commands-for-a-digital-age/]]\nhas a good review
In [[Alex Boyer's "Why files must die"|http://radar.oreilly.com/2011/07/why-files-need-to-die.html]] he talking about the way we humans work with files and the problem that files present to us when accessing our data. \n\n[img[filestore/uploads/metadata/entities.png]]\n\nThe above graphics shows how we think about our data and why identifying the entities are so important to managing our data. \n\n[img[filestore/uploads/metadata/metadata.png]] \n\nThis graphic show two import aspects of metadata creation, those that need to be created at capture and those that can be extracted.
We know the library "provides" resources to the community but can we be a "producer" of resources?
http://cnx.org/content/col10453/1.2/\n\nhttps://sites.google.com/site/luctwtguide/
<<<\nThe Scholar's Collective is not a place, rather it is a set of tools for the discovery,\ngathering, creating, and sharing information. It will be web-based and while it will\nhave some traditional library functions build into it, it will not be the library\n<<<\n\nfrom Minnisota\n\n<<<\nFor most libraries the staff will require technology skill sets that are not possessed by current staff. It is not clear if the best strategy will be to train existing staff, hire librarians who have the required skills, or to hire technologists and instructional designers. I suspect some combination of the latter two approaches will be most successful.\n<<<\n\nDavid Lewis
[[from Your search is also a flotation Device|http://nopain2.org/archives/000123.html]]\n\n>In the Information Retrieval and Information Seeking literature, these kinds of more complex, rich information discovery and knolwedge building tasks have been modelled in terms of Search strategies and tactics (Think bates and belkin). In the relatively recent work classed as Exploratory search (see Special Issue, CACM April 2006)., the emphasis has been on harmonizing human computer Interaction design approaches with models of information seeking to develop new tools that will support these alternative kinds of search and knowledge building.\n\n!!! Examples of such approaches include:\n\n* knowledge building by association: being able to explore the scope of a domain to create new knowledge through building associations between one domain/concept with another (HT paper 07), rather than by seeing "an answer" in any one item.\n* wanting to explore a domain without sufficient knowledge of the domain. Someone who is not an expert may look for one piece of information without realizing that another component, not matched by a keyword search, is highly relevant.\n* annotations and notes. A well known way of supporting knowledge building is to be able to annotate information for a specific context. For instance, "The socket described worked well for this project but was miserable for this other - despite what the authors claim here" Similarly being able to create notes ABOUT something and add references easily from related sources is another powerful knowledge building technique\n* Collections. Pulling together information resources as they are discovered for future knowledge building, as part of information triage (Marshall and Shipman) is another approach for developing knowledge\n* History Review. Interrogating both previously looked for information as well working back through the paths taken to that information.\n* Collaborative knowledge building. A common feature of (non-digital) knowledge building activity is collaborative contribution to knowledge building, from brain storming to shared component development.
[img[/filestore/uploads/metadata/dublin-core.png]]\n\n<html>\n <h2>Dublin Core with Qualifiers</h2>\n <table width="100%" border="2" cellspacing="0" cellpadding="3" bgcolor="#FFFFFF">\n <tr bgcolor="#CCCCCC">\n <td width="26%" valign="top"><b><font color="#000000">Element</font></b></td>\n <td width="24%" valign="top"><b><font color="#000000">Qualifier </font></b></td>\n <td width="50%" valign="top"><b><font color="#000000">Scope Note</font></b></td>\n </tr>\n <tr>\n <td width="26%" height="83" valign="top">contributor</td>\n <td width="24%" height="83" valign="top">&nbsp;</td>\n <td width="50%" height="83" valign="top"> A person, organization,\n or service responsible for the content of the resource. Catch-all\n for unspecified contributors </td>\n </tr>\n <tr>\n <td width="26%" height="46" valign="top">contributor </td>\n <td width="24%" height="46" valign="top">advisor</td>\n <td width="50%" height="46" valign="top">Use primarily for thesis\n advisor</td>\n </tr>\n <tr>\n <td width="26%" valign="top">contributor</td>\n <td width="24%" valign="top">author</td>\n <td width="50%" valign="top">&nbsp;</td>\n </tr>\n <tr>\n <td width="26%" valign="top">contributor</td>\n <td width="24%" valign="top">editor</td>\n <td width="50%" valign="top">&nbsp;</td>\n </tr>\n <tr>\n <td width="26%" valign="top">contributor</td>\n <td width="24%" valign="top">illustrator</td>\n <td width="50%" valign="top">&nbsp;</td>\n </tr>\n <tr>\n <td width="26%" valign="top">contributor</td>\n <td width="24%" valign="top">other</td>\n <td width="50%" valign="top">&nbsp;</td>\n </tr>\n <tr>\n <td width="26%" valign="top">coverage</td>\n <td width="24%" valign="top">spatial</td>\n <td width="50%" valign="top">Spatial characteristics of content</td>\n </tr>\n <tr>\n <td width="26%" valign="top">coverage </td>\n <td width="24%" valign="top">temporal</td>\n <td width="50%" valign="top"> Temporal characteristics of content</td>\n </tr>\n <tr>\n <td width="26%" valign="top">creator</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Do not use; for harvested metadata only </td>\n </tr>\n <tr>\n <td width="26%" valign="top">date</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Use qualified form if possible</td>\n </tr>\n <tr>\n <td width="26%" valign="top">date </td>\n <td width="24%" valign="top">accessioned</td>\n <td width="50%" valign="top">Date DSpace takes possession of\n item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">date</td>\n <td width="24%" valign="top">available</td>\n <td width="50%" valign="top">Date or date range item became available\n to the public</td>\n </tr>\n <tr>\n <td width="26%" valign="top">date </td>\n <td width="24%" valign="top">copyright</td>\n <td width="50%" valign="top">Date of copyright</td>\n </tr>\n <tr>\n <td width="26%" valign="top">date</td>\n <td width="24%" valign="top">created</td>\n <td width="50%" valign="top">Date of creation or manufacture\n of intellectual content if different from date.issued</td>\n </tr>\n <tr>\n <td width="26%" valign="top">date</td>\n <td width="24%" valign="top">issued</td>\n <td width="50%" valign="top">Date of publication or distribution.</td>\n </tr>\n <tr>\n <td width="26%" valign="top">date</td>\n <td width="24%" valign="top">submitted</td>\n <td width="50%" valign="top">Recommend for theses and dissertations</td>\n </tr>\n <tr>\n <td width="26%" height="117" valign="top">identifier</td>\n <td width="24%" height="117" valign="top">&nbsp;</td>\n <td width="50%" height="117" valign="top">Catch-all for unambiguous\n identifiers not defined by qualified form; use identifier.other\n for a known identifier common to a local collection instead\n of unqualified form</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">citation</td>\n <td width="50%" valign="top"> Bibliographic citation for works\n that have been published as a part of a larger work, e.g. journal\n articles, book chapters</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">govdoc</td>\n <td width="50%" valign="top"> Government document number</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">isbn</td>\n <td width="50%" valign="top">International Standard Book Number</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">issn</td>\n <td width="50%" valign="top">International Standard Serial Number</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">sici</td>\n <td width="50%" valign="top">Serial Item and Contribution Identifier</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">ismn</td>\n <td width="50%" valign="top">International Standard Music Number</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">other</td>\n <td width="50%" valign="top">A known identifier type common to\n a local collection</td>\n </tr>\n <tr>\n <td width="26%" valign="top">identifier</td>\n <td width="24%" valign="top">uri</td>\n <td width="50%" valign="top">Uniform Resource Identifier</td>\n </tr>\n <tr>\n <td width="26%" valign="top">description</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Catch-all for any description not\n defined by qualifiers</td>\n </tr>\n <tr>\n <td width="26%" valign="top">description</td>\n <td width="24%" valign="top">abstract</td>\n <td width="50%" valign="top">Abstract or summary</td>\n </tr>\n <tr>\n <td width="26%" valign="top">description</td>\n <td width="24%" valign="top">provenance</td>\n <td width="50%" valign="top">The history of custody of the item\n since its creation, including any changes successive custodians\n made to it</td>\n </tr>\n <tr>\n <td width="26%" valign="top">description</td>\n <td width="24%" valign="top">sponsorship</td>\n <td width="50%" valign="top"> Information about sponsoring agencies,\n individuals, or contractual arrangements for the item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">description</td>\n <td width="24%" valign="top">statementofresponsibility</td>\n <td width="50%" valign="top">To preserve statement of responsibility\n from MARC records</td>\n </tr>\n <tr>\n <td width="26%" valign="top">description</td>\n <td width="24%" valign="top">tableofcontents</td>\n <td width="50%" valign="top">A table of contents for this item</td>\n </tr>\n <tr>\n <td width="26%" height="2" valign="top">description</td>\n <td width="24%" height="2" valign="top">uri</td>\n <td width="50%" height="2" valign="top">Uniform Resource Identifier\n pointing to description of this item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">format</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Catch-all for any format information\n not defined by qualifiers</td>\n </tr>\n <tr>\n <td width="26%" valign="top">format</td>\n <td width="24%" valign="top">extent</td>\n <td width="50%" valign="top">Size or duration</td>\n </tr>\n <tr>\n <td width="26%" valign="top">format</td>\n <td width="24%" valign="top">medium</td>\n <td width="50%" valign="top">Physical medium</td>\n </tr>\n <tr>\n <td width="26%" valign="top">format</td>\n <td width="24%" valign="top">mimetype</td>\n <td width="50%" valign="top">Registered MIME type identifiers</td>\n </tr>\n <tr>\n <td width="26%" valign="top">language</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Catch-all for non-ISO forms of the\n language of the item, accommodating harvested values</td>\n </tr>\n <tr>\n <td width="26%" valign="top">language</td>\n <td width="24%" valign="top">iso</td>\n <td width="50%" valign="top">Current ISO standard for language\n of intellectual content, including country codes (e.g., &quot;en_US&quot;)</td>\n </tr>\n <tr>\n <td width="26%" valign="top">publisher</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top"> Entity responsible for publication,\n distribution, or imprint</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Catch-all for references to other\n related items</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">isformatof</td>\n <td width="50%" valign="top">References additional physical form</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation </td>\n <td width="24%" valign="top">ispartof</td>\n <td width="50%" valign="top">References physically or logically\n containing item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">ispartofseries</td>\n <td width="50%" valign="top">Series name and number within that\n series, if available</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation </td>\n <td width="24%" valign="top">haspart</td>\n <td width="50%" valign="top">References physically or logically\n contained item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">isversionof</td>\n <td width="50%" valign="top">References earlier version</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">hasversion</td>\n <td width="50%" valign="top">References later version</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">isbasedon</td>\n <td width="50%" valign="top">References source.</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">isreferencedby</td>\n <td width="50%" valign="top">Pointed to by referenced resource</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">requires</td>\n <td width="50%" valign="top">Reference resource is required to\n support function, delivery, or coherence of item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation </td>\n <td width="24%" valign="top">replaces</td>\n <td width="50%" valign="top">References preceeding item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">isreplacedby</td>\n <td width="50%" valign="top">References succeeding item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">relation</td>\n <td width="24%" valign="top">uri</td>\n <td width="50%" valign="top">References Uniform Resource Identifier\n for related item</td>\n </tr>\n <tr>\n <td width="26%" valign="top">rights</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Terms governing use and reproduction</td>\n </tr>\n <tr>\n <td width="26%" valign="top">rights</td>\n <td width="24%" valign="top">uri</td>\n <td width="50%" valign="top">References terms governing use and\n reproduction</td>\n </tr>\n <tr>\n <td width="26%" valign="top">source</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Do not use; for harvested metadata only</td>\n </tr>\n <tr>\n <td width="26%" valign="top">source</td>\n <td width="24%" valign="top">uri</td>\n <td width="50%" valign="top">Do not use; for harvested metadata only</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Uncontrolled index term</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">classification</td>\n <td width="50%" valign="top">Catch-all for value from local classification\n system; global classification systems will receive specific\n qualifier.</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">ddc</td>\n <td width="50%" valign="top">Dewey Decimal Classification Number</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">lcc</td>\n <td width="50%" valign="top">Library of Congress Classification\n Number</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">lcsh</td>\n <td width="50%" valign="top">Library of Congress Subject Heading</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">mesh</td>\n <td width="50%" valign="top">Medical Subject Headings</td>\n </tr>\n <tr>\n <td width="26%" valign="top">subject</td>\n <td width="24%" valign="top">other</td>\n <td width="50%" valign="top">Local controlled vocabulary</td>\n </tr>\n <tr>\n <td width="26%" valign="top">title</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Title statement/title proper</td>\n </tr>\n <tr>\n <td width="26%" valign="top">title</td>\n <td width="24%" valign="top">alternative</td>\n <td width="50%" valign="top">Varying (or substitute) form of\n title proper appearing in item, e.g., abbreviation or translation</td>\n </tr>\n <tr>\n <td width="26%" valign="top">type</td>\n <td width="24%" valign="top">&nbsp;</td>\n <td width="50%" valign="top">Nature or genre of content</td>\n </tr>\n </table>\n</html>
/***\n|''Name:''|FootnotesPlugin|\n|''Description:''|Create automated tiddler footnotes.|\n|''Author:''|Saq Imtiaz ( lewcid@gmail.com )|\n|''Source:''|http://tw.lewcid.org/#FootnotesPlugin|\n|''Code Repository:''|http://tw.lewcid.org/svn/plugins|\n|''Version:''|2.01|\n|''Date:''|10/25/07|\n|''License:''|[[Creative Commons Attribution-ShareAlike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|\n|''~CoreVersion:''|2.2.2|\n\n!!Usage:\n*To create a footnote, just put the footnote text inside triple backticks.\n*Footnotes are numbered automatically, and listed at the bottom of the tiddler.\n*{{{Creating a footnote is easy. ```This is the text for my footnote```}}}\n*[[Example|FootnotesDemo]]\n***/\n// /%\n//!BEGIN-PLUGIN-CODE\nconfig.footnotesPlugin = {\n backLabel: "back",\n prompt:"show footnote"\n};\n\nconfig.formatters.unshift( {\n name: "footnotes",\n match: "```",\n lookaheadRegExp: /```((?:.|\sn)*?)```/g,\n handler: function(w)\n {\n this.lookaheadRegExp.lastIndex = w.matchStart;\n var lookaheadMatch = this.lookaheadRegExp.exec(w.source);\n if(lookaheadMatch && lookaheadMatch.index == w.matchStart )\n {\n var tiddler = story.findContainingTiddler(w.output);\n if (!tiddler.notes)\n tiddler.notes = [];\n var title = tiddler.getAttribute("tiddler");\n tiddler.notes.pushUnique(lookaheadMatch[1]);\n var pos = tiddler.notes.indexOf(lookaheadMatch[1]) + 1;\n createTiddlyButton(w.output,pos,config.footnotesPlugin.prompt,function(){var x = document.getElementById(title+"ftn"+pos);window.scrollTo(0,ensureVisible(x)+(ensureVisible(x)<findScrollY()?(findWindowHeight()-x.offsetHeight):0));return false;},"ftnlink",title+"ftnlink"+pos); \n w.nextMatch = lookaheadMatch.index + lookaheadMatch[0].length;\n }\n }\n});\n\nold_footnotes_refreshTiddler = Story.prototype.refreshTiddler;\nStory.prototype.refreshTiddler = function(title,template,force)\n{\n var tiddler = old_footnotes_refreshTiddler.apply(this,arguments);\n if (tiddler.notes && tiddler.notes.length)\n {\n var holder = createTiddlyElement(null,"div",null,"footnoteholder");\n var list = createTiddlyElement(holder,"ol",title+"footnoteholder");\n for (var i=0; i<tiddler.notes.length; i++)\n {\n var ftn = createTiddlyElement(list,"li",title+"ftn"+(i+1),"footnote");\n wikify(tiddler.notes[i]+" ",ftn);\n createTiddlyButton(ftn,"["+config.footnotesPlugin.backLabel+"]",config.footnotesPlugin.backLabel,function(){window.scrollTo(0,ensureVisible(document.getElementById(this.parentNode.id.replace("ftn","ftnlink"))));return false;},"ftnbklink");\n }\n var count = tiddler.childNodes.length;\n for (var j=0; j<count; j++){\n if(hasClass(tiddler.childNodes[j],"viewer")){\n var viewer = tiddler.childNodes[j]; \n }\n }\n viewer.appendChild(holder);\n tiddler.notes = [];\n }\n return tiddler;\n};\n\nsetStylesheet(\n".tiddler a.ftnlink {vertical-align: super; font-size: 0.8em; color:red;}\sn"+\n".tiddler a.ftnlink:hover, .tiddler .footnoteholder a.ftnbklink:hover{color:#fff;background:red;}\sn"+\n".tiddler div.footnoteholder{margin:1.8em 1.0em; padding:0.1em 1.0em 0.1em 1.0em ;border-left: 1px solid #ccc;}"+\n".tiddler footnoteholder ol {font-size: 0.9em; line-height: 1.2em;}\sn"+\n".tiddler .footnoteholder li.footnote {margin: 0 0 5px 0;}\sn"+\n".tiddler .footnoteholder a.ftnbklink{color:red;}\sn","FootNotesStyles");\n//!END-PLUGIN-CODE\n// %/
http://www.google.com/search?client=safari&rls=x86_64&q=Barbara+Means+et+al.%2C+Evaluation+of+Evidence-Based+Practices+in+Online+Learning%2C+US+Dept.+of+Ed&ie=UTF-8&oe=UTF-8
!!! Problem of abundance\n* train user ( not )\n* facets\n\n!!!What's missing\n\n!!! Relevance\n\n!!! Problems of integration\n!!!Keeping up\n
[img[/filestore/uploads/highered/educagtion-learning.png]]\n\nSource: [[medium.com|https://medium.com/teaching-learning/education-vs-learning-9f0d0d5696b5]]
[[eLesson Markup Language|http://www.elml.ch/website/en/html/unit_manual.html]]
/***\n|''Name:''|Plugin: ZiddlyWiki|\n|''Description:''|Client-side component of the ZiddlyWiki server-side for TiddlyWiki|\n|''Version:''|1.0.0|\n|''Date:''|Sep 30, 2006|\n|''Source:''|http://ziddlywiki.com|\n|''Author:''|BobMcElrath|\n|''Email:''|my first name at my last name dot org|\n|''License:''|[[GPL open source license|http://www.gnu.org/licenses/gpl.html]]|\n|''~CoreVersion:''|2.1.0|\n!Description\nThis plugin is useful only in conjunction with the ZiddlyWiki server-side for\nTiddlyWiki. This plugin is automatically added to any TiddlyWiki downloaded\nfrom a ZiddlyWiki server, and should not be added by hand to your TiddlyWiki.\n\nIf you want to use the ZiddlyWiki server, install that first, and you will\nautomatically get this plugin.\n!My Server\nThis ZiddlyWiki lives at: \n{{{\n http://kennison.name/work/notes\n}}}\n!API\n{{{\n action=get\n}}}\n!Code\n***/\n//{{{\n// Place to store my junk\nif(typeof zw == "undefined") var zw = {};\nconfig.options.checkUnsavedChanges = false;\nconfig.options.confirmExit = false;\n//zw.ieurl = (navigator.appVersion.indexOf('MSIE') > -1) ? 'ie=1&' : '';\nzw.editingTiddlers = {};\nzw.dirty = false; // flag for when ZW was unable to save something\nzw.serverUrl = "http://kennison.name/work/notes";\n\nconfig.messages.loginToEdit = 'You must be logged in to make changes. Viewing source instead.';\nconfig.messages.errorDeleting = 'An error has occurred. Review your Zope error log for details.';\nconfig.messages.errorSaving = 'An error has occurred. Review your Zope error log for details. If you navigate away from this page now, you will lose your changes.';\nconfig.messages.protectedTiddler = 'You are not allowed to edit here. Click OK to view the source.';\nconfig.messages.lockedTiddler = 'This tiddler is currently being edited by %s. Please try again in a few minutes.';\nconfig.messages.lockedTiddlerYou = 'This tiddler is currently locked by you. Would you like to edit anyway?';\nconfig.messages.viewRevisionTooltip = 'View this revision.';\nconfig.messages.exportLinkLabel = 'export to file';\nconfig.messages.exportLinkPrompt = 'Export to a TiddlyWiki file';\nconfig.messages.importLinkLabel = 'import from file';\nconfig.messages.importLinkPrompt = 'Import from a TiddlyWiki file';\nconfig.messages.unsavedChangesWarning = 'Something has gone wrong and ZiddlyWiki was unable to save all changes to the server.\snIf you navigate away from this page, those changes will be lost.\snPress OK to save a backup to a local file.';\n\nconfig.views.wikified.toolbarRevisions = {text: "revisions", tooltip: "View another revision of this tiddler", popupNone: "No revisions"};\n\n// Shadow tiddlers that are protected\nconfig.protectedTiddlers = ['DefaultTiddlers', 'MainMenu'];\n\nconfig.replaceBodyCharacters = [\n \n];\n\nconfig.macros.login = {\n label: 'login',\n prompt: 'Log into the system',\n sizeTextbox: 15,\n // FIXME onmouseover, etc... do these cause a problem? Add (?!onmouseover|onmouseout...)\n innerHTMLSafe: /^<div( ([a-zA-Z0-9_]+)="[^"]*")+>[^<>]*<\s/div>$/,\n handler: function(place) {\n if(zw.loggedIn) {\n var link = createTiddlyLink(place, zw.username, true);\n if(location.protocol == "file:") {\n link.innerHTML = zw.username + ' (offline)';\n } else {\n link.innerHTML = zw.username + ' (logged in)';\n createTiddlyButton(place, "logout", "Log out of the system", this.doLogout);\n }\n } else {\n // FIXME Only make login form if cookie-based login are enabled.\n var form = document.createElement("form");\n form.action = "?action=get&title=ZiddlyStatus";\n var u = createTiddlyElement(form, "input", "zw_username");\n u.value = "YourName";\n u.onclick = this.clearInput;\n u.size = this.sizeTextbox;\n u.onkeypress = this.enterSubmit;\n u.name = "__ac_name";\n var p = createTiddlyElement(form, "input", "zw_password");\n p.value = "password";\n p.size = this.sizeTextbox;\n p.onclick = this.clearInput;\n p.onkeypress = this.enterSubmit;\n p.name = "__ac_password";\n place.appendChild(form);\n createTiddlyButton(place,this.label,this.prompt,this.doLogin);\n }\n },\n clearInput: function(e) {\n var u = document.getElementById("zw_username");\n var p = document.getElementById("zw_password");\n if((e.target == u || e.target == p) && p.type != "password") { \n u.value = ''; \n p.value=''; \n p.type = "password";\n }\n },\n enterSubmit: function(e) {\n if(e.keyCode == 13 || e.keyCode == 10) config.macros.login.doLogin(e);\n },\n doLogin: function(e) {\n clearMessage();\n displayMessage('Logging in...');\n var u = document.getElementById("zw_username");\n var p = document.getElementById("zw_password");\n zw.loggingIn = true;\n ajax.post(zw.serverUrl.replace("http://","http://"+u.value+":"+p.value+"@")\n ,zw.addTiddler,\n "action=get&title=ZiddlyStatus&__ac_name="+u.value+"&__ac_password="+p.value);\n },\n doLogout: function(e) {\n clearMessage();\n displayMessage('Logging out...');\n zw.loggingIn=false;\n // FIXME this will fail if " " is a valid username\n ajax.post(zw.serverUrl.replace("http://","http:// :@")\n ,zw.addTiddler,\n "action=get&title=ZiddlyStatus&__ac_name=&__ac_password=");\n },\n statusChange: function() {\n var oldreadOnly = readOnly;\n config.options.chkHttpReadOnly = (zw.loggedIn || zw.anonEdit || location.protocol == "file:") ? false:true;\n readOnly = !zw.loggedIn;\n // Check for new tiddlers\n var numtofetch = 0;\n var missingtiddlers = "";\n for(var t in zw.tiddlerList) {\n if(!store.fetchTiddler(t.htmlDecode())) {\n numtofetch++;\n missingtiddlers += "\sn" + t;\n }\n }\n var fetched = 0;\n this.fetchlist = [];\n if(zw.tiddlerList.length == 0) {\n clearMessage();\n } else for(var t in zw.tiddlerList) {\n if(!store.fetchTiddler(t.htmlDecode())) {\n var callback = zw.addTiddler;\n this.fetchlist.push(t);\n if(++fetched == numtofetch) \n callback = config.macros.login.addLastTiddler;\n ajax.get('?action=get&title=' + encodeURIComponent(t.htmlDecode())\n + "&" + zw.no_cache(), callback)\n }\n }\n if(oldreadOnly != readOnly || numtofetch == 0) {\n refreshDisplay(["ViewTemplate", "EditTemplate"]);\n story.refreshAllTiddlers();\n refreshAll();\n }\n },\n doneLoginout: function() {\n var evalme = store.fetchTiddler("ZiddlyStatus").text;\n window.eval(evalme);\n readOnly = !zw.loggedIn;\n store.notify(["ZiddlyStatus"], true);\n if(!zw.loggedIn && zw.loggingIn) { // still not logged in.\n clearMessage();\n displayMessage("Authentication failed. Did you type your username and password correctly?");\n }\n if(!zw.loggingIn || (zw.loggedIn && zw.loggingIn)) clearMessage();\n return true;\n },\n addLastTiddler: function(str,status) {\n zw.addTiddler(str,status);\n refreshAll(); // Just redraw everything.\n }\n};\n// This causes our doneLogin method above to be called on startup.\nstore.addNotification("ZiddlyStatus", config.macros.login.statusChange);\n\n// Dynamically load a tiddler\nzw.loadTiddler = function(t) {\n var str = ajax.gets('?action=get&title=' + encodeURIComponent(t.htmlDecode())\n + "&" + zw.no_cache());\n return zw.addTiddler(str, 200);\n}\n\nzw.addTiddler = function(str,status) {\n var tiddler = new Tiddler();\n var d = document.createElement("div");\n if(!str.match(config.macros.login.innerHTMLSafe)) { \n if(!confirm("This tiddler appears to contain HTML and may be dangerous\sn\sn"+str)) \n return tiddler;\n }\n d.innerHTML = str; // FIXME dangerous -- response could contain <script>\n var title = store.getLoader().getTitle(store, d.firstChild);\n if(status == 404) { // not found\n store.zw_removeTiddler(title);\n } else if(status == 200) { // okay\n tiddler = store.getLoader().internalizeTiddler(store, tiddler, title, d.firstChild);\n tiddler.changed();\n store.addTiddler(tiddler);\n if(typeof store.getValue(title, "oldtitle") != "undefined") {\n store.setValue(title, "renamedSubTitle", \n "(renamed from "+store.getValue(title, "oldtitle")+")");\n }\n }\n if(tiddler.title == "ZiddlyStatus")\n config.macros.login.doneLoginout();\n refreshDisplay(title);\n return tiddler;\n}\n\nTiddler.prototype.getSubtitle = function() {\n var theModifier = this.modifier;\n if(!theModifier)\n theModifier = config.messages.subtitleUnknown;\n var theModified = this.modified;\n if(theModified)\n theModified = theModified.toLocaleString();\n else\n theModified = config.messages.subtitleUnknown;\n return(config.messages.tiddlerLinkTooltip.format([this.title,theModifier,\ntheModified]));\n\n}\n\nconfig.macros.ziddlyversion = {\n handler: function(place) {\n createTiddlyElement(place,"span",null,null,version.major + "." \n + version.minor + "." + version.revision \n + (version.beta ? "(b" + version.beta + ")" : "") + "." \n + version.extensions.ZiddlyWiki);\n }\n};\n\nconfig.macros.exportLink = {\n label: config.messages.exportLinkLabel,\n prompt: config.messages.exportLinkPrompt,\n handler: function(place) { \n if(location.protocol == "file:") {\n this.label = config.macros.saveChanges.label;\n this.prompt = config.macros.saveChanges.prompt;\n this.accessKey = config.macros.saveChanges.accessKey;\n config.macros.saveChanges.handler(place);\n } else {\n createTiddlyButton(place,this.label,this.prompt,function(){\n location.href='?action=export';return false;\n });\n }\n }\n};\n\nconfig.macros.importLink = {\n label: config.messages.importLinkLabel,\n prompt: config.messages.importLinkPrompt,\n handler: function(place) {\n if(zw.loggedIn || zw.anonEdit) {\n createTiddlyButton(place,this.label,this.prompt,function(){\n displayTiddler(null, "ImportTiddlers");\n });\n }\n }\n};\n\nTiddlyWiki.prototype.zw_removeTiddler = TiddlyWiki.prototype.removeTiddler;\nTiddlyWiki.prototype.removeTiddler = function(title) {\n displayMessage("Deleting '"+title+"' on server...");\n ajax.post(zw.serverUrl, zw.addTiddler, 'action=delete&title=' + encodeURIComponent(title) + '&' + zw.no_cache());\n return true;\n};\n\nTiddlyWiki.prototype.zw_saveTiddler = TiddlyWiki.prototype.saveTiddler;\nTiddlyWiki.prototype.saveTiddler = function(title,newTitle,newBody,modifier,modified,tags,fields) {\n displayMessage("Saving '"+title+"'...");\n newBody = replaceBodyCharacters(newBody);\n var tiddler = this.zw_saveTiddler(title,newTitle,newBody,modifier,modified,tags,fields);\n var callback = function(r,status){\n var newtiddler = zw.addTiddler(r,status);\n if(!newtiddler) {\n alert("ZiddlyWiki error: The tiddler '"+title+"' that I just tried to save\sn"\n +"doesn't exist after the save! Response ("+status+") was: \sn"+r);\n zw.dirty = true;\n } else if(newtiddler.escapeLineBreaks().htmlEncode() != tiddler.escapeLineBreaks().htmlEncode()) {\n alert("ZiddlyWiki error: Saved tiddler '"+title+"' is not the same as what was just saved."\n +"\sn-------------------before---------------------\sn"+tiddler.escapeLineBreaks().htmlEncode()\n +"\sn-------------------after----------------------\sn"+newtiddler.escapeLineBreaks().htmlEncode()\n );\n zw.dirty = true;\n }\n };\n// FIXME by using async ajax here, a reload timeout may come between the save\n// and the callback's return, which causes the tiddler to be double-rendered.\n ajax.post(zw.serverUrl, callback, 'action=save&oldtitle=' + encodeURIComponent(title) + '&title=' \n + encodeURIComponent(newTitle) + '&body=' + encodeURIComponent(newBody) + '&tags=' \n + encodeURIComponent(tags) + '&modified=' \n + encodeURIComponent((modified||store.fetchTiddler(title).modified).convertToYYYYMMDDHHMM()) \n + '&' + zw.no_cache());\n clearMessage();\n return tiddler;\n};\n\nfunction replaceBodyCharacters(body) {\n var chars = config.replaceBodyCharacters;\n for(var i=0; i<chars.length; i++) {\n body = body.replace(chars[i][0], chars[i][1]);\n }\n return body;\n};\n\nzw.no_cache = function() {return new String((new Date()).getTime())};\n\nconfig.commands.revisions = {\n text: config.views.wikified.toolbarRevisions.text,\n tooltip: config.views.wikified.toolbarRevisions.tooltip,\n popupNone: config.views.wikified.toolbarRevisions.popupNone,\n hideShadow: true,\n handler: function(event,src,title) {\n var popup = Popup.create(src);\n Popup.show(popup,false);\n var callback = function(r,status) {\n if(popup) {\n if(status != 200) {\n createTiddlyText(createTiddlyElement(popup,"li",null,"disabled"),\n config.views.wikified.toolbarRevisions.popupNone);\n } else {\n var revs = r.split('\sn');\n for(var i=0; i<revs.length; i++) {\n var parts = revs[i].split(' ');\n if(parts.length>1) {\n var modified = Date.convertFromYYYYMMDDHHMM(parts[0]);\n var key = parts[1];\n var modifier = parts[2];\n var button = createTiddlyButton(createTiddlyElement(popup,"li"), modified.toLocaleString() +" "+ modifier, \n config.messages.viewRevisionTooltip, \n function(){\n displayTiddlerRevision(this.getAttribute('tiddlerTitle'), \n this.getAttribute('revision'), this); \n return false;\n }, 'tiddlyLinkExisting tiddlyLink');\n button.setAttribute('tiddlerTitle', title);\n button.setAttribute('revision', key);\n var t = store.fetchTiddler(title);\n if(!t) alert("Attempt to find revisions for non-existant tiddler '"+title+"'!");\n if(t && (store.getValue(t, 'revision') == key))\n button.className = 'revisionCurrent';\n if(i == 0)\n this.latestRevision = key;\n }\n }\n }\n }\n };\n ajax.get('?action=get_revisions&title=' + encodeURIComponent(title.htmlDecode()) + '&' + zw.no_cache(), callback);\n event.cancelBubble = true;\n if (event.stopPropagation) event.stopPropagation();\n return true;\n }\n}\n\nfunction displayTiddlerRevision(title, revision, src, updateTimeline) {\n var tiddler = store.fetchTiddler(title);\n// We already have the latest version\n if(tiddler && store.getValue(tiddler, 'revision') == revision) return;\n displayMessage("Loading revision information for '"+title+"'...");\n revision = revision ? '&revision=' + revision : '';\n ajax.get('?action=get&title=' + encodeURIComponent(title.htmlDecode()) + revision \n + '&' + zw.no_cache(), displayTiddlerRevisionCallback)\n};\n\nfunction displayTiddlerRevisionCallback(str,status) {\n store.suspendNotifications(); // To prevent multiple redraws\n var tiddler = zw.addTiddler(str,status);\n store.setValue(tiddler.title, "historicalSubTitle", "");\n if(tiddler.tags.contains('deleted'))\n store.setValue(tiddler.title, "historicalSubTitle", \n store.getValue(tiddler.title, "historicalSubTitle")+" (deleted)");\n if(latestRevision != store.getValue(tiddler.title, "revision"))\n store.setValue(tiddler.title, "historicalSubTitle", \n store.getValue(tiddler.title, "historicalSubTitle")+" (historical revision)");\n store.setValue(tiddler.title, "latestRevision", latestRevision);\n story.refreshTiddler(tiddler.title, DEFAULT_VIEW_TEMPLATE, true);\n store.resumeNotifications();\n clearMessage();\n}\n\nTiddler.prototype.isReadOnly = function() {\n if(store.getValue(this.title, "readonly") == "true") return true;\n if(zw.isAdmin) return false;\n if(zw.loggedIn && this.modifier == zw.username) return false;\n if(location.protocol == "file:") return false;\n return isProtectedTiddler(this.title) || !(zw.anonEdit || zw.loggedIn);\n};\n\n// Add the protected tag to tiddlers in config.protectedTiddlers\nTiddler.prototype.zw_set = Tiddler.prototype.set;\nTiddler.prototype.set = function(title,text,modifier,modified,tags,created) {\n if(!tags) tags = [];\n if(typeof tags == "string") tags = tags.readBracketedList();\n if(!store.tiddlerExists(title) && store.isShadowTiddler(title)) {\n for(var i=0;i<config.protectedTiddlers.length;i++) {\n if(config.protectedTiddlers[i] == title) {\n tags.push('protected');\n break;\n }\n }\n }\n return this.zw_set(title, text, modifier, modified, tags, created);\n}\n\nconfig.commands.editTiddler.zw_handler = config.commands.editTiddler.handler;\nconfig.commands.editTiddler.handler = function(event,src,title) {\n if(readOnly) {\n this.zw_handler(event,src,title);\n } else {\n displayMessage("Loading '"+title+"'...");\n var obj = this;\n var callback = function(r,status) {\n clearMessage();\n if(status == 404) { // doesn't exist (might be a shadow tiddler)\n zw.editingTiddlers[title] = true;\n obj.zw_handler(event,src,title);\n } else if(status == 200) {\n var tiddler = zw.addTiddler(r,status);\n if(tiddler.tags.indexOf('deleted') != -1) // Remove the deleted tag on edit\n tiddler.tags.splice(tiddler.tags.indexOf('deleted'),1);\n zw.editingTiddlers[tiddler.title] = true;\n obj.zw_handler(event,src,tiddler.title);\n } else if(status == 503) { // "Temporarily Unavailable" Conflict\n if(r == zw.username) {\n if(confirm(config.messages.lockedTiddlerYou)) {\n var str = ajax.gets('?action=unlock&title=' + encodeURIComponent(title)\n + "&" + zw.no_cache());\n zw.addTiddler(str, 200);\n return obj.handler(event,src,title);\n }\n } else {\n alert(config.messages.lockedTiddler.replace(/%s/g, r));\n }\n } else if(status == 403) {\n // Lock failed, we must not be logged in, or something changed underneath us.\n zw.loggedIn = false;\n zw.isAdmin = false;\n readOnly = true;\n zw.loadTiddler("ZiddlyStatus");\n //refreshDisplay(["SideBarOptions","ViewTemplate", "EditTemplate"]);\n //story.refreshAllTiddlers();\n alert(config.messages.loginToEdit);\n config.commands.editTiddler.zw_handler(event,src,title);\n } else {\n alert("Server returned a response I don't understand:\sn\sn"+k);\n }\n };\n var rev = "";\n if(store.getValue(title, "latestRevision") != "undefined")\n rev = "revision="+store.getValue(title, "revision");\n ajax.post(zw.serverUrl, callback, 'action=lock&title=' + encodeURIComponent(title) + '&' + rev + '&' + zw.no_cache());\n }\n return false;\n};\n\nconfig.commands.saveTiddler.zw_handler = config.commands.saveTiddler.handler;\nconfig.commands.saveTiddler.handler = function(event,src,title) {\n if(zw.isAdmin \n || (zw.loggedIn || zw.anonEdit) && !isProtectedTiddler(title)\n || (isProtectedTiddler(title) && zw.loggedIn && this.modifier == zw.username)) {\n zw.editingTiddlers[title] = false;\n return this.zw_handler(event,src,title);\n } else {\n config.commands.cancelTiddler.zw_handler(null,null,title);\n }\n return false;\n};\n\nconfig.commands.deleteTiddler.zw_handler = config.commands.deleteTiddler.handler;\nconfig.commands.deleteTiddler.handler = function(event,src,title) {\n if(zw.isAdmin \n || (zw.loggedIn || zw.anonEdit) && !isProtectedTiddler(title)\n || (isProtectedTiddler(title) && zw.loggedIn && this.modifier == zw.username)) {\n zw.editingTiddlers[title] = false;\n return this.zw_handler(event,src,title);\n } else {\n config.commands.cancelTiddler.zw_handler(null,null,title);\n }\n return false;\n};\n\nconfig.commands.cancelTiddler.zw_handler = config.commands.cancelTiddler.handler;\nconfig.commands.cancelTiddler.handler = function(event,src,title) {\n if(!config.options.chkHttpReadOnly) {\n if(zw.editingTiddlers[title]) {\n var str = ajax.gets('?action=unlock&title=' + encodeURIComponent(title) + "&" + zw.no_cache());\n zw.addTiddler(str, 200);\n }\n zw.editingTiddlers[title] = false;\n }\n return this.zw_handler(event,src,title);\n};\n\nfunction isProtectedTiddler(title) {\n var tiddler = store.fetchTiddler(title);\n if(!tiddler) { // Must be a shadow\n for(var i=0;i<config.protectedTiddlers.length;i++) {\n if(config.protectedTiddlers[i] == title) return true;\n }\n }\n if(tiddler && tiddler.tags) {\n for(var i=0;i<tiddler.tags.length;i++) {\n if(tiddler.tags[i] == 'protected') return true;\n }\n }\n return false;\n};\n\nzw.refresh_count = 0;\nzw.refresh_tiddlers = function() {\n zw.refresh_count++;\n if(zw.refresh_count > 30) { // thirty minutes\n clearInterval(zw.refresh_interval_id);\n } else {\n ajax.get(zw.serverUrl + '?action=refresh&latest=' + zw.latestTiddler, zw.refresh_tiddlers_callback);\n }\n};\n\n// If there are unsaved changes, force the user to confirm before exitting\nfunction confirmExit()\n{\n hadConfirmExit = true;\n if(zw.dirty) return config.messages.confirmExit;\n}\n\n// Give the user a chance to save changes before exitting\nfunction checkUnsavedChanges()\n{\n if(zw.dirty && window.hadConfirmExit === false)\n {\n if(confirm(config.messages.unsavedChangesWarning))\n saveChanges();\n }\n}\n\nTiddler.prototype.isReadOnly = function() {\n return readOnly || store.getValue(this.title, "readonly");\n}\n\n// Receives a list of updated tiddler [timestamp, [title, modified, revision], ...]\n// If TW supports higher resolution modification stamps (currently: 1 minute) we can use\n// that as an identifier instead of revision\nzw.refresh_tiddlers_callback = function(tiddlers) {\n if(tiddlers == '') return;\n tiddlers = tiddlers.split('\sn\sn');\n zw.latestTiddler = parseInt(tiddlers[0]);\n for(var i=1; i<tiddlers.length; i++) {\n var l = tiddlers[i].split('\sn'); // [title, modified, revision]\n if(!zw.editingTiddlers[l[0]]) // FIXME if it's being edited and we just found out someone else modified it, we should issue a warning.\n displayTiddlerRevision(l[0], l[2], null, true);\n }\n};\n\nif(location.protocol != "file:")\n zw.refresh_interval_id = setInterval('zw.refresh_tiddlers()', 60000); // refresh every minute\n\n// mini/ajax.js - http://timmorgan.org/mini\n\nfunction $(e){if(typeof e=='string')e=document.getElementById(e);return e};\nfunction collect(a,f){var n=[];for(var i=0;i<a.length;i++){var v=f(a[i]);if(v!=null)n.push(v)}return n};\n\nvar ajax={};\najax.x=function(){try{return new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{return new ActiveXObject('Microsoft.XMLHTTP')}catch(e){return new XMLHttpRequest()}}};\najax.serialize=function(f){var g=function(n){return f.getElementsByTagName(n)};var nv=function(e){if(e.name)return encodeURIComponent(e.name)+'='+encodeURIComponent(e.value);else return ''};var i=collect(g('input'),function(i){if((i.type!='radio'&&i.type!='checkbox')||i.checked)return nv(i)});var s=collect(g('select'),nv);\nvar t=collect(g('textarea'),nv);return i.concat(s).concat(t).join('&');};\najax.send=function(u,f,m,a){var x=ajax.x();x.open(m,u,true);x.onreadystatechange=function(){if(x.readyState==4)f(x.responseText,x.status,x.statusText)};if(m=='POST')x.setRequestHeader('Content-type','application/x-www-form-urlencoded');x.send(a)};\najax.get=function(url,func){ajax.send(url,func,'GET')};\najax.gets=function(url){var x=ajax.x();x.open('GET',url,false);x.send(null);return x.responseText};\najax.post=function(url,func,args){ajax.send(url,func,'POST',args)};\najax.posts=function(url,args){var x=ajax.x();x.open('POST',url,false);x.setRequestHeader('Content-type','application/x-www-form-urlencoded');x.send(args);return x.responseText};\najax.update=function(url,elm){var e=$(elm);var f=function(r){e.innerHTML=r};ajax.get(url,f)};\najax.submit=function(url,elm,frm){var e=$(elm);var f=function(r){e.innerHTML=r};ajax.post(url,f,ajax.serialize(frm))};\n\n//if(window.netscape && window.netscape.security && document.location.protocol.indexOf("http") == -1)\n//window.netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");\n//window.netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserWrite");\n//window.netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");\n\n//}}}\n
/*\n TiddlyWiki Comments Plugin - Online demo at http://tiddlyguv.org/CommentsPlugin.html\n\n TODO:\n - Support Cascade comment delete when the top-level tiddler is deleted\n - Support more than one < <comments> > per tiddler. This will probably entail creating an invisible root tiddler to\n hold all the comments for a macro together. The user will need to provide an ID for this tiddler.\n - Don't use global "macro" var (use "macro" param a la jquery)\n\n*/\n\n/***\n|Name|CommentsPlugin|\n|Description|Macro for nested comments, where each comment is a separate tiddler.|\n|Source|http://tiddlyguv.org/CommentsPlugin.html#CommentsPlugin|\n|Documentation|http://tiddlyguv.org/CommentsPlugin.html#CommentsPluginInfo|\n|Version|0.1|\n|Author|Michael Mahemoff, Osmosoft|\n|''License:''|[[BSD open source license]]|\n|~CoreVersion|2.2|\n***/\n\n/*{{{*/\nif(!version.extensions.CommentsPlugin) {\n\n version.extensions.CommentsPlugin = {installed:true};\n\n (function(plugin) {\n\n var cmacro = config.macros.comments = {\n\n\n\ninit: function() {\n var stylesheet = store.getTiddlerText(tiddler.title + "##StyleSheet");\n if (stylesheet) { // check necessary because it happens more than once for some reason\n config.shadowTiddlers["StyleSheetCommentsPlugin"] = stylesheet;\n store.addNotification("StyleSheetCommentsPlugin", refreshStyles);\n }\n if (!version.extensions.CommentsPlugin.retainViewTemplate) cmacro.enhanceViewTemplate();\n},\n\nenhanceViewTemplate: function() {\n var template = config.shadowTiddlers.ViewTemplate;\n if ((/commentBreadcrumb/g).test(template)) return; // already enhanced\n var TITLE_DIV = "<div class='title' macro='view title'></div>";\n var commentsDiv = "<div class='commentBreadcrumb' macro='commentBreadcrumb'></div>";\n config.shadowTiddlers.ViewTemplate = template.replace(TITLE_DIV,commentsDiv+"\sn"+TITLE_DIV);\n},\n\nhandler: function(place,macroName,params,wikifier,paramString,tiddler) {\n var macroParams = paramString.parseParams();\n var tiddlerParam = getParam(macroParams, "tiddler");\n tiddler = tiddlerParam ? store.getTiddler(tiddlerParam) : tiddler;\n if (!tiddler || !store.getTiddler(tiddler.title)) return;\n cmacro.buildCommentsArea(tiddler, place, macroParams);\n // cmacro.refreshCommentsFromRoot(story.getTiddler(tiddler.title).commentsEl, tiddler, macroParams);\n cmacro.refreshCommentsFromRoot(place.commentsEl, tiddler, macroParams);\n},\n\n\nbuildCommentsArea: function(rootTiddler, place, macroParams) {\n var commentsArea = createTiddlyElement(place, "div", null, "comments");\n var heading = getParam(macroParams, "heading");\n if (heading) createTiddlyElement(commentsArea, "h1", null, null, heading);\n var comments = createTiddlyElement(commentsArea, "div", null, "");\n place.commentsEl = comments;\n\n if (cmacro.editable(macroParams)) {\n var newCommentArea = createTiddlyElement(commentsArea, "div", null, "newCommentArea", "New comment:");\n cmacro.forceLoginIfRequired(params, newCommentArea, function() {\n var newCommentEl = cmacro.makeTextArea(newCommentArea, macroParams);\n // var addComment = createTiddlyElement(newCommentArea, "button", null, "addComment button", "Add Comment");\n var addComment = createTiddlyButton(newCommentArea, "Add Comment", null, function() {\n var comment = cmacro.createComment(newCommentEl.value, rootTiddler, macroParams); \n newCommentEl.value = "";\n cmacro.refreshCommentsFromRoot(comments, rootTiddler, macroParams);\n }, "addComment button");\n });\n }\n\n},\n\n\nmakeTextArea: function(container, macroParams) {\n var textArea = createTiddlyElement(container, "textarea");\n textArea.rows = getParam(macroParams, "textRows") || 4;\n textArea.cols = getParam(macroParams, "textCols") || 20;\n textArea.value = getParam(macroParams, "text") || "";\n return textArea;\n},\n\nrefreshCommentsFromRoot: function(rootCommentsEl, rootTiddler, macroParams) {\n cmacro.treeifyComments(rootTiddler);\n cmacro.refreshComments(rootCommentsEl, rootTiddler, macroParams);\n},\n\nrefreshComments: function(daddyCommentsEl, tiddler, macroParams) {\n // cmacro.log("refreshComments - root", rootCommentsEl, "daddy", daddyCommentsEl,\n // "tiddler ", tiddler, "macroParams ", macroParams);\n // cmacro.log("refreshComments", arguments);\n\n var commentsEl;\n if (tiddler.fields.daddy) {\n var commentEl = cmacro.buildCommentEl(daddyCommentsEl, tiddler, macroParams);\n daddyCommentsEl.appendChild(commentEl);\n commentsEl = commentEl.commentsEl;\n } else { // root element\n removeChildren(daddyCommentsEl);\n // refreshedEl = story.getTiddler(tiddler.title);\n commentsEl = daddyCommentsEl;\n }\n\n for (var child = tiddler.firstChild; child; child = child.next) {\n cmacro.refreshComments(commentsEl, child, macroParams);\n }\n\n},\n\ntreeifyComments: function(rootTiddler) {\n\n var comments = cmacro.findCommentsFromRoot(rootTiddler);\n\n cmacro.forEach(comments, function(comment) {\n var prev = comment.fields.prev;\n var daddy = comment.fields.daddy;\n if (prev) {\n store.getTiddler(prev).next = comment;\n } else {\n store.getTiddler(daddy).firstChild = comment;\n }\n });\n\n},\n\nlogComments: function(comments) {\n for (var i=0; i<comments.length; i++) {\n var comment = comments[i];\n }\n},\n\nfindCommentsFromRoot: function(rootTiddler) {\n var comments = [];\n store.forEachTiddler(function(title,tiddler) {\n if (tiddler.fields.root==rootTiddler.title) comments.push(tiddler);\n });\n return comments;\n},\n\nfindChildren: function(daddyTiddler) {\n var comments = [];\n store.forEachTiddler(function(title,tiddler) {\n if (tiddler.fields.daddy==daddyTiddler.title) comments.push(tiddler);\n });\n return comments;\n},\n\nbuildCommentEl: function(daddyCommentsEl, comment, macroParams) {\n\n // COMMENT ELEMENT\n var commentEl = document.createElement("div");\n commentEl.className = "comment";\n\n // HEADING <- METAINFO AND DELETE\n var headingEl = createTiddlyElement(commentEl, "div", null, "heading");\n\n var metaInfoEl = createTiddlyElement(headingEl, "div", null, "commentTitle", comment.modifier + '@' + comment.modified.formatString(getParam(macroParams,"dateFormat") || "DDD, MMM DDth, YYYY hh12:0mm:0ss am"));\n metaInfoEl.onclick = function() { \n // story.closeAllTiddlers();\n story.displayTiddler("top", comment.title, null, true);\n // document.location.hash = "#" + comment.title;\n };\n\n var deleteEl = createTiddlyElement(headingEl, "div", null, "deleteComment", "X");\n deleteEl.onclick = function() {\n if (true || confirm("Delete this comment and all of its replies?")) {\n cmacro.deleteTiddlerAndDescendents(comment);\n commentEl.parentNode.removeChild(commentEl);\n }\n };\n\n // TEXT\n commentEl.text = createTiddlyElement(commentEl, "div", null, "commentText");\n wikify(comment.text, commentEl.text);\n\n // REPLY LINK\n if (cmacro.editable(macroParams)) {\n var replyLinkZone = createTiddlyElement(commentEl, "div", null, "replyLinkZone");\n var replyLink = createTiddlyElement(replyLinkZone, "span", null, "replyLink", "reply to this comment");\n replyLink.onclick = function() { cmacro.openReplyLink(comment, commentEl, replyLink, macroParams); };\n }\n\n // var clearance = createTiddlyElement(commentEl, "clearance", null, "clearance");\n // clearance.innerHTML = "&nbsp;";\n\n // COMMENTS AREA\n commentEl.commentsEl = createTiddlyElement(commentEl, "div", null, "comments");\n\n // RETURN\n return commentEl;\n\n},\n\nopenReplyLink: function(commentTiddler, commentEl, replyLink, macroParams) {\n if (commentEl.replyEl) {\n commentEl.replyEl.style.display = "block";\n return;\n }\n\n commentEl.replyEl = document.createElement("div");\n commentEl.replyEl.className = "reply";\n\n replyLink.style.display = "none";\n var newReplyHeading = createTiddlyElement(commentEl.replyEl, "div", null, "newReply");\n createTiddlyElement(newReplyHeading, "div", null, "newReplyLabel", "New Reply:");\n var closeNewReply = createTiddlyElement(newReplyHeading, "div", null, "closeNewReply", "close");\n closeNewReply.onclick = function() {\n commentEl.replyEl.style.display = "none";\n replyLink.style.display = "block";\n };\n\n cmacro.forceLoginIfRequired(params, commentEl.replyEl, function() {\n var replyText = cmacro.makeTextArea(commentEl.replyEl, macroParams);\n var submitReply = createTiddlyButton(commentEl.replyEl, "Reply", null, function() {\n var newComment = cmacro.createComment(replyText.value, commentTiddler, macroParams);\n replyText.value = "";\n closeNewReply.onclick();\n cmacro.refreshComments(commentEl.commentsEl, newComment, macroParams);\n });\n });\n\n commentEl.insertBefore(commentEl.replyEl, commentEl.commentsEl);\n},\n\n\ncreateComment: function(text, daddy, macroParams) {\n\n var rootTitle = daddy.fields.root ? daddy.fields.root : daddy.title;\n // second case is the situation where daddy *is* root\n var newComment = cmacro.createCommentTiddler(macroParams, rootTitle);\n var fieldsParam = getParam(macroParams, "fields") || "";\n var fields = fieldsParam.decodeHashMap();\n var inheritedFields = (getParam(macroParams, "inheritedFields") || "").split(",");\n cmacro.forEach(inheritedFields, function(field) {\n if (field!="") fields[field] = daddy.fields[field];\n });\n var tagsParam = getParam(macroParams, "tags") || "comment";\n var now = new Date();\n newComment.set(null, text, config.options.txtUserName, now, tagsParam.split(","), now, fields);\n\n var youngestSibling = cmacro.findYoungestChild(daddy)\n if (youngestSibling) newComment.fields.prev = youngestSibling.title;\n newComment.fields.daddy = daddy.title;\n newComment.fields.root = rootTitle;\n\n cmacro.saveTiddler(newComment.title);\n autoSaveChanges(false);\n return newComment;\n},\n\nfindYoungestChild: function(daddy) {\n\n var siblingCount = 0;\n var elderSiblings = cmacro.mapize(cmacro.selectTiddlers(function(tiddler) {\n isChild = (tiddler.fields.daddy==daddy.title);\n if (isChild) siblingCount++;\n return isChild;\n }));\n if (!siblingCount) return null;\n\n // Find the only sibling that doesn't have a prev pointing at it\n var youngestSiblings = cmacro.clone(elderSiblings) // as a starting point\n cmacro.forEachMap(elderSiblings, function(tiddler) {\n delete youngestSiblings[tiddler.fields.prev];\n });\n\n for (title in youngestSiblings) { return youngestSiblings[title]; }\n\n},\n\n// The recursive delete is run by a separate function (nested inside\n// this one, for encapsulation purposes).\ndeleteTiddlerAndDescendents: function(tiddler) {\n\n function deleteRecursively(tiddler) {\n for (var child = tiddler.firstChild; child; child = child.next) {\n deleteRecursively(child);\n }\n store.removeTiddler(tiddler.title);\n }\n\n cmacro.treeifyComments(store.getTiddler(tiddler.fields.root));\n\n // save some info prior to deleting\n var prev = tiddler.fields.prev;\n var next = tiddler.next;\n\n deleteRecursively(tiddler);\n\n // used saved info\n if (next) {\n next.fields.prev = prev;\n cmacro.saveTiddler(next.title);\n }\n\n autoSaveChanges(false);\n\n},\n\n\nforEach: function(list, visitor) { for (var i=0; i<list.length; i++) visitor(list[i]); },\nforEachMap: function(map, visitor) { for (var key in map) visitor(map[key]); },\nselect: function(list, selector) { \n var selection = [];\n cmacro.forEach(list, function(currentItem) {\n if (selector(currentItem)) { selection.push(currentItem); }\n });\n return selection;\n},\nselectTiddlers: function(selector) { \n var tiddlers = [];\n store.forEachTiddler(function(title, tiddler) {\n var wanted = selector(tiddler);\n if (wanted) tiddlers.push(tiddler);\n });\n return tiddlers;\n},\nmap: function(list, mapper) { \n var mapped = [];\n cmacro.forEach(list, function(currentItem) { mapped.push(mapper(currentItem)); });\n return mapped;\n},\nremove: function(list, unwantedItem) {\n return cmacro.select(list,\n function(currentItem) { return currentItem!=unwantedItem; });\n},\nmapize: function(tiddlerList) {\n var map = {};\n cmacro.forEach(tiddlerList, function(tiddler) { map[tiddler.title] = tiddler; });\n return map;\n},\nclone: function(map) { return merge({}, map); },\n\n\neditable: function(params) {\n var editable = getParam(params, "editable");\n return (!editable || editable!="false");\n},\n\nneedsLogin: function(params) {\n var loginCheck = getParam(params, "loginCheck");\n return loginCheck && !window[loginCheck]();\n},\n\nforceLoginIfRequired: function(params, loginPromptContainer, authenticatedBlock) {\n if (cmacro.needsLogin(params)) wikify("<<"+getParam(macroParams, "loginPrompt")+">>", loginPromptContainer);\n else authenticatedBlock();\n},\n\n\nmergeReadOnly: function(first, second) {\n var merged = {};\n for (var field in first) { merged[field] = first[field]; }\n for (var field in second) { merged[field] = second[field]; }\n return merged;\n},\n\n// callers may replace this with their own ID generation algorithm\ncreateCommentTiddler: function(macroParams, rootTitle) {\n // var titleFormat = getParam(macroParams, "titleFormat") || "%root%Comment"; \n var prefix = rootTitle+"Comment"; // was "_comment"\n if (!store.createGuidTiddler) return store.createTiddler(prefix+((new Date()).getTime()));\n return store.createGuidTiddler(prefix);\n},\nsaveTiddler: function(tiddler) {\n var tiddler = (typeof(tiddler)=="string") ? store.getTiddler(tiddler) : tiddler; \n store.saveTiddler(tiddler.title, tiddler.title, tiddler.text, tiddler.modifier, tiddler.modified, tiddler.tags, cmacro.mergeReadOnly(config.defaultCustomFields, tiddler.fields), false, tiddler.created)\n},\nlog: function() { if (console && console.firebug) console.log.apply(console, arguments); },\nassert: function() { if (console && console.firebug) console.assert.apply(console, arguments); },\n\n\ncopyFields: function(fromTiddler, toTiddler, field1, field2, fieldN) {\n for (var i=2; i<arguments.length; i++) {\n fieldKey = arguments[i];\n if (fromTiddler.fields[fieldKey]) toTiddler.fields[fieldKey] = fromTiddler.fields[fieldKey];\n }\n}\n}\n\nconfig.macros.commentsCount = {\n handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n var count = 0;\n if (tiddler && store.getTiddler(tiddler.title)) {\n var rootTiddler = paramString.length ? paramString : tiddler.title;\n count = config.macros.comments.findCommentsFromRoot(store.getTiddler(rootTiddler)).length;\n }\n createTiddlyText(place, count);\n }\n},\n\nconfig.macros.commentBreadcrumb = {\n handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n if (!tiddler.fields.root) return;\n var rootLink = createTiddlyElement(place, "span", null, null);\n createTiddlyLink(rootLink, tiddler.fields.root, true);\n\n var rootIsParent = tiddler.fields.daddy==tiddler.fields.root;\n var rootIsGrandparent = (store.getTiddler(tiddler.fields.daddy)).fields.daddy==tiddler.fields.root;\n\n if (!rootIsParent) {\n if (!rootIsGrandparent) createTiddlyElement(place, "span", null, null, " > ... ");\n createTiddlyElement(place, "span", null, null, " > ");\n var daddyLink = createTiddlyElement(place, "span", null, null);\n createTiddlyLink(daddyLink, tiddler.fields.daddy, true);\n }\n\n createTiddlyElement(place, "span", null, null, " > ");\n\n // place.appendChild(createTiddlyLink(tiddler.fields.root));\n }\n}\n\nconfig.macros.tiddlyWebComments = {};\nconfig.macros.tiddlyWebComments.handler =\n function(place,macroName,params,wikifier,paramString,tiddler) {\n paramString = "fields:'server.workspace:bags/comments' inheritedFields:'server.host,server.type'";\n config.macros.comments.handler(place,macroName,params,wikifier, paramString,tiddler);\n };\n\nfunction log() { if (console && console.firebug) console.log.apply(console, arguments); }\n\n})(version.extensions.CommentsPlugin);\n\n\n/***\n!StyleSheet\n\n.comments h1 { margin-bottom: 0; padding-bottom: 0; }\n.comments { padding: 0; }\n.comment .comments { margin-left: 1em; }\n\n.comment { padding: 0; margin: 1em 0 0; }\n.comment .comment { margin 0; }\n.comment .toolbar .button { border: 0; color: #9a4; }\n.comment .heading { background: [[ColorPalette::PrimaryPale]]; color: [[ColorPalette::PrimaryDark]]; border-bottom: 1px solid [[ColorPalette::PrimaryLight]]; border-right: 1px solid [[ColorPalette::PrimaryLight]]; padding: 0.5em; height: 1.3em; }\n.commentTitle { float: left; }\n.commentTitle:hover { text-decoration: underline; cursor: pointer; }\n.commentText { clear: both; padding: 1em 1em; }\n.deleteComment { float: right; cursor: pointer; text-decoration:underline; color:[[ColorPalette::SecondaryDark]]; padding-right: 0.3em; }\n.comment .reply { margin-left: 1em; }\n.comment .replyLink { color:[[ColorPalette::SecondaryDark]]; font-style: italic; \n cursor: pointer; text-decoration: underline; margin: 0 1em; }\n.comment .created { }\n.comment .newReply { color:[[ColorPalette::SecondaryDark]]; margin-top: 1em; }\n.newReplyLabel { float: left; }\n.closeNewReply { cursor: pointer; float: right; text-decoration: underline; }\n.comments textarea { width: 100%; padding: 0.3em; margin-bottom: 0.6em; }\n.newCommentArea { margin-top: 0.5em; }\n\n.clearance { clear: both; }\n\n\n!(end of StyleSheet)\n\n***/\n\n config.macros.comments.init();\n\n} // end of 'install only once'\n/*}}}*/\n\n// function log() { if (console && console.firebug) console.log.apply(console, arguments); }\n
!!! Example Record\n{{{\n<resource xmlns="http://datacite.org/schema/kernel-2.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://datacite.org/schema/kernel-2.2 http://schema.datacite.org/meta/kernel-2.2/metadata.xsd">\n <identifier identifierType="DOI">10.1594/WDCC/CCSRNIES_SRES_B2</identifier>\n <creators>\n <creator>\n <creatorName>Miller, John</creatorName>\n </creator>\n <creator>\n <creatorName>Smith, Jane</creatorName>\n <nameIdentifier nameIdentifierScheme="ISNI">1422 4586 3573 0476</nameIdentifier>\n </creator>\n </creators>\n <titles>\n <title>National Institute for Environmental Studies and Center for Climate System Research Japan</title>\n <title titleType="Subtitle">A survey</title>\n </titles>\n <publisher>World Data Center for Climate (WDCC)</publisher>\n <publicationYear>2004</publicationYear>\n <subjects>\n <subject>Earth sciences and geology</subject>\n <subject subjectScheme="DDC">551 Geology, hydrology, meteorology</subject>\n </subjects>\n <contributors>\n <contributor contributorType="DataManager">\n <contributorName>PANGAEA</contributorName>\n </contributor>\n <contributor contributorType="ContactPerson">\n <contributorName>Doe, John</contributorName>\n <nameIdentifier nameIdentifierScheme="ORCID">xyz789</nameIdentifier>\n </contributor>\n </contributors>\n <dates>\n <date dateType="Valid">2005-04-05</date>\n <date dateType="Accepted">2005-01-01</date>\n </dates>\n <language>eng</language>\n <resourceType resourceTypeGeneral="Image">Animation</resourceType>\n <alternateIdentifiers>\n <alternateIdentifier alternateIdentifierType="ISBN">937-0-1234-56789-X</alternateIdentifier>\n </alternateIdentifiers>\n <relatedIdentifiers>\n <relatedIdentifier relatedIdentifierType="DOI" relationType="IsCitedBy">10.1234/testpub</relatedIdentifier>\n <relatedIdentifier relatedIdentifierType="URN" relationType="Cites">http://testing.ts/testpub</relatedIdentifier>\n </relatedIdentifiers>\n <sizes>\n <size>285 kb</size>\n <size>100 pages</size>\n </sizes>\n <formats>\n <format>text/plain</format>\n </formats>\n <version>1.0</version>\n <rights>Open Database License [ODbL]</rights>\n <descriptions>\n <description descriptionType="Other">\n The current xml-example for a DataCite record is the official example from the documentation.\n <br/>Please look on datacite.org to find the newest versions of sample data and schemas.\n </description>\n </descriptions>\n</resource>\n}}}\n\n!!! DataCite Schema\n{{{\n<?xml version="1.0" encoding="UTF-8"?>\n<!-- Revision history\n 2010-08-26 Complete revision according to new common specification by the metadata work group after review. AJH, DTIC\n 2010-11-17 Revised to current state of kernel review, FZ, TIB \n 2011-01-17 Complete revsion after community review. FZ, TIB\n 2011-03-17 Release of v2.1: added a namespace; mandatory properties got minLength; changes in the definitions of relationTypes\n IsDocumentedBy/Documents and isCompiledBy/Compiles; changes type of property "Date" from xs:date to xs:string. FZ, TIB\n-->\n<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://datacite.org/schema/kernel-2.1" targetNamespace="http://datacite.org/schema/kernel-2.1" elementFormDefault="qualified" xml:lang="EN">\n <xs:include schemaLocation="include/datacite-titleType-v2.xsd"/>\n <xs:include schemaLocation="include/datacite-contributorType-v2.xsd"/>\n <xs:include schemaLocation="include/datacite-dateType-v2.xsd"/>\n <xs:include schemaLocation="include/datacite-resourceType-v2.xsd"/>\n <xs:include schemaLocation="include/datacite-relationType-v2.xsd"/>\n <xs:include schemaLocation="include/datacite-relatedIdentifierType-v2.xsd"/>\n <xs:include schemaLocation="include/datacite-descriptionType-v2.xsd"/>\n <xs:element name="resource">\n <xs:annotation>\n <xs:documentation>\n Root element of a single record. This wrapper element is for XML implementation only and is not defined in the DataCite DOI standard.\n Note: This is the case for any wrapper element within this schema!</xs:documentation>\n <xs:documentation>No content in this wrapper element.</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:sequence>\n <!--REQUIRED FIELDS-->\n <xs:element name="identifier">\n <xs:annotation>\n <xs:documentation>A persistent identifier that identifies a resource.</xs:documentation>\n <xs:documentation>Currently, only DOI is allowed.</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="doiType">\n <xs:attribute name="identifierType" use="required" fixed="DOI"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n <xs:element name="creators">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="creator" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>The main researchers involved working on the data, or the authors of the publication in priority order. May be a corporate/institutional or personal name.</xs:documentation>\n <xs:documentation>Format: Family, Given.</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:sequence>\n <xs:element name="creatorName">\n <xs:simpleType>\n <xs:restriction base="nonemptycontentStringType"/>\n </xs:simpleType>\n </xs:element>\n <xs:element name="nameIdentifier" minOccurs="0">\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="nonemptycontentStringType">\n <xs:attribute name="nameIdentifierScheme" use="required"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="titles">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="title" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>A name or title by which a resource is known.</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="nonemptycontentStringType">\n <xs:attribute name="titleType" type="titleType" use="optional"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="publisher">\n <xs:annotation>\n <xs:documentation>A holder of the data (including archives as appropriate) or institution which submitted the work. Any others may be listed as contributors. This property will be used to formulate the citation, so consider the prominence of the role.</xs:documentation>\n <xs:documentation>Examples: World Data Center for Climate (WDCC); GeoForschungsZentrum Potsdam (GFZ); Geological Institute, University of Tokyo </xs:documentation>\n <xs:documentation>In the case of datasets, "publish" is understood to mean making the data available to the community of researchers.</xs:documentation>\n </xs:annotation>\n <xs:simpleType>\n <xs:restriction base="nonemptycontentStringType"/>\n </xs:simpleType>\n </xs:element>\n <xs:element name="publicationYear">\n <xs:annotation>\n <xs:documentation>Year when the data is made publicly available. If an embargo period has been in effect, use the date when the embargo period ends.</xs:documentation>\n <xs:documentation>YYYY</xs:documentation>\n </xs:annotation>\n <xs:simpleType>\n <xs:restriction base="yearType"/>\n </xs:simpleType>\n </xs:element>\n <!--OPTIONAL FIELDS-->\n <xs:element name="subjects" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="subject" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>Subject, keywords, classification codes, or key phrases describing the resource.</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="xs:string">\n <xs:attribute name="subjectScheme" use="optional"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="contributors" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="contributor" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>The institution or person responsible for collecting, creating, or otherwise contributing to the developement of the dataset.</xs:documentation>\n <xs:documentation>The personal name format should be: Family, Given.</xs:documentation>\n </xs:annotation>\n <xs:complexType mixed="true">\n <xs:sequence>\n <xs:element name="contributorName">\n <xs:simpleType>\n <xs:restriction base="xs:string">\n <xs:minLength value="1"/>\n </xs:restriction>\n </xs:simpleType>\n </xs:element>\n <xs:element name="nameIdentifier" minOccurs="0">\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="xs:string">\n <xs:attribute name="nameIdentifierScheme" use="required"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n <xs:attribute name="contributorType" type="contributorType" use="required"/>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="dates" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="date" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>Different dates relevant to the work.</xs:documentation>\n <xs:documentation>YYYY or YYYY-MM-DD or any other format described in W3CDTF (http://www.w3.org/TR/NOTE-datetime) </xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="xs:string">\n <xs:attribute name="dateType" type="dateType" use="required"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="language" type="xs:language" minOccurs="0">\n <xs:annotation>\n <xs:documentation>Primary language of the resource. Allowed values from: ISO 639-2/B, ISO 639-3</xs:documentation>\n </xs:annotation>\n </xs:element>\n <xs:element name="resourceType" minOccurs="0">\n <xs:annotation>\n <xs:documentation>The type of a resource. You may enter an additional free text description.</xs:documentation>\n </xs:annotation>\n <xs:complexType mixed="true">\n <xs:annotation>\n <xs:documentation>Use this attribute to choose the general type of the resource from the controlled list.</xs:documentation>\n </xs:annotation>\n <xs:attribute name="resourceTypeGeneral" type="resourceType" use="required"/>\n </xs:complexType>\n </xs:element>\n <xs:element name="alternateIdentifiers" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="alternateIdentifier" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>An identifier other than the primary identifier applied to the resource being registered. This may be any alphanumeric string which is unique within its domain of issue. The format is open</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="xs:string">\n <xs:attribute name="alternateIdentifierType" use="required"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="relatedIdentifiers" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="relatedIdentifier" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>Identifiers of related resources. Use this property to indicate subsets of properties, as appropriate.</xs:documentation>\n </xs:annotation>\n <xs:complexType>\n <xs:simpleContent>\n <xs:extension base="xs:string">\n <xs:attribute name="relatedIdentifierType" type="relatedIdentifierType" use="required"/>\n <xs:attribute name="relationType" type="relationType" use="required"/>\n </xs:extension>\n </xs:simpleContent>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="sizes" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="size" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>Unstructures size information about the resource. </xs:documentation>\n </xs:annotation>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="formats" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="format" maxOccurs="unbounded">\n <xs:annotation>\n <xs:documentation>Technical format of the resource.</xs:documentation>\n <xs:documentation>Use file extension or MIME type where possible.</xs:documentation>\n </xs:annotation>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n <xs:element name="version" type="xs:string" minOccurs="0">\n <xs:annotation>\n <xs:documentation>Version number of the resource. If the primary resource has changed the version number increases.</xs:documentation>\n <xs:documentation>Register a new DOI (or primary identifier) when the version of the resource changes to enable the citation of the exact version of a research dataset (or other resource). May be used in conjunction with properties 11 and 12 (AlternateIdentifier and RelatedIdentifier) to indicate various information updates.</xs:documentation>\n </xs:annotation>\n </xs:element>\n <xs:element name="rights" minOccurs="0">\n <xs:annotation>\n <xs:documentation>Any rights information for this resource. Provide a rights management statement for the resource or reference a service providing such information. Include embargo information if applicable.\n </xs:documentation>\n </xs:annotation>\n </xs:element>\n <xs:element name="descriptions" minOccurs="0">\n <xs:complexType>\n <xs:sequence>\n <xs:element name="description" maxOccurs="unbounded">\n <xs:complexType mixed="true">\n <xs:choice>\n <xs:element name="br" minOccurs="0" maxOccurs="unbounded">\n <xs:simpleType>\n <xs:restriction base="xs:string">\n <xs:length value="0"/>\n </xs:restriction>\n </xs:simpleType>\n </xs:element>\n </xs:choice>\n <xs:attribute name="descriptionType" type="descriptionType" use="required"/>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n </xs:complexType>\n </xs:element>\n </xs:sequence>\n <xs:attribute name="lastMetadataUpdate" type="xs:date" use="optional"/>\n <xs:attribute name="metadataVersionNumber" type="xs:integer" use="optional"/>\n <!--ADMINISTRATIVE FIELDS-->\n </xs:complexType>\n </xs:element>\n <!-- TYPE DECLARATIONS -->\n <!-- defines the value for a DOI: DOI must start with "10." -->\n <xs:simpleType name="doiType">\n <xs:restriction base="xs:token">\n <xs:pattern value="[1][0][/.].*"/>\n </xs:restriction>\n </xs:simpleType>\n <!-- defines value for mandatory fields -->\n <xs:simpleType name="nonemptycontentStringType">\n <xs:restriction base="xs:string">\n <xs:minLength value="1"/>\n </xs:restriction>\n </xs:simpleType>\n <xs:attributeGroup name="nameId">\n <xs:attribute name="nameIdentifier" type="xs:string" use="optional"/>\n <xs:attribute name="nameIdentifierScheme" type="xs:string" use="optional"/>\n </xs:attributeGroup>\n <!-- defines the value for a year -->\n <xs:simpleType name="yearType">\n <xs:restriction base="xs:token">\n <xs:pattern value="[\sd]{4}"/>\n </xs:restriction>\n </xs:simpleType>\n</xs:schema>\n}}}
[img[/filestore/uploads/learning/learning-outcomes.png]]\n\n[[comes from | http://www.aacu.org/advocacy/leap/documents/GlobalCentury_final.pdf]]
http://www.educause.edu/EDUCAUSE+Quarterly/EDUCAUSEQuarterlyMagazineVolum/EnvisioningthePostLMSEraTheOpe/199389\n\n!!!Characteristics of Today's LMS\n* Private\n* Class-centric\n* Role-focused\n* Self-contained\n* Instituiton Oriented\n* 1990s archictecture
[[Documentation|http://www.etsupp.com/z3950/]]\n\nFor ProQuest Classic:\n\n * Host Name proquest-z3950.umi.com\n * Port 210\n * Database PQ_current\n * User ID/Password any valid ProQuest ID and password\n\nFor Historical Newspapers:\n\n * Host Name hnz39.umi.com\n * Port 210\n * Database PQHNP\n * User ID/Password any valid ProQuest ID and password\n\nNote: Our Z39.50 server does not support IP authentication at this time\n\n 0J7F3BKGMJ
<<<\nThe management of 'scarcity out' gave libraries a reason to erect a wall\nbetween themselves and users. It allowed them to claim, often correctly, that on\ntheir side of the wall was not only the budget to pay for the materials that would\nbe provided by the library, but also the expertise to make optimal use of them.\n\nWhat was wrong, however, was their belief, or claim, that such expertise was\nunattainable except by the trained and initiated. The identification of access or\nprovision with expertise has been lost due to the explosion of retrievable digital\ninformation and the shift to an expectation of 'abundance out'. Libraries still\nmanage the budgets that provide the access, but they have lost their claim to scarce\nexpertise in the finding and use of information. Users can do that for themselves,\nand they seem to prefer it that way.\n<<<\n\n[[Source|http://www.portlandpress.com/pp/books/online/wg85/085/0125/0850125.pdf]]
* DefaultTiddlers\n* MainMenu\n* SiteSubtitle\n* SiteTitle\n* SiteUrl
NOTE: Consider both client and server issues when describing these essential programming elements.\n\n|!Feature|!Description|\n|Request Dispatcher |Routes HTTP requests to the proper execution code|\n|URI Handler|Parses the details of the URI (scheme, path, query info, etc.) and exposes them for use.|\n|Mime Parser|Handles the details of determining the media type including support for conneg|\n|Request Handler|Target of the Request Dispatcher; the interesting/computational stuff goes here|\n|Representation Handler|Converts stored data into the proper representation for responses and handles incoming representations from requests|\n|HTTP Client|A 'mini HTTP Client' that allows you to make requests to, and handle responses from, other HTTP servers|\n|Caching|Basic support for caching and conditional requests|\n|Authentication|Understands various auth models (Basic, Digest, OAuth, etc.|\n\n[[from implementing rest| http://code.google.com/p/implementing-rest/wiki/RESTImplementationToolkit]]
<<<\nBut even granting all of that, most students don't arrive at community college having already produced ample portfolios of work, just looking for a credential to certify what they've already done. Most show up unable to add fractions. Many bring with them long histories of spotty academic performance, undiagnosed learning disabilities, and self-defeating habits that never got corrected. These are not young Steve Jobs-es who are put upon by distribution requirements. Most need help not only in building academic skills, but in navigating the institutions and culture of the professional world.\n<<<
!!!Faculty Knowledge abut Content, Pedagogy and Technology\n\n* Why do we need to put courses and programs online?\n - everyone else is doing it\n - we'll be left behind if we don't\n - that where the learners are\n - 1/4 of all learners are taking an online course\n\n* Should the content be open and reusable?\n - get content out of BlackBoard where it is trapped in a class\n - open content is usable to all learners\n - open content can be shared with others creating learning environments\n - shared content will allow faster, richer learning environments\n - open content can be linked to by others\n\n* Best way to author content\n - I'm a believer that content should be written for the web \n - use HTML5, abolish Word\n - can the faculty create video and audio themselves?\n - can faculty create interactive media?\n\n* Assessment\n - if we have competency based outcomes can we use technology to help assessment\n - can we use technology to provide adaptive learning objects?\n\n* faculty beliefs and attitudes are seen as a critical component in building and maintaining quality programs.
<<<\n!!!Strategies for Change\n\nIn summary, the most self-evident conclusion is that, if an institution is preparing to invest in a transformative change initiative, the best focus may not be to fund more faculty development of technology infused courses, which only bolts-technology on to our current affordability-challenged model. The opportunity for changing the time factor in the baccalaureate process is real. It was revealed by the work of 60 experts this fall, when an institution focuses on just four key actions they will provide the pedagogical infrastructure for true transformation.\n\nThese four actions are:\n\n* Establish competency-based instruction across the institution.\n* Develop assessments and robust assessment engines correlated to those competencies.\n* Create the technological and analytical platforms that support independent, personalized learning paths for all students\n* Implement the ability to advance individually upon mastery instead of by course or credit hour.\n\n>Postsecondary enterprises that can demonstrate consistent, sustainable outcomes will flourish.\n\n[[Source|http://wcetblog.wordpress.com/2011/12/29/forging-the-future-how-much-affordability-can-higher-education-afford/]]\n
{{{\nRewriteEngine On\nRewriteCond %{HTTP_REFERER} !(www.)?example.com/download-page.php\nRewriteRule .* - [F]\n}}}
{{{\nfunction getXMLHttpRequest() \n{\n if (window.XMLHttpRequest) {\n return new window.XMLHttpRequest;\n }\n else {\n try {\n return new ActiveXObject("MSXML2.XMLHTTP.3.0");\n }\n catch(ex) {\n return null;\n }\n }\n}\n\nfunction handler()\n{\n if (oReq.readyState == 4 /* complete */) {\n if (oReq.status == 200) {\n alert(oReq.responseText);\n }\n }\n}\n\nvar oReq = getXMLHttpRequest();\n\nif (oReq != null) {\n oReq.open("GET", "http://localhost/test.xml", true);\n oReq.onreadystatechange = handler;\n oReq.send();\n}\nelse {\n window.alert("AJAX (XMLHTTP) not supported.");\n}\n}}}\n\nThat's it. Pretty simple really.
/***\n|Name|TiddlerPasswordPlugin|\n|Source|http://www.TiddlyTools.com/#TiddlerPasswordPlugin|\n|Version|1.1.0|\n|Author|Eric Shulman - ELS Design Studios|\n|License|http://www.TiddlyTools.com/#LegalStatements <<br>>and [[Creative Commons Attribution-ShareAlike 2.5 License|http://creativecommons.org/licenses/by-sa/2.5/]]|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Requires||\n|Overrides||\n|Description||\n\nThis plugin blocks viewing of specific tiddler content by prompting for a NON-SECURE, UNENCRYPTED password before the tiddler is displayed. If the correct password is not entered, the tiddler is automatically closed. The process does not prevent tiddler content from being viewed directly from the TiddlyWiki source file's storeArea, nor does it encrypt the tiddler content in any way. Because it is relatively simple to bypass and/or disable the password prompting process, this macro should be thought of as a "latch" rather than a "lock" on a given tiddler.\n!!!!!Usage\n<<<\n{{{<<getTiddlerPassword>>}}} \n{{{<<getTiddlerPassword password>>}}}\n{{{<<getTiddlerPassword password "prompt message">>}}}\n{{{<<getTiddlerPassword - "prompt message">>}}}\n\nPlace the {{{<<getTiddlerPassword>>}}} macro at the beginning of your tiddler content. The macro prompts for a password until either A) the correct password is entered or B) the user presses the cancel button from the prompt box, in which case the tiddler is automatically closed so it cannot be viewed. If a valid password is input, it will be remembered only until the user closes the tiddler. Each time the tiddler is opened, the password must be re-entered.\n\nThe optional ''password'' parameter provides a "user-level" password for the tiddler in which the macro occurs. If no user password is provided, then only the admin-level password (see below) will be accepted. \n\nBy default, the prompt message reads: "Please enter a password to view '%0'" (where the %0 is automatically replaced by the name of the tiddler in which the macro occurs) To change this text, enter an additional macro parameter, following the user password.\n>Note: because the prompt text is likely to contain spaces, you should always enclose it in quotes (or use {{{[[...]]}}} if it contains quotes). In addition, to enter an alternative prompt without providing a user-level password, use "-" as a //placeholder// for the password parameter.\n\nNotes:\n* You can also set a hard-coded admin password (see below) to define a "universal passkey" that will grant access to all tiddlers protected by this script, regardless of the individual password used on each protected tiddler.\n* If you embed one or more password-protected tiddlers within another tiddler (by using the {{{<<tiddler TiddlerName>>}}} macro) the user will be prompted to provide the appropriate password for the EACH protected tiddler contained in the tiddler being rendered.\n<<<\n!!!!!Installation\n<<<\nimport (or copy/paste) the following tiddlers into your document:\n''TiddlerPasswordPlugin'' (tagged with <<tag systemConfig>>)\n\n''As soon as you have installed this plugin, you should change the default admin password in [[TiddlerPasswordConfig]].'' Note: the configuration tiddler is password-protected to prevent the admin password from being viewed (and/or modified) unless the current password is provided. By default, the admin password is set to "admin".\n<<<\n!!!!!Revision History\n<<<\n''2007.02.22 [1.1.1]'' updated documentation for using custom prompt text\n''2007.01.01 [1.1.0]'' added optional param for using custom prompt text \n''2006.12.03 [1.0.1]'' handler() uses passed-in 'tiddler.title' (if any), so that title of included protected tiddlers can be correctly displayed (instead of showng title of containing tiddler)\n''2006.12.02 [1.0.0]'' initial release - converted from GetTiddlerPassword inline script\n<<<\n!!!!!Credits\n<<<\nThis feature was developed by EricShulman from [[ELS Design Studios|http:/www.elsdesign.com]]\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.getTiddlerPassword= {major: 1, minor: 1, revision: 1, date: new Date(2007,2,22)};\n\nconfig.macros.getTiddlerPassword = {\n msg: "Please enter a password to view '%0'",\n defaultText: "enter password here",\n retryMsg: "'%0' is not the correct password for '%1'. Please try again:",\n cancelMsg: "Sorry, you cannot view '%0' without entering a valid password.",\n thanksMsg: "Thank you, your password has been accepted.",\n handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n var here=story.findContainingTiddler(place); if (!here) return;\n var title=tiddler?tiddler.title:here.getAttribute("tiddler");\n var who=here.getAttribute("logID");\n var userPass=params[0]?params[0]:""; if (userPass=='-') userPass="";\n var msg=params[1]?params[1]:this.msg;\n if (who==userPass||who==this.adminPass) return; // already 'logged in'?\n var who=prompt(msg.format([title]),this.defaultText); // ask for ID\n while (who && who!=userPass && who!=this.adminPass) // not correct ID?\n who=prompt(this.retryMsg.format([who,title]),this.defaultText); // ask again\n if (who==userPass||who==this.adminPass) // correct ID? mark tiddler logged in...\n { here.setAttribute("logID",who); alert(this.thanksMsg); }\n else // incorrect ID (e.g., entry cancelled by user)...\n { story.closeTiddler(here.getAttribute("tiddler")); alert(this.cancelMsg.format([title])); }\n }\n}\n// default admin password (may be overridden in TiddlerPasswordConfig)\nif (config.macros.getTiddlerPassword.adminPass==undefined)\n config.macros.getTiddlerPassword.adminPass="admin";\n//}}}
from consuls:\n\nSong, Holim (). Distance Learning Technology, Current Instruction, and the Future of Education : Applications of Today, Practices of Tomorrow.\nHershey, PA, USA: IGI Global, 2009. p 304.\nhttp://site.ebrary.com/lib/wcsueb/Doc?id=10362118&ppg=322\nCopyright © 2009. IGI Global. All rights reserved. Online education is .
>You encrypt your information with the recipients public key, and only their private key will decrypt it. You then digitally sign the information with your private key, so when they verify it with your public key, they can confirm that it is you. Doing this will ensure that the information came from you and has not been tampered with, and only the person you are sending it to can read the information (because only they know their private key).
Creator (PublicationYear): Title. Version. Publisher. ResourceType. Identifier\n\nOpenURL stuff: http://alcme.oclc.org/openurl/servlet/OAIHandler?verb=ListRecords&metadataPrefix=oai_dc&set=Core:Metadata%20Formats
/***\n|''Name:''|BibTeXPlugin|\n|''Description:''|Very incomplete BibTeX implementation to work with bibliographic references|\n|''Author:''|Paulo Soares|\n|''Version:''|1.5|\n|''Date:''|2010-11-11|\n|''Source:''|http://www.math.ist.utl.pt/~psoares/addons.html|\n|''Overrides''|Story.prototype.refreshTiddler|\n|''Documentation:''|[[BibTeXPlugin Documentation|BibTeXPluginDoc]]|\n|''License:''|[[Creative Commons Attribution-Share Alike 3.0 License|http://creativecommons.org/licenses/by-sa/3.0/]]|\n|''~CoreVersion:''|2.5.0|\n***/\n//{{{\nif(!version.extensions.BibTeXPlugin) { //# ensure that the plugin is only installed once\nversion.extensions.BibTeXPlugin = {installed: true};\n\n(function($) {\nconfig.macros.cite = {\n noReference: "(??)",\n refreshTiddler: Story.prototype.refreshTiddler\n};\n\nconfig.macros.cite.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n var pos, cmb = config.macros.bibliography;\n if(params.length==0) return;\n var entry = params[0];\n var args = paramString.parseParams(null,null,false);\n var title = getParam(args,"bibliography",null);\n if(title) {\n this.biblioTiddler = title;\n } else {title = this.biblioTiddler;}\n title = getParam(args,"thisBibliography",title);\n var format = getParam(args,"format",null);\n if(format) {\n this.format = format;\n } else {format = this.format;}\n format = getParam(args,"thisFormat",format);\n var argsArray = paramString.readMacroParams();\n var showAll = ($.inArray('showAll',argsArray) > -1);\n if(title && store.tiddlerExists(title)) var bib = cmb.extractEntry(title, entry);\n if(bib.content) {\n var entries = this.entries;\n if($.inArray(entry, entries)==-1) this.entries.push(entry);\n entries = this.entries;\n pos = $.inArray(entry, entries)+1;\n var author = cmb.processNames(bib.content.extract("author"), showAll);\n var year = bib.content.extract("year");\n var citation = format.replace("author", author);\n citation = citation.replace("year", year);\n citation = citation.replace("number", pos);\n wikify(citation, place);\n } else {\n wikify(this.noReference, place);\n }\n}\n\nStory.prototype.refreshTiddler = function(title,template,force){\n config.macros.cite.biblioTiddler = null;\n config.macros.cite.format = "author (year)";\n config.macros.cite.entries = [];\n var tiddler = config.macros.cite.refreshTiddler.apply(this,arguments);\n return tiddler;\n}\n\nconfig.macros.bibliography = {\n article: {fields: ["author", "year", "title", "journal", "volume", "pages"], format: "author (year). title. //journal// ''volume'', pages."},\n book: {fields: ["author", "year", "title", "publisher"], format: "author (year). //title//. publisher."},\n inproceedings: {fields: ["author", "year", "title", "editor", "booktitle", "pages", "publisher"], format: "author (year). title. In editor //booktitle//, pages. publisher."},\n incollection: {fields: ["author", "year", "title", "editor", "booktitle", "pages", "publisher"], format: "author (year). title. In editor //booktitle//, pages. publisher."},\n techreport: {fields: ["author", "year", "title", "institution"], format: "author (year). title. Technical report, institution."},\n manual: {fields: ["author", "year", "title", "organization"], format: "author (year). //title//. organization."},\n unpublished: {fields: ["author", "year", "title"], format: "author (year). //title//. Unpublished."}\n};\n\nconfig.macros.bibliography.handler = function(place,macroName,params,wikifier,paramString,tiddler) {\n var cmc = config.macros.cite;\n var title = (cmc.biblioTiddler) ? cmc.biblioTiddler : params[0];\n if(!title || !store.tiddlerExists(title)) return;\n var argsArray = paramString.readMacroParams();\n var i, entryText;\n var entries = [];\n if($.inArray('showAll',argsArray) > -1) {\n entryText = this.extractAllEntries(title);\n for(i=0; i<entryText.length; i++) {\n entries[entries.length] = this.processEntry(entryText[i], i);\n }\n } else {\n for(i=0; i<cmc.entries.length; i++){\n entryText = this.extractEntry(title, cmc.entries[i]);\n if(entryText) {\n entries[entries.length] = this.processEntry(entryText, i);\n }\n }\n }\n entries.sort();\n wikify(entries[0] , place);\n for (i=1; i < entries.length; i++) {\n wikify("\sn\sn" + entries[i] , place);\n }\n return true;\n}\n\nconfig.macros.bibliography.processNames = function(names, showAll) {\n var i, authors = names.split(" and ");\n var entry = authors[0];\n var numAuthors = authors.length;\n var fullEntry = entry;\n if (numAuthors==2) {\n entry += " and " + authors[1];\n fullEntry = entry;\n }\n if (numAuthors>2) {\n fullEntry = entry;\n for (i=1; i < numAuthors; i++) {\n if (i==numAuthors-1) {fullEntry += " and "} else {fullEntry += ", "};\n fullEntry += authors[i];\n }\n if(showAll) {entry = fullEntry;} else {entry += " et al.";}\n }\n return entry;\n}\n\nconfig.macros.bibliography.processEntry = function(entry, pos) {\n var field, text=entry.content;\n var fields={};\n fields.number = pos+1;\n var type = this[entry.type];\n var output = type.format;\n for(var i=0; i<type.fields.length; i++){\n field = type.fields[i];\n switch(field){\n case "author":\n fields.author = this.processNames(text.extract("author"), true);\n break;\n case "title":\n var url = text.extract("url");\n fields.title = text.extract("title");\n fields.title = (url=='') ? fields.title : "[[" + fields.title + "|" + url + "]]";\n break;\n case "editor":\n var editor = text.extract("editor");\n fields.editor = (editor=='') ? editor : this.processNames(editor,true) + " (Eds.), ";\n break;\n default:\n fields[field] = text.extract(field);\n }\n output = output.replace(field, fields[field]);\n }\n return output;\n}\n\nconfig.macros.bibliography.extractEntry = function(title,entry) {\n var bib = {type: null, content: null};\n var text = store.getTiddlerText(title);\n var re = new RegExp('\s\ss*@(\s\sw+?)\s\s{\s\ss*' + entry + '\s\ss*,\s\ss*(.[^@]+)\s\s}','mi');\n var field = text.match(re);\n if(field) {\n bib.type = field[1].toLowerCase();\n bib.content = field[2];\n }\n return bib;\n}\n\nconfig.macros.bibliography.extractAllEntries = function(title) {\n var bib, field, entries = [];\n var text = store.getTiddlerText(title);\n var bibs = text.match(/\ss*@(\sw+?)\s{\ss*(.[^@]+)\s}/mgi);\n for(var i=0; i<bibs.length; i++){\n field=bibs[i].match(/\ss*@(\sw+?)\s{\ss*(.[^@]+)\s}/mi);\n bib = {type: null, content: null};\n if(field) {\n bib.type = field[1].toLowerCase();\n bib.content = field[2];\n if(bib.type!='string' && bib.type!='preamble' && bib.type!='comment') entries.push(bib);\n }\n }\n return entries;\n}\n\nconfig.macros.bibliography.extractField = function(field) {\n var text = "";\n var re = new RegExp('\s\ss*'+field+'\s\ss*=\s\ss*[\s\s{|"]\s\ss*(.+?)\s\ss*[\s\s}|"]','mi');\n var fieldText = this.match(re);\n if(fieldText){\n text = fieldText[1].replace(/\s{|\s}/g,'');\n if(field!='url') text = text.replace(/-+/g,"—");\n }\n return text;\n}\n\nString.prototype.extract = config.macros.bibliography.extractField;\n\nconfig.shadowTiddlers.BibTeXPluginDoc="The documentation is available [[here.|http://www.math.ist.utl.pt/~psoares/addons.html#BibTeXPluginDoc]]";\n})(jQuery)\n}\n//}}}
http://www.educause.edu/ero/article/thirteen-ways-looking-libraries-discovery-and-catalog-scale-workflow-attention
<<<\nBasically, there are four parts to the eLearning profession:\n\n* First, there is understanding learning and pedagogy, and I call this the science of learning.\n* Second, there is the creative side of eLearning, which I like to call the art of learning. It's a very broad piece of the pie, and it encompasses writing, graphic design, videography, game design, and even storytelling. This is the area that adds spark to eLearning projects and really makes them shine and helps to engage a learner. It helps make learning stick.\n* Third, there is the technology of learning; this is understanding everything from learning management systems to authoring tools, to all types of devices that can be used for learning these days.\n* Fourth, there is the business of learning, which also has many pieces, but at a basic level it is understanding the needs of the organization. It's also about realizing that performance, not learning objectives matter, to businesses. Project management would also fall into this quadrant of the eLearning pie. [Editor's Note: You'll be able to read more about the eLearning project management in our interview with Abigail Wheeler, which will be published on April 12th].\n\n[[from|http://elearnmag.acm.org/featured.cfm?aid=2168783]]
\n>You create, publish, receive information that you never had before. Social information, cooking-pot information. You visualise it in ways you could never do before. You move it and share it and enrich it and aggregate it and disaggregate it using tools you could never have conceived before. And you do all this with presence and location and attention and mobility. You teach it and learn it and shape it and train it. You cleanse it and repair it and fuse it and melt it. The it is information.\n\n[[Source|http://confusedofcalcutta.com/2006/03/30/four-pillars-time-for-a-recap/]]\n\nThis is the reason information wants to be free, it's most useful when it's free. Avoid lockins, adopt stadndards etc. Think beyond the immediate. \n\nAll software is about \n* publishing, \n* search, \n* fulfilment and \n* conversation
/***\n|Name|WikifyPlugin|\n|Source|http://www.TiddlyTools.com/#WikifyPlugin|\n|Documentation|http://www.TiddlyTools.com/#WikifyPluginInfo|\n|Version|1.1.4|\n|Author|Eric Shulman|\n|License|http://www.TiddlyTools.com/#LegalStatements|\n|~CoreVersion|2.1|\n|Type|plugin|\n|Description|substitute fields, slices, or computed values into a wiki-syntax format string and render results dynamically|\nThe {{{<<wikify>>}}} macro allows you to easily retrieve values from custom tiddler fields, tiddler slices, computed values (using javascript) or just plain old literals, and assemble them into small bits of generated wiki-syntax text content that can be rendered directly into a tiddler, or used in the ViewTemplate or EditTemplate to add dynamically-generated content to each tiddler.\n\nThe {{{<<wikiCalc>>}}} macro performs the same processing as {{{<<wikify>>}}} and, in addition, passes the assembled text content through javascript's {{{eval()}}} function before rendering the results. This allows you to, for example, construct and compute mathematical expressions that use input values extracted from tiddler fields or slices.\n!!!!!Documentation\n> see [[WikifyPluginInfo]]\n!!!!!Revisions\n<<<\n2009.03.29 [1.1.4] in handler(), pass 'tiddler' value to wikify() to fix macro errors in rendered content\n|please see [[WikifyPluginInfo]] for additional revision details|\n2007.06.22 [1.0.0] initial release\n<<<\n!!!!!Code\n***/\n//{{{\nversion.extensions.WikifyPlugin= {major: 1, minor: 1, revision: 4, date: new Date(2009,3,29)};\n\nconfig.macros.wikify={\n handler: function(place,macroName,params,wikifier,paramString,tiddler) {\n var fmt=params.shift();\n var values=[];\n var out="";\n if (!fmt.match(/\s%[0-9]/g) && params.length) // format has no markers, just join all params with spaces\n out=fmt+" "+params.join(" ");\n else { // format param has markers, get values and perform substitution\n while (p=params.shift()) values.push(this.getFieldReference(place,p));\n out=fmt.format(values);\n }\n if (macroName=="wikiCalc") out=eval(out).toString();\n wikify(out.unescapeLineBreaks(),place,null,tiddler);\n },\n getFieldReference: function(place,p) { // "slicename::tiddlername" or "fieldname@tiddlername" or "fieldname"\n if (typeof p != "string") return p; // literal non-string value... just return it...\n var parts=p.split(config.textPrimitives.sliceSeparator);\n if (parts.length==2) {// maybe a slice reference?\n var tid=parts[0]; var slice=parts[1];\n if (!tid || !tid.length || tid=="here") { // no target (or "here"), use containing tiddler\n tid=story.findContainingTiddler(place);\n if (tid) tid=tid.getAttribute("tiddler")\n else tid="SiteSlices"; // fallback for 'non-tiddler' areas (e.g, header, sidebar, etc.)\n }\n var val=store.getTiddlerSlice(tid,slice); // get tiddler slice value\n }\n if (val==undefined) {// not a slice, or slice not found, maybe a field reference?\n var parts=p.split("@");\n var field=parts[0];\n if (!field || !field.length) field="checked"; // missing fieldname, fallback: checked@tiddlername\n var tid=parts[1];\n if (!tid || !tid.length || tid=="here") { // no target (or "here"), use containing tiddler\n tid=story.findContainingTiddler(place);\n if (tid) tid=tid.getAttribute("tiddler")\n else tid="SiteFields"; // fallback for 'non-tiddler' areas (e.g, header, sidebar, etc.)\n }\n var val=store.getValue(tid,field);\n }\n // not a slice or field, or slice/field not found... return value unchanged\n return val===undefined?p:val;\n }\n}\n//}}}\n//{{{\n// define alternative macroName for triggering pre-rendering call to eval()\nconfig.macros.wikiCalc=config.macros.wikify;\n//}}}
>Much of the technical expertise in the library community is concentrated in the small number of vendors who provide the systems and software that run library management functions as well as the user discovery service -- systems which integrate bibliographic data with library management functions such as acquisitions, user data, and circulation. Thus libraries rely on these vendors and their technology development plans, rather than on their own initiative, when they want to adopt Linked Data at a production scale.\n\n[[Linked Data in Libraries|http://www.w3.org/2005/Incubator/lld/wiki/DraftReportWithTransclusion]]\n\nEbsco Discovery Service: $30(5),000 per year\nPrimo: $40,000\nSummon: $50,000\n
<<<\n!!!Cognitive processes\nIn his latest book [Shank] //Teaching Minds: How Cognitive Science Can Save Our Schools// he focuses on cognitive processes as the basis for learning interventions.\n \n!!!Conscious Processes\n1. Prediction: determining what will happen next \n2. Modeling: figuring out how things work\n3. Experimentation: coming to conclusions after trying things out\n4. Values: deciding between things you care about \n\n!!!Analytic Processes\n1. Diagnosis: determining what happened from the evidence\n2. Planning: determining a course of action\n3. Causation: understanding why something happened\n4. Judgment: deciding between choices\n\n!!!Social Processes\n1. Influence: figuring out how to get someone else to do something that you want them to do \n2. Teamwork: getting along with others when working towards a common goal \n3. Negotiation: trading with others and completing successful deals\n4. Description: communicating one's thoughts and what has just happened to others \n\nThese are the skills one needs to master. By allowing users to fail in controlled environments, he saw that instruction is not about telling, it's about real or fictionally constructed experience, involvement and practice, including the experience of failure.\n\n<<<\n[[Source|http://donaldclarkplanb.blogspot.com/2012/11/roger-schank-only-two-things-wrong-with.html]]\n\n<<<\nOne's intelligence is typically judged by others in relation to one's proficiency at five of these cognitive skills:\n\n * Prediction\n * Diagnosis\n * Causation\n * Describing\n * Planning\n<<<\n[[Source|http://www.rogerschank.com/]]\n\n!!! Case based education\nShank is also a big believer in case based education which help develop the above.
plone documentTypes = ['Page','Event','Favorite','File','Image','Link','News Item','Document','Collection','Topic'];\n\nCMIS Services Does CMIS4Plone support it now?\n\n1. Repository Services\ngetRepositories Yes\ngetRepositoryInfo Yes\ngetTypeChildren Yes\ngetTypeDescendants Yes\ngetTypeDefinition Yes\n\n2. Navigation Services \ngetChildren Yes\ngetDescendants Yes\ngetFolderTree Yes\ngetFolderParent Yes\ngetObjectParents Yes\ngetCheckedOutDocs No, not supported by Plone\n\n3. Object Services\ncreateDocument Yes\ncreateDocumentFromSource Yes\ncreateFolder Yes\ncreateRelationship No, not supported by Plone\ncreatePolicy No, not clear in Plone\ngetAllowableActions Yes\ngetObject Yes\ngetProperties Yes \ngetObjectByPath Yes\ngetContentStream Yes\ngetRenditions No, not supported by cmislib and Plone\nupdateProperties Not yet implemented in cmis4plone\nmoveObject No, not yet implemented in cmislib\ndeleteObject Yes, supported at the risk of permission uncertainty\ndeleteTree Yes, supported at the risk of permission uncertainty\nsetContentStream Yes, supported at the risk of permission uncertainty\ndeleteContentStream Yes, supported at the risk of permission uncertainty\n\n4. Multi-filing Services\naddObjectToFolder No, not yet implemented in cmislib. It can be supported \nremoveObjectFromFolder via the Collection operations in Plone. \n\n5. Discovery Services\nquery No, need a compiler to translate CMIS queries\ngetContentChanges No, not supported by Plone\n\n6. Versioning Services No, not supported by Plone or wsapi4plone\ncheckOut\ncancelCheckOut\ncheckIn\ngetObjectOfLatestVersion\ngetPropertiesOfLatestVersion\ngetAllVersions\n\n7. Relationship Services No, not supported by Plone\ngetObjectRelationships\n\n8. Policy Services \napplyPolicy No, not yet implemented in cmislib, \nremovePolicy and not supported by Plone\ngetAppliedPolicies\n\n9. ACL Services \ngetACL No, not supported by wsapi4plone\napplyACL read/write permissions are not clear\n\n\n
<<formTiddler MyFormTemplate>>\n\n<script label="Click Here" show>\n var tiddlerName = story.findContainingTiddler(place).id.substr(7);\n t = store.getTiddler(tiddlerName)\n var title = t.title\n var newTitle = t.title\n var newBody = t.text\n var modifier = t.modifier\n var modified = new Date()\n var tags = t.tags\n store.saveTiddler(title, newTitle, newBody, modifier, modified, tags)\n</script>\n\n<data>{"firstname":"Brian","lastname":"Kennison","email":"kennisonb@wcsu.edu","phone":"(203) 835-8847","address":"473 Weekeepeemee Road","city":"Woodbury","state":"CT","zip":"06798","country":"USA","webpage":"http://kennison.name","notes":"Can this be the end!"}</data>
Six Major Sections \n*METS Header\n* Descriptive Metadata*\n* Administrative Metadata*\n* File Groups\n* Structural Map\n* Behavior Section*\n \nMay be internal to METS document as XML Schema and/or external to METS document in any format.\n\n \n\n
!!! Python\n# Read [[Michele Simionato|http://www.phyast.pitt.edu/~micheles/python/index.html]] website. Goes over things I need to know in a clear way. \n# Take a look at the code and lessons on [[Google Code University|http://code.google.com/edu/]]
<html>\n <table width="48%" border="1" align="left" cellpadding="5" cellspacing="2" bordercolor="#B8B0C9">\n <!--DWLayoutTable-->\n <tr>\n <td width="50%"><div align="center"><strong>FULLSCREEN 4:3 frame dimensions </strong></div></td>\n <td width="50%"><div align="center"><strong>WIDESCREEN 16:9 frame dimensions </strong></div></td>\n </tr>\n <tr>\n <td height="224"><p align="center"><strong>768 x 576</strong></p>\n <p align="center"><strong>720 x 540 </strong></p>\n <p align="center"><strong>640 x 480 </strong></p>\n <p align="center"><strong>600 x 450</strong></p>\n <p align="center"><strong>540 x 405 </strong></p>\n <p align="center"><strong>480 x 360</strong></p>\n <p align="center"><strong>360 x 270 </strong></p>\n <p align="center">&nbsp;</p></td>\n <td><p align="center"><strong>1024 x 576</strong></p>\n <p align="center"><strong>854 x 480</strong></p>\n <p align="center"><strong>768 x 432</strong></p>\n <p align="center"><strong>720 x 406</strong></p>\n <p align="center"><strong>640 x 360</strong></p>\n <p align="center"><strong>428 x 240</strong></p>\n <p align="center"><strong>360 x 202</strong></p>\n <p align="center"><strong>320 x 180 </strong></p></td>\n </tr>\n </table>\n</html>\n\n[[16:9 calculator|http://size43.com/jqueryVideoTool.html]]\n[[4:3 calculator|http://size43.com/jqueryVideoTool-4x3.html]]\n\n\n\n<html>\n <table style="clear: both;font-family: Arial; font-size: 12px; margin-left: 20px;" align="right" bgcolor="#cccccc" border="0" cellpadding="4" cellspacing="1">\n <tbody>\n <tr>\n <td colspan="3" bgcolor="black" valign="top"><font color="#9999ff" size="+1"><b>Bitrate and File size</b></font><br>\n </td>\n </tr>\n <tr>\n <td bgcolor="#e0e0e0" valign="top"><b>Bitrate<br>\n </b></td>\n <td bgcolor="#e0e0e0" valign="top"><b>Filesize<br>\n </b></td>\n <td bgcolor="#e0e0e0" valign="top"><b>Application<br>\n </b></td>\n </tr>\n <tr>\n <td bgcolor="white" valign="top">250 kbps<br>\n </td>\n <td bgcolor="white" valign="top">1.9 Mb/minute<br>\n </td>\n <td bgcolor="white" valign="top">YouTube original format<br>\n </td>\n </tr>\n <tr>\n <td bgcolor="white" valign="top">500 kbps<br>\n </td>\n <td bgcolor="white" valign="top">3.8 Mb/minute<br>\n </td>\n <td bgcolor="white" valign="top">YouTube HQ<br>\n </td>\n </tr>\n <tr>\n <td bgcolor="white" valign="top">768 kbps<br>\n </td>\n <td bgcolor="white" valign="top">5.9 Mb/minute<br>\n </td>\n <td bgcolor="white" valign="top">iPod maximum<br>\n </td>\n </tr>\n <tr>\n <td bgcolor="white" valign="top">1664 kbps<br>\n </td>\n <td bgcolor="white" valign="top">15.3 Mb/minute<br>\n </td>\n <td bgcolor="white" valign="top">TV show I downloaded<br>\nfrom the iTunes store<br>\n </td>\n </tr>\n <tr>\n <td bgcolor="white" valign="top">2000 kbps<br>\n </td>\n <td bgcolor="white" valign="top">15.4 Mb/minute<br>\n </td>\n <td bgcolor="white" valign="top">YouTube HD<br>\n </td>\n </tr>\n <tr align="center">\n <td colspan="3" valign="top">\n </td>\n </tr>\n </tbody>\n </table>\n</html>\n\n{{{\n592x336resolution (600 kbps) minimal\n}}}
We need to create this in the library\n\n[img[/filestore/uploads/libraries/what-is-digital-scholarship.jpg]]\n\nCould add to this a usability lab and a podcast making service (all things digital)
!! Resource-Method-Representation\n\n[img[/filestore/uploads/webservices/rmr.jpg]]\n\n!!! Why\n<<<\nIf we think about URLs as being only nouns, no verbs, then we end up with a URL for every important thing in our site. Those URLs can then be bookmarked and linked easily. We can change code behind the scenes without changing the URLs as the URLs refer to objects that don't change rather than functions that do.\n\nThe model is inherently object-oriented, with every object (at least those of meaning to the outside world) having a URI and every object responding to the standard HTTP verbs, GET, PUT, POST, DELETE. This is object-orientation at the level of the web, not at the level of a server-side language. That's a very different thing to what JSP does, where internally the server-side code may be object-oriented, but the URIs refer to verbs, so look more procedural or perhaps functional.\n<<<\n\nThe above is from [[Rob Styles from Talis|http://dynamicorange.com/2008/10/03/pages-screens-mvc-and-not-getting-it/]] You need to read the whole article!\n\n\nhttp://architects.dzone.com/news/common-rest-design-pattern\n\n[[Paul Sadauskas on RESTful services|http://www.theamazingrando.com/blog/?p=107]] //(very good)//
Decades of trial, error, and egghead analysis have yielded a consensus conclusion: Buy when you need to automate commodity business processes; build when you're dealing with the core processes that differentiate your company.
<<<\nNo wonder non-librarians have trouble envisioning a future for us. We don’t really enable discovery; people turn to their local library to procure things they identified elsewhere. We don’t curate or organize knowledge; we license packages of it curated and organized by others. We do help students navigate it all, but it’s misleading to say we’re promoting information literacy. We’re teaching college literacy, helping students compete assignments by showing them how to find content that will become unavailable the minute they graduate. This is why Mita's alternative sounds so much more exciting. It's a return to what we originally cared about.\n\nRead more: http://www.insidehighered.com/blogs/library-babel-fish/library-free-enterprise#ixzz2F3RjBTnz \nInside Higher Ed \n<<<
<<<\n When I say that "everyone has to pass the bar now," I mean that, as the world got hyperconnected, all these things happened at once: Jobs started changing much faster, requiring more skill with each iteration. Schools could not keep up with the competencies needed for these jobs, so employers got frustrated because, in a hyperconnected world, they did not have the time or money to spend on extensive training. So more employers are demanding that students prove their competencies for a specific job by obtaining not only college degrees but by passing certification exams that measure specific skills the way lawyers have to pass the bar. Last week, The Economist quoted one labor expert, Peter Cappelli of the Wharton business school, as saying that companies now regard filling a job as being like buying a spare part: you expect it to fit\n<<<\n\n[[from Thomas Friedman-NYT|http://www.nytimes.com/2013/05/01/opinion/friedman-its-a-401k-world.html?_r=1&]]\n\n!!!Also from Friedman\n\n>When outstanding becomes so easily available, average is over\n
* computer workstations clusters; \n* a service desk;\n* collaborative learning spaces; \n* presentation support centres; \n* instructional technology centres for faculty development; \n* electronic classrooms; \n* writing centres and other academic support units; \n* spaces for meetings, seminars, receptions, programmes and cultural events; \n* cafes and lounge areas.\n\n<<<\nIntegrates information, technology, and wrting services -- along with expert help -- to create a learning environment that is more complete, more holistic and much more exciting.\n\nA new conception of library services\n<<<\n\nhttp://libraryspaceplanning.com/assets/resource/Information-or-Learning-Commons.pdf\n\n<<<\nThe first paradigm of library design brought the reader and printed material together in a particular physical space. But once every space\nis potentially a library space - that is to say, an information rich space - the design challenge is less with the interaction of readers and books and more with the connection between space and learning\n<<<\nhttp://libraryspaceplanning.com/assets/resource/Libraries-and-learning.pdf\n
{{{\n<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"\n "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">\n<html version="XHTML+RDFa 1.0"\n xmlns="http://www.w3.org/1999/xhtml"\n xmlns:dc="http://purl.org/dc/elements/1.1/">\n <head version="XHTML+RDFa 1.0"\n profile="http://www.w3.org/1999/xhtml/vocab">\n <title>An XHTML+RDFa document using CURIEs</title>\n </head>\n <body>\n <p rel="cite">\n this content was written by \n <span property="dc:creator">some author</span>\n </p>\n </body>\n</html>\n}}}\n\n!!! RDFa Core Initial Context\n[[This is a very important link|http://www.w3.org/2011/rdfa-context/rdfa-1.1]]
[img[/filestore/uploads/learning/design-lens.png]]
When you use tools (for what every purpose) are you thinking more like an architect (what is the problem and what design will solve the problem) or has that part been done and now you're just getting the job done. \n\nWhat are the different tools you use in each role\n* patterns\n* libraries (things that can be resused)\n* implementation code\n\n\n(when are things strategic and when are they tactical)\n\n> from Yale job description <br />(Develops and analyzes metrics that emphasize performance, sustainability, and usability of tools and platforms) \n\n* Strategists (Scope)\n* Executive Leaders (Business)\n* Architects (Systems)\n* Engineers (Technology)\n* Technicians (Components)\n* Workers (Operations)\n[[the above is from here|http://www.tdan.com/view-articles/14400]]\n\n<<<\nIf your business is to tell or synthesize stories emerged from piles of data (journalists, historians, researchers, politicians, teachers, curators, analysts, etc), we need to think about a contribution ecosystem where sharing your data benefits you and in a way that it's obvious for you to understand (and to explain to your boss!)\n<<<\n\nSaul Wurman about information architecture:\n> "I mean architect as in the creating of systemic, structural, and orderly principles to make something work - the thoughtful making of either artifact, or idea, or policy that informs because it is clear."\n\nNike ad for data person\n<<<\nThe ideal candidate will be part developer/programmer, part researcher, part designer, part business analyst. He or she will have demonstrated expert experience with databases, programming in multiple languages, in visual design and with statistics. He or she will have an understanding of the existing open data communities and networks of visual designers and researchers who love data.\n<<<
On October 27, 2010 7:42:13 AM EDT, brian imported 1 tiddler from\n[[http://kennison.name/notes|http://kennison.name/notes]]:\n<<<\n#[[Discover, Gather, Create, Share]] - added\n<<<\n\n----\nOn February 1, 2010 11:35:30 AM EST, brian imported 1 tiddler from\n[[http://kennison.name/notes|http://kennison.name/notes]]:\n<<<\n#[[Adding Value]] - added\n<<<\n\n----\nOn August 18, 2009 4:36:16 PM EDT, brian imported 1 tiddler from\n[[http://kennison.name/notes/|http://kennison.name/notes/]]:\n<<<\n#[[Recursively chmod directories only]] - added\n<<<\n
Instead of \n\n> corporate enclosure of knowledge\n\n>do we want commercialize access to knowledge?\nWe need\n\n>open information exchange, minimal concern over intellectual property control, no requirements for individuals to monetize knowledge production\n\nI need to get a detailed break down of the costs\n\nImmutible published object http://craigmod.com/journal/post_artifact/\n\n<<<\nTo sum up, the advent of the Internet should have greatly reduced the monetary value that can be extracted from academic content. Publishers who have depended on extracting this value face a crisis. The crisis is being delayed only by Universities and research funders. They have the power in their hands to insist on alternative models for access to the results of research, such as open access and self-archiving, but have in most cases been reluctant to do so. My suspicion is that the decision-makers in this area also tend to be on editorial boards of major journals, and thus generously treated by the big publishers.
From [[Randy Bass|http://www.educause.edu/ero/article/disrupting-ourselves-problem-learning-higher-education]] also [[post course era|http://www.slideshare.net/CNDLS/the-problem-of-learning-in-the-postcourse-era-by-randy-bass]]\n\n>Can we continue to operate on the assumption that the formal curriculum is the center of the undergraduate experience?\n\n!!! High Impact Practices (National Survey of Student Engagement--NSSE) \n* First-year seminars and experiences \n* Learning communities \n* Writing intensive courses \n* Collaborative assignments\n* Undergraduate research \n* Global learning/ study abroad \n* Internships \n* Capstone courses and projects\n\n!!! So, if high impact practices are largely in the extra curriculum (or co-curriculum), then where are the low-impact practices?\n* formal curriculum = low-impact practices ? Are we then entering the post-course era?\n\n If the formal curriculum is not where the high impact experiences are then there are three options \n(1) Make courses higher impact \n(2) Create better connections between courses and the high impact experiences outside the formal curriculum \n(3) Start shifting resources from from the formal curriculum to the high impact (experiential) curriculum\n\n!!! All of the above
The following came from a call for papers for an international conference on metadata and semantics. What would the /new/ metadata person think about these?\n\n* Cultural heritage metadata models, standards, interoperability, mappings and integration\n* Automated metadata extraction\n* Ontologies and knowledge representation for the cultural heritage domain\n* Extracting semantics, entities, and patterns from Cultural Heritage collections\n* Collection models and item - collection relationships representation\n* Collection - level metadata modeling and management\n* Linked open data approaches for the cultural heritage domain\n* Composite content-discovery and management of components and interrelationships\n* Large volume content management - high resolution image data sets\n* 3D models-indexing, storage and retrieval approaches\n* Federation of repositories/data infrastructures\n* Integration of intra or inter disciplinary heterogeneous resources\n* Infrastructures for sharing content\n* Digital Curation workflows and models\n* Preservation metadata for cultural heritage digital objects\n* Metadata quality metrics\n* Case studies\n
<<<\n... as long as department heads imagine that complex technology can be procured like pencils. It will happen again as long as management regards listening to the people who understand the technology as a distasteful act.\n<<<
* Digital Libraries Development \n* Tools and Techniques for Managing Digital Repositories \n* Digital Resource Management Strategies \n* Evaluation of Digital Libraries \n* Content Development: Tools and Techniques \n* Cultural Issues of Online Services \n* Technology Issues in Online Services \n* Standards and Specifications for Digital Objects \n* Metadata Standards, Interoperability and Crosswalks \n* Case Studies of Digital Libraries and Institutional Repositories \n* Multilingual Digital Libraries \n* Digital Preservation Strategies \n* Web Retrieval Tools and Strategies \n* User Interface and Patron Interactions Tools \n* Open Source Software Tools for Digital Library Development \n* Open Access Initiatives, Open Access Repositories \n* Open Access for Scholarly Contents \n* Information Management Using Web 2.0/3.0 Technologies \n* Social Networking Tools for Information Services \n* Knowledge Organization Techniques \n* Knowledge Representation Models \n* Emergent Techniques for Search Algorithms and Context Sensitive Indexing \n* Semantic Web Technologies for Knowledge Representation and Management \n* Ontologies and Approaches to Building Ontologies \n
<<option chkRegExpSearch>> ~RegExp Search\n<<option chkCaseSensitiveSearch>> Case sensitive search\n<<option chkAnimate>> Enable animations\n<<option chkOpenInNewWindow>> Open links in new window\n<<option chkToggleLinks>> Links close open tiddlers\n<<option chkConfirmDelete>> Confirm before deleting\n<<option chkForceMinorUpdate>> Preserve date/time on edit\n<<option chkInsertTabs>> Insert tab characters\n<<option txtMaxEditRows>> Maximum editor rows\n----\nPluginManager\n
<<<\nTeaching or, more accurately, being taught, is only one way to learn. Let's not knock teaching, or teachers, though, because I believe it is also one of the most effective ways of learning and improving teaching is one of the best ways of improving results four learners.\n\nI say teaching is only one way to learn because there are other ways, such as studying, being coached or mentored, being an apprentice, or learning from experience. Traditionally, these other approaches have been used in later learning, after school in college, university or workplace learning. However, for several years, studying has been increasingly seen in schools, initially high schools but also, nowadays, in primary institutions. Sometimes this has been self-directed study by the learner but it has more often been directed study set by the teacher.\n\nSome people may argue that I am quibbling over semantics but I disagree, I believe that studying, coaching etc. are quite distinct from teaching. I accept that we often use the term teaching as a generic term to cover all that goes on in the classroom and beyond in schools but still, I believe that closer examination can determine differences in learners studying and being taught.\n\nMy point here is that if schools or teachers are going to increasingly require their learners to study, then they, the schools, need to ensure that the learners have access to quality study materials. It can be argued that technology allows learners greater access to a wide variety of learning resources to support their study but are all of these of equal or suitable quality? A rhetorical question, of course, because they are not. \n\nOn the one hand I am arguing for schools allowing access to quality resources and sources, while on the other hand, I would also argue for allowing learners access to a wider range of sharing and collaborative services, which may be less authoritative and less accurate, not to mention carry more risk. The onus here is upon schools/teachers, to vet sources, perhaps, to ensure that learners can be directed to a range of known reliable sources. If the learner then seeks to supplement these with knowledge garnered from other sources, then so be it, let's praise such a learner.\n\nTo my mind, this access to quality sources for study in schools could be a role played by a VLE. Now I am not suggesting here a return to the closed garden approach of old, though I admit, even to my ears, it might sound like it at first. What I am suggesting is that the VLE allows or guides access to quality sources/resources as a first port of call or as a minimum baseline. Other sources can be accessed as the student sees fit.\n<<<\n[[Source|http://www.dougwoods.co.uk/blog/teaching-is-only-one-way-to-learning/]]\n\nAlso from this site:\n<<<\n!!!Myth\nTeachers need training before they can use technology. The key word in that sentence is before. It cannot be denied that teachers can benefit from training and that training can produce benefits for education. However, the notion held by some that teachers need training before they use technology is somewhat erroneous, especially when the excuse is one used by those teachers themselves who are not using technology. Did you receive training in using a washing machine, a television, a radio, a video recorder (remember them?) or mobile phone, before you started using them, almost certainly not. Electronic technology is different in that it is more versatile and significant than any one of those other devices but you do not need training before you start to use it. Indeed, training in education technology use is often more effective when taking users beyond the basics of operating the device(s)/service(s) and developing their use in the curriculum.\n<<<
/%RGB hexadecimal 216-color "Web safe" palette %/\nSource: Paul Petterson, revised by Eric Shulman\n{{menubox{\n|bgcolor(#FFF):FFF |bgcolor(#CCC):CCC |bgcolor(#999):999 |bgcolor(#666):@@color(white):666@@ |bgcolor(#333):@@color(white):333@@ |bgcolor(#000):@@color(white):000@@ |bgcolor(#FC0):~FC0 |bgcolor(#F90):F90 |bgcolor(#F60):@@color(white):F60@@ |bgcolor(#F30):@@color(white):F30@@ |>|>|>|>|>| |\n|bgcolor(#9C0):9C0 |>|>|>| |bgcolor(#C90):C90 |bgcolor(#FC3):~FC3 |bgcolor(#FC6):~FC6 |bgcolor(#F96):F96 |bgcolor(#F63):@@color(white):F63@@ |bgcolor(#C30):@@color(white):C30@@ |>|>|>| |bgcolor(#C03):@@color(white):C03@@ |\n|bgcolor(#CF0):~CF0 |bgcolor(#CF3):~CF3 |bgcolor(#330):@@color(white):330@@ |bgcolor(#660):@@color(white):660@@ |bgcolor(#990):990 |bgcolor(#CC0):~CC0 |bgcolor(#FF0):~FF0 |bgcolor(#C93):C93 |bgcolor(#C63):@@color(white):C63@@ |bgcolor(#300):@@color(white):300@@ |bgcolor(#600):@@color(white):600@@ |bgcolor(#900):@@color(white):900@@ |bgcolor(#C00):@@color(white):C00@@ |bgcolor(#F00):@@color(white):F00@@ |bgcolor(#F36):@@color(white):F36@@ |bgcolor(#F03):@@color(white):F03@@ |\n|bgcolor(#9F0):9F0 |bgcolor(#CF6):~CF6 |bgcolor(#9C3):9C3 |bgcolor(#663):@@color(white):663@@ |bgcolor(#993):993 |bgcolor(#CC3):~CC3 |bgcolor(#FF3):~FF3 |bgcolor(#960):@@color(white):960@@ |bgcolor(#930):@@color(white):930@@ |bgcolor(#633):@@color(white):633@@ |bgcolor(#933):@@color(white):933@@ |bgcolor(#C33):@@color(white):C33@@ |bgcolor(#F33):@@color(white):F33@@ |bgcolor(#C36):@@color(white):C36@@ |bgcolor(#F69):@@color(white):F69@@ |bgcolor(#F06):@@color(white):F06@@ |\n|bgcolor(#6F0):6F0 |bgcolor(#9F6):9F6 |bgcolor(#6C3):6C3 |bgcolor(#690):690 |bgcolor(#996):996 |bgcolor(#CC6):~CC6 |bgcolor(#FF6):~FF6 |bgcolor(#963):@@color(white):963@@ |bgcolor(#630):@@color(white):630@@ |bgcolor(#966):@@color(white):966@@ |bgcolor(#C66):@@color(white):C66@@ |bgcolor(#F66):@@color(white):F66@@ |bgcolor(#903):@@color(white):903@@ |bgcolor(#C39):@@color(white):C39@@ |bgcolor(#F6C):@@color(white):~F6C@@ |bgcolor(#F09):@@color(white):F09@@ |\n|bgcolor(#3F0):3F0 |bgcolor(#6F3):6F3 |bgcolor(#390):390 |bgcolor(#6C0):6C0 |bgcolor(#9F3):9F3 |bgcolor(#CC9):~CC9 |bgcolor(#FF9):~FF9 |bgcolor(#C96):C96 |bgcolor(#C60):@@color(white):C60@@ |bgcolor(#C99):C99 |bgcolor(#F99):F99 |bgcolor(#F39):@@color(white):F39@@ |bgcolor(#C06):@@color(white):C06@@ |bgcolor(#906):@@color(white):906@@ |bgcolor(#F3C):@@color(white):~F3C@@ |bgcolor(#F0C):@@color(white):~F0C@@ |\n|bgcolor(#0C0):0C0 |bgcolor(#3C0):3C0 |bgcolor(#360):@@color(white):360@@ |bgcolor(#693):693 |bgcolor(#9C6):9C6 |bgcolor(#CF9):~CF9 |bgcolor(#FFC):FFC |bgcolor(#FC9):~FC9 |bgcolor(#F93):F93 |bgcolor(#FCC):FCC |bgcolor(#F9C):~F9C |bgcolor(#C69):@@color(white):C69@@ |bgcolor(#936):@@color(white):936@@ |bgcolor(#603):@@color(white):603@@ |bgcolor(#C09):@@color(white):C09@@ |bgcolor(#303):@@color(white):303@@ |\n|bgcolor(#3C3):3C3 |bgcolor(#6C6):6C6 |bgcolor(#0F0):0F0 |bgcolor(#3F3):3F3 |bgcolor(#6F6):6F6 |bgcolor(#9F9):9F9 |bgcolor(#CFC):CFC |>|>| |bgcolor(#C9C):~C9C |bgcolor(#969):@@color(white):969@@ |bgcolor(#939):@@color(white):939@@ |bgcolor(#909):@@color(white):909@@ |bgcolor(#636):@@color(white):636@@ |bgcolor(#606):@@color(white):606@@ |\n|bgcolor(#060):@@color(white):060@@ |bgcolor(#363):@@color(white):363@@ |bgcolor(#090):090 |bgcolor(#393):393 |bgcolor(#696):696 |bgcolor(#9C9):9C9 |>|>| |bgcolor(#FCF):FCF |bgcolor(#F9F):~F9F |bgcolor(#F6F):@@color(white):~F6F@@ |bgcolor(#F3F):@@color(white):~F3F@@ |bgcolor(#F0F):@@color(white):~F0F@@ |bgcolor(#C6C):@@color(white):~C6C@@ |bgcolor(#C3C):@@color(white):~C3C@@ |\n|bgcolor(#030):@@color(white):030@@ |bgcolor(#0C3):0C3 |bgcolor(#063):@@color(white):063@@ |bgcolor(#396):396 |bgcolor(#6C9):6C9 |bgcolor(#9FC):9FC |bgcolor(#CFF):CFF |bgcolor(#39F):39F |bgcolor(#9CF):9CF |bgcolor(#CCF):CCF |bgcolor(#C9F):~C9F |bgcolor(#96C):@@color(white):96C@@ |bgcolor(#639):@@color(white):639@@ |bgcolor(#306):@@color(white):306@@ |bgcolor(#90C):@@color(white):90C@@ |bgcolor(#C0C):@@color(white):~C0C@@ |\n|bgcolor(#0F3):0F3 |bgcolor(#3F6):3F6 |bgcolor(#093):093 |bgcolor(#0C6):0C6 |bgcolor(#3F9):3F9 |bgcolor(#9FF):9FF |bgcolor(#9CC):9CC |bgcolor(#06C):@@color(white):06C@@ |bgcolor(#69C):69C |bgcolor(#99F):99F |bgcolor(#99C):99C |bgcolor(#93F):@@color(white):93F@@ |bgcolor(#60C):@@color(white):60C@@ |bgcolor(#609):@@color(white):609@@ |bgcolor(#C3F):@@color(white):~C3F@@ |bgcolor(#C0F):@@color(white):~C0F@@ |\n|bgcolor(#0F6):0F6 |bgcolor(#6F9):6F9 |bgcolor(#3C6):3C6 |bgcolor(#096):096 |bgcolor(#6FF):6FF |bgcolor(#6CC):6CC |bgcolor(#699):699 |bgcolor(#036):@@color(white):036@@ |bgcolor(#369):@@color(white):369@@ |bgcolor(#66F):@@color(white):66F@@ |bgcolor(#66C):@@color(white):66C@@ |bgcolor(#669):@@color(white):669@@ |bgcolor(#309):@@color(white):309@@ |bgcolor(#93C):@@color(white):93C@@ |bgcolor(#C6F):@@color(white):~C6F@@ |bgcolor(#90F):@@color(white):90F@@ |\n|bgcolor(#0F9):0F9 |bgcolor(#6FC):6FC |bgcolor(#3C9):3C9 |bgcolor(#3FF):3FF |bgcolor(#3CC):3CC |bgcolor(#399):399 |bgcolor(#366):@@color(white):366@@ |bgcolor(#069):@@color(white):069@@ |bgcolor(#039):@@color(white):039@@ |bgcolor(#33F):@@color(white):33F@@ |bgcolor(#33C):@@color(white):33C@@ |bgcolor(#339):@@color(white):339@@ |bgcolor(#336):@@color(white):336@@ |bgcolor(#63C):@@color(white):63C@@ |bgcolor(#96F):@@color(white):96F@@ |bgcolor(#60F):@@color(white):60F@@ |\n|bgcolor(#0FC):0FC |bgcolor(#3FC):3FC |bgcolor(#0FF):0FF |bgcolor(#0CC):0CC |bgcolor(#099):099 |bgcolor(#066):@@color(white):066@@ |bgcolor(#033):@@color(white):033@@ |bgcolor(#39C):39C |bgcolor(#36C):@@color(white):36C@@ |bgcolor(#00F):@@color(white):00F@@ |bgcolor(#00C):@@color(white):00C@@ |bgcolor(#009):@@color(white):009@@ |bgcolor(#006):@@color(white):006@@ |bgcolor(#003):@@color(white):003@@ |bgcolor(#63F):@@color(white):63F@@ |bgcolor(#30F):@@color(white):30F@@ |\n|bgcolor(#0C9):0C9 |>|>|>| |bgcolor(#09C):09C |bgcolor(#3CF):3CF |bgcolor(#6CF):6CF |bgcolor(#69F):69F |bgcolor(#36F):@@color(white):36F@@ |bgcolor(#03C):@@color(white):03C@@ |>|>|>| |bgcolor(#30C):@@color(white):30C@@ |\n|>|>|>|>|>| |bgcolor(#0CF):0CF |bgcolor(#09F):09F |bgcolor(#06F):@@color(white):06F@@ |bgcolor(#03F):@@color(white):03F@@ |>|>|>|>|>| |\n<script>place.lastChild.style.width="95%"</script>}}}
Cathy Moore and "Activity Mapping"\n\n* Not an information dump\n* Goals at the center\n* Activities to achieve that goal\n* Information needed to complete the activities\n\nI liked this graphic\n[img[/filestore/uploads/learning/Learning-Quadrant.png]]\n\nShe used this to focus in a quadrant that was stopping people from performing an action.
[img[/filestore/uploads/content/content-strategy.png]]
>Social media is about flow, not substance
<<<\nWithin the academy, many have expressed outrage at the pricing and sales strategies of the aggregated commercial firms. We dismiss that point of view. The problem lies not with the commercial firms, who rightly endeavor to transfer money from higher education institutions to their shareholders. The problem lies in the behavior of those of us in higher education the buyers who fail to aggregate at scale in the interests of our institutions. Achieving multi-institutional scale in order to level the playing field and become players in the new game in this era of digital distribution and reuse requires that we make behavioral changes. These changes are neither pro-commercial nor anti-commercial, and attempts to frame them as such are without merit. The changes are, rather, pro-institutional.\n<<<\n[[From The Game Has Changed]|http://www.educause.edu/ero/article/game-has-changed]]
<<<\nEli again:\n\nThe purpose of libraries when they were created was not to purchase commercial content for use by the community but to store and organize the content of the community. Popular materials have fueled a huge boom for popular libraries, but libraries were created to protect and ensure access to things like [local texts and history] for the communities that produced them, not to subsidize access to the hottest new clay tablets from Babylon. It'™s these unique things that don't exist anywhere else, and that matter more to our own communities than anyone else, that have the future for libraries. It's not just data about the community, but also creations of the community that libraries can enable by giving patrons access to production tools, event venues, and most importantly a permanent, non-commercial, online home for our patrons™ creative works, making the library the publisher putting the emphasis on the library as a platform for the community and less emphasis on having enough copies of the hot new thing.\n\nThe cat is out of the bag. Everyone is a publisher. The 20th-century [library] brought the world to its community. The 21st-century library brings its community to the world.\n<<<
[img[filestore/uploads/webservices/repositories_exchange.png]]\n\nfrom Madison Digital Image Database
{{{\n<?xml version="1.0"?>\n<mets:mets xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" \n xmlns:mods="http://www.loc.gov/mods/v3" \n xmlns:xlink="http://www.w3.org/1999/xlink" \n xmlns:mets="http://www.loc.gov/METS/" \n OBJID="oai:eprints.rclis.org:15680" \n LABEL="Eprints Item" \n xsi:schemaLocation="http://www.loc.gov/METS/ http://www.loc.gov/standards/mets/mets.xsd http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-0.xsd">\n <mets:metsHdr CREATEDATA="2009-02-14T12:20:01Z">\n <mets:agent TYPE="ORGANIZATION" ROLE="CUSTODIAN">\n <mets:name>E-LIS</mets:name>\n </mets:agent>\n </mets:metsHdr>\n <mets:dmdSec ID="DMD_oai:eprints.rclis.org:15680_mods">\n <mets:mdWrap MDTYPE="mods">\n <mets:xmlData>\n <mods:titleInfo>\n <mods:title>Interview on Open Access with Dr. Stevan Harnad</mods:title>\n </mods:titleInfo>\n <mods:name type="personal">\n <mods:namePart type="given">Stephen Michael</mods:namePart>\n <mods:namePart type="family">Kellat</mods:namePart>\n <mods:role>\n <mods:roleTerm type="text">author</mods:roleTerm>\n </mods:role>\n </mods:name>\n <mods:name type="personal">\n <mods:namePart type="given">Stevan</mods:namePart>\n <mods:namePart type="family">Harnad</mods:namePart>\n <mods:role>\n <mods:roleTerm type="text">author</mods:roleTerm>\n </mods:role>\n </mods:name>\n <mods:abstract>In light of the recent Conyers bill that would remove the NIH mandate on Open Access, LISTen (LISNews.org) talked to Dr. Harnad about Open Access so that librarians may learn more about it.</mods:abstract>\n <mods:classification authority="lcc">EB. Printing, electronic publishing, broadcasting.</mods:classification>\n <mods:classification authority="lcc">BD. Information society.</mods:classification>\n <mods:originInfo>\n <mods:dateIssued encoding="iso8061">2009-02-09</mods:dateIssued>\n </mods:originInfo>\n <mods:genre>Other</mods:genre>\n </mets:xmlData>\n </mets:mdWrap>\n </mets:dmdSec>\n <mets:amdSec ID="TMD_oai:eprints.rclis.org:15680">\n <mets:rightsMD ID="rights_oai:eprints.rclis.org:15680_mods">\n <mets:mdWrap MDTYPE="mods">\n <mets:xmlData>\n <mods:useAndReproduction>\n <p><strong>For work being deposited by its own author:</strong> \nIn self-archiving this collection of files and associated bibliographic \nmetadata, I grant E-LIS the right to store \nthem and to make them permanently available publicly for free on-line. \nI declare that this material is my own intellectual property and I \nunderstand that E-LIS does not assume any \nresponsibility if there is any breach of copyright in distributing these \nfiles or metadata. (All authors are urged to prominently assert their \ncopyright on the title page of their work.)</p>\n <p><strong>For work being deposited by someone other than its \nauthor:</strong> I hereby declare that the collection of files and \nassociated bibliographic metadata that I am archiving at \nE-LIS) is in the public domain. If this is \nnot the case, I accept full responsibility for any breach of copyright \nthat distributing these files or metadata may entail.</p>\n <p>Clicking on the deposit button indicates your agreement to these \nterms.</p>\n </mods:useAndReproduction>\n </mets:xmlData>\n </mets:mdWrap>\n </mets:rightsMD>\n </mets:amdSec>\n <mets:fileSec>\n <mets:fileGrp USE="reference">\n <mets:file SIZE="21408105" ID="oai:eprints.rclis.org:15680_11144_1" MIMETYPE="application/octet-stream" OWNERID="http://eprints.rclis.org/15680/1/Stevan_Harnad_Interview.mp3">\n <mets:FLocat LOCTYPE="URL" xlink:href="http://eprints.rclis.org/15680/1/Stevan_Harnad_Interview.mp3" xlink:type="simple"/>\n </mets:file>\n </mets:fileGrp>\n </mets:fileSec>\n <mets:structMap>\n <mets:div DMDID="DMD_oai:eprints.rclis.org:15680_mods" AMDID="TMD_oai:eprints.rclis.org:15680">\n <mets:fptr FILEID="oai:eprints.rclis.org:15680_11144_1"/>\n </mets:div>\n </mets:structMap>\n</mets:mets>\n}}}
{{{\n<!DOCTYPE html>\n<html xmlns="http://www.w3.org/1999/xhtml">\n <head>\n <meta charset="utf-8" />\n <title>Example XHTML5 document</title>\n </head>\n <body>\n <!-- HERE BE DRAGONS -->\n </body>\n</html>\n}}}
>a clear scientific story (e.g. this is the problem, this how we approached it, this is what we found and why it is important
{{{\nI use the following steps to get objects from a corrupted Data.fs. You can apply some guesses regarding the dates.\n\n1. Make another Zope instance, with same products\n2. Copy the real Data.fs into this temporary zope instance\n3. Start zopedebug: $:/path-to-zope/bin/zopectl debug. Run these commands:\n\nimport ZODB.DB, ZODB.FileStorage, cPickle\nfrom ZODB.TimeStamp import TimeStamp\nfrom OFS import ObjectManager\ndate_tuple = (2009,8,23,23,17,06) #date when data was safe\nspecial_date = TimeStamp(*date_tuple) #make date into special format\nfilename=’/var/local/zopetest/var/db.fs’ #path to Zope’s Data.fs (zope instance have to be stopped atm)\nstorage = ZODB.FileStorage.FileStorage(filename, read_only=1,stop=`special_date`) #wait few minutes, until it opens Data.fs\nDB = ZODB.DB(storage) #mount database\nconn = DB.open() #open database\nroot = conn.root()['Application']\nfolder = getattr(root, ‘myfolder’) #the parent containing the folder with the objects you want to recover\nfolder.manage_exportObject(id=’mycontent’,download=0)\n\nHope it helps.\n\nGood luck,\nCornel\n\n--\nCornel Nitu\nEau de Web (http://www.eaudeweb.ro)\nClucerului 55, ap 7, 011364 Bucharest\nTel/fax: +40 21 222 1522, Mobile: +40 721 223 623\nJabber: cornel at jabber.eaudeweb.ro, Skype: nitucornel\n\n}}}
This is from [[Rusty Eliot|http://www.cafeconleche.org/slides/sd2004west/effectivexml/text11.html]]. Is this the way to go?
• Clarion University (PA) \n• Framingham State College (MA) \n• Indiana University at South Bend (IN) \n• Rutgers University at Camden (NJ) \n• Shippensburg University (PA) \n• SUNY-Fredonia (NY) \n• SUNY-Plattsburgh (NY) \n• Univeristy of Michigan at Flint (MI) \n• University of Wisconsin at River Falls (WI) \n• Worcester State College (MA)
[img[ /filestore/uploads/highered/FamilyShareHigherEd.png]]
!!! College Pays\n\n[img[/filestore/uploads/learning/educationcollegewagesunemployment.png]]\n\n[img[/filestore/uploads/learning/education-as-investment.jpg]]\n\n\n
<<<\n!!!legacy system\n\n<jargon> A computer system or application program which continues to be used because of the cost of replacing or redesigning it and often despite its poor competitiveness and compatibility with modern equivalents. The implication is that the system is large, monolithic and difficult to modify.\n\nIf legacy software only runs on antiquated hardware the cost of maintaining this may eventually outweigh the cost of replacing both the software and hardware unless some form of emulation or backward compatibility allows the software to run on new hardware.\n\n<<<
>Collaboration brings people together, usually at a set place and/or time. It focuses them on a common objective. It emphasizes conformity and uniformity, orchestration and management, pulling as one" and "all singing from the same songbook." These are precisely the trends we are seeing erode in the future of on-demand and as-needed learning. \n\n>people often talk as though the alternative to collaboration is working completely on one's own. But this is not true. We still have to communicate and interact. But we can do so while remaining independent and autonomous. This mode of working together is called 'cooperation'. Online learning of the future will be based around a cooperative model, not a collaborative one.
Research and theory in cognitive science have shown that there may be several kinds of knowledge. four major categories of knowledge based on a taxonomy of learning outcomes (Anderson et al., 2001): \n\n1. FACTUAL, \n2. CONCEPTUAL, \n3.PROCEDURAL,AND \n4.METACOGNITIVE. \n\nThe first two types factual and conceptual, constitute knowledge of what,and the last two type, procedural and metacognitive ”constitute knowledge of how to. Similarly, factual and procedural knowledge constitute low level knowledge whereas conceptual and metacognitive constitute high level knowledge. \n\n!!!1. Factual knowledge \nFactual knowledge consists of the basic elements students must know to be acquainted with a discipline or solve problems in it. It includes knowledge of terminology and specific facts. For example, within an adventure game, students may learn that China is in Asia, or from the instructions of a game, students may learn that start-up disk refers to a 3.5-inch square disk that fits in a disk drive. /Subtype/\nExamples Factual Knowledge -discrete, isolated content elements Knowledge of terminology Technical vocabulary Knowledge of specific details and elements Ten biggest cities in the world \n\n!!!2. Conceptual knowledge \nConceptual knowledge consists of the interrelations among the basic elements within a larger structure than enable them to function together(Anderson et al., 2001, p. 29). It includes knowledge of categories, principles, and models. For example, students may learn principles such as add s to make a noun plural from a word game, or students may form a mental model of how a word process or works.\n\nhttp://www.scribd.com/doc/14554355/Knowledge-Types-Revised
<<tagCloud protected systemConfig excludeSearch excludeLists excludeTimeline>>\n\n{{floatLeft{[[Contents By Creation Date]] }}} {{floatLeft{[[Contents By Title]]}}} {{floatLeft{[[Tiddlers by Tag]]}}}
Type the text for 'book quiz'
!!!Problem\nWe have access to this but you won't find it because it depups it\n\n"Cerebellar ataxia: pathophysiology and rehabilitation" (available through ASP)\n \n''Use google scholar to check against''
/***\nThis tiddler is a special status tiddler. It is a DTML script that interrogates Zope about the status of your tiddlers. The variables below are dynamic and this tiddler is reloaded when you login. Editing this tiddler through ZiddlyWiki will break your ZiddlyWiki. (If you need to make modifications, edit it in the ZMI)\n***/\n//{{{\nif(typeof document.zw == "undefined") var zw = {};\nzw.loggedIn = false;\nzw.anonEdit = false;\nzw.isAdmin = false;\nzw.latestTiddler = 149074344032;\nzw.username = 'Anonymous User';\nconfig.options.txtUserName = 'Anonymous User';\nzw.serverUrl = "http://kennison.name/work/notes";\nversion.extensions.ZiddlyWiki = '1';\nzw.tiddlerList = {\n"SiteSubtitle": "893.27582.25108.27528" ,"SiteTitle": "893.27581.40443.42427" ,"GettingStarted": "892.63082.60525.59801" ,"PageTemplate": "905.56516.58415.10257" ,"ViewTemplate": "896.60308.2409.52804" ,"OptionsPanel": "892.63235.9657.20138" ,"StyleSheet": "905.56516.31020.61764" ,"ColorPalette": "898.7088.22099.63590" ,"StyleSheetColors": "892.52688.26738.31914" ,"StyleSheetLayout": "912.38696.54173.1092" ,"Mets Records": "893.27901.64349.9949" ,"DefaultTiddlers": "893.65002.7422.3447" ,"Grant Ideas": "892.58892.7501.39611" ,"Mets Record From Eprints": "898.30131.5379.1245" ,"Dublin Core Generator": "893.27911.44238.57582" ,"ToggleSideBarMacro": "892.63080.37744.11451" ,"MainMenu": "916.9594.56194.54869" ,"AdvancedOptions": "892.48826.64089.12458" ,"TaggerPlugin": "892.63082.16185.6434" ,"TopMenu": "909.1448.20655.43724" ,"AutoOpenTiddlersPlugin": "893.65010.15179.58009" ,"SinglePageModePlugin": "894.907.46370.41591" ,"TagCloudPlugin": "892.53214.40560.15820" ,"Tagcloud": "892.51644.63424.1979" ,"Contents": "916.3845.27953.1945" ,"contentFooter": "893.59410.53621.30941" ,"Web site to steal from": "932.48330.31216.50926" ,"DropDownMenuPlugin": "893.59335.64310.42410" ,"InlineTabsPlugin": "894.8311.40935.38741" ,"Tabbed Content": "912.40997.30409.40738" ,"InlineSlidersPlugin": "894.8312.39860.11673" ,"SystemLayout": "893.4792.11304.16093" ,"SystemTiddlers": "893.4795.3585.61883" ,"SystemOptions": "893.4794.40006.24268" ,"ShadowedPages": "893.4790.18394.358" ,"Contents By Creation Date": "909.25988.19881.58828" ,"Contents By Title": "908.25127.17736.50619" ,"Formatting Headings": "892.53589.14582.63300" ,"Formating Inline Text": "892.53590.29633.46899" ,"Formatting Lists": "892.53591.42262.27374" ,"Formatting Preformatted Text": "892.53605.37065.9591" ,"Formatting Tables": "892.53596.24938.19541" ,"Formatting - Inserting Images": "892.53598.7904.29201" ,"Formatting - Hyperlinks": "893.5132.27260.19370" ,"Formating - Adding CSS Class": "901.60799.35178.11110" ,"Formatting - Special Markers": "892.53604.6067.20514" ,"Macros": "892.63086.13939.65450" ,"GoogleGadget": "893.65009.2755.58709" ,"InlineJavascriptPlugin": "892.56010.41246.18688" ,"x_StyleSheet": "893.1928.25542.10069" ,"Script Test": "933.35923.15825.40004" ,"SimpleSearchPlugin": "894.8313.63898.8140" ,"Login": "892.63445.61926.56883" ,"Hawksworx": "893.2954.30723.65024" ,"Formatting Blockquotes": "893.4737.6399.24729" ,"BreadCrumbsPlugin": "893.65008.30281.20582" ,"System Configuration": "893.59333.2419.16486" ,"CookieJar": "896.21623.19770.20360" ,"ImportTiddlersPlugin": "893.53997.31366.19848" ,"NestedSlidersPlugin": "893.59332.206.32955" ,"DCTableOfContentsPlugin": "893.59324.7167.2321" ,"Table of Contents Example": "908.18109.38328.44885" ,"Inline Slider Example": "909.14952.24908.17527" ,"Drop Menu Test": "916.6851.16556.49493" ,"LightBox Example": "896.39863.48129.3822" ,"AccordianMenuPlugin": "893.59416.38930.28023" ,"AccordionMenuPluginDemo": "912.61091.2020.43212" ,"PartTiddlerPlugin": "893.60691.43417.45192" ,"Edit Tiddler Script": "908.25135.7357.819" ,"Web Templates": "929.11305.16451.26248" ,"IP Address Change": "915.12727.45146.24729" ,"Fedora": "895.14905.18796.14677" ,"eScidDoc": "898.14323.58937.46165" ,"FoXML": "898.54701.2876.46694" ,"Things to Read": "934.49264.15571.65041" ,"Repository Exchange": "897.50549.30612.40448" ,"Dublin Core with Qualifiers": "916.55491.9748.324" ,"InstantTimestampPlugin": "896.6964.34561.61815" ,"JsDoIt": "896.6971.45669.32273" ,"Color Chart": "896.7026.65016.12049" ,"Recursively chmod directories only": "896.7060.16609.12339" ,"ImportedTiddlers": "905.54622.50119.7441" ,"Eprints Notes": "896.27441.55425.48964" ,"Python XMLSchema": "896.37524.20569.49186" ,"Data Modeling Notation Summary": "897.50538.44068.64358" ,"QuizPlugin": "909.17436.41966.64034" ,"Book Quiz": "908.25133.45288.6485" ,"OKI Interface Definitions": "897.50564.61700.39645" ,"Australian Mets Records": "897.50541.17805.49578" ,"EAD DAO": "897.46400.3797.38912" ,"Micro Curation": "933.54236.64306.49868" ,"WCSU Colors": "899.49500.36690.50670" ,"Adding Value": "899.53571.33202.44748" ,"FormTiddlerPlugin": "899.53577.49314.41267" ,"MyFormTemplate": "905.8798.13593.18312" ,"MyForm": "905.8799.15842.7219" ,"MyForm2": "905.8929.44151.19780" ,"Error Messages from Zope Products Zope-2.12": "899.65425.15434.56985" ,"Zope Script": "900.2422.51535.42905" ,"Maki Script": "905.3447.61646.16708" ,"Basic Energy Science": "900.12584.56117.51046" ,"Peer Institutions": "900.21031.38895.48674" ,"Content Types": "900.22802.62122.45619" ,"Distance Education Notes": "913.44677.56560.57224" ,"Dspace Collections": "938.17880.26447.63658" ,"Higher Edcuation": "909.49445.14550.4232" ,"RDF at USCD": "901.60712.40589.15223" ,"Dublin Core Description Sets": "900.37201.31440.41966" ,"Industrial learning objects": "918.27705.65490.58214" ,"Scholars Site from Harvard": "900.38681.27255.27357" ,"Stuff That I need to get back": "900.54452.19362.22442" ,"Semantic Web Topic": "905.9160.50406.51370" ,"Vocabulary Links": "900.64510.5126.51319" ,"OAI Harvester": "924.40814.7023.46848" ,"Data Structures": "905.8681.18302.14711" ,"Library Mission": "901.10314.35227.47701" ,"Build or Buy": "901.25177.36676.42530" ,"What is librarianship": "907.8688.52027.2286" ,"Digital Reading": "926.37844.12325.30600" ,"Metadata Elsewhere": "907.23517.25880.35532" ,"Buckland and the Catalog": "901.38857.34980.12424" ,"What Metadata do you need": "901.39017.35745.16827" ,"Conversation": "905.1457.58545.11793" ,"URLs for items in an application": "901.43706.4304.50414" ,"Learning Mangement Systems": "906.38240.52195.2304" ,"ffmpeg Notes": "933.12495.36726.3208" ,"Library Futures": "909.13519.27247.55227" ,"RDF Journal Article": "901.60596.6089.11520" ,"Common Cartridge": "933.50078.43737.21947" ,"What's wrong with BlackBoard": "902.4059.39974.36078" ,"Micro Curation Video": "902.23719.5258.13550" ,"Z3950 connections": "902.26694.43906.10188" ,"Premis RDF": "902.26548.22899.23790" ,"What we should be working on": "903.1484.32521.25856" ,"III LDAP": "903.3143.58971.20548" ,"Perl Script": "903.3147.52163.4812" ,"GeoCoding Links": "905.14761.8697.63249" ,"Libraries as infrastructure": "912.17937.52577.32563" ,"Knowledge Networks": "904.824.60046.16401" ,"LMS": "904.48464.25708.44595" ,"Fedora APIs": "904.8214.51684.16384" ,"Swiss Document Site": "904.8871.24659.54562" ,"Resource-Method-Representation": "904.9545.18929.24046" ,"Common Rest Design Pattern": "904.11163.14632.11810" ,"Regular Expressions Card": "914.52767.38349.11724" ,"Science Story": "904.18264.34630.33228" ,"Information Seeking Research": "904.31102.43934.7560" ,"Technology Use Survey": "904.48816.18455.44083" ,"Pedogogy in online learning": "918.27701.41390.19848" ,"Geocoding": "908.28047.18215.35037" ,"CAO Geognames": "909.21849.39760.29764" ,"Build Python with a shared library": "904.58923.29234.48435" ,"Maki Issues": "905.27578.49468.170" ,"ContentDM": "905.5643.46514.7458" ,"Distance Ed Links": "921.11680.45839.47752" ,"Atom Notes": "905.56548.30354.42803" ,"CMIS": "950.4971.34557.24951" ,"Taxonomies": "905.53402.39187.54323" ,"System Model Information Flow": "905.53409.9835.46779" ,"What learners want": "922.26831.41933.50824" ,"Dreyfus Model of skill acquistion": "909.63293.50426.65006" ,"Making a dent in the universe": "905.53489.43162.33621" ,"Discover, Gather, Create, Share": "950.3479.32466.47684" ,"Managing Information": "910.16581.35443.3959" ,"Design Constraints": "905.56038.41748.30020" ,"Simple AJAX example": "905.56429.64936.51490" ,"Beyond Search": "905.62036.55824.42342" ,"Information Design": "905.62061.25684.35345" ,"The Value of Structured Content": "922.26799.655.45994" ,"Architect, construction worker,": "911.63280.34823.29952" ,"Personal Learning Environments": "937.25418.35531.36864" ,"What libraries do": "906.18370.57192.57344" ,"SKOS": "912.10711.55664.31197" ,"Types of Materials in the Archive": "906.21012.58228.5717" ,"Sakai Modules": "906.38204.34885.2833" ,"Skeletonz": "906.37429.27066.31914" ,"Duties that have to be done to have a web presence": "938.9289.1063.2321" ,"Webdav or AtomPub": "906.41321.30474.22818" ,"Sakai 3": "906.41454.25386.4710" ,"OLAT and eLML": "906.41475.7620.11349" ,"Open Adaptor Framework": "906.41476.51759.9676" ,"REST Implementation": "906.42613.6357.32477" ,"Mime types we need to handle": "906.42640.30104.44305" ,"Learning Design Lens": "922.59639.44571.7936" ,"Ideas from TiddlyWeb": "906.51540.37157.44561" ,"A matter of Culture": "906.55500.11357.13380" ,"Learners and the new LMS": "922.26794.35930.55654" ,"Spelling Correction": "907.7482.31096.53742" ,"eBook Notes": "909.62031.28778.57992" ,"Aquisition Models": "910.57264.25871.29849" ,"Dublin Core Goups or sets": "907.24858.56011.21333" ,"Terminology": "907.63677.44044.39065" ,"Simple Record vs Linked entities through relationships": "907.23523.27350.60928" ,"FRBR and Linked Library Data": "907.24335.37314.5700" ,"Breaking up the catalog record": "909.49021.41818.13704" ,"Local Metadata": "907.28897.20542.44970" ,"Micro Curation Service": "925.18314.44662.55313" ,"CDL Merrit Object System": "907.28986.28393.58487" ,"Digital Library Areas of Study": "907.34760.43794.2184" ,"Federated Search": "907.36590.53030.62839" ,"Pazpar2 from library home page": "907.39222.62359.19421" ,"CIDOC-CRM Model": "907.39326.19480.3959" ,"Things an application has to do": "907.45153.22106.60876" ,"Things that make up an application": "907.45187.50922.52087" ,"Department of Defense Metadata Standard": "907.50784.18110.47667" ,"Citations and HistCite": "907.53721.30075.6946" ,"Application Parts": "910.6258.45981.39526" ,"Technology Audiences": "910.7856.13283.23927" ,"Store metadata in attributes": "907.56487.51062.29337" ,"Europeana": "909.48011.53996.59016" ,"What are libraries for?": "937.33013.23782.18875" ,"Information Uncertainty": "908.3982.34776.50688" ,"Dimensions of Cultures": "908.3582.57427.64580" ,"CAO Notes": "940.39504.16835.35379" ,"Creating authorities": "908.10705.37878.43110" ,"11 February 2011": "908.13691.65090.23278" ,"TiddlyWiki Bookmarklet": "908.14000.41299.60859" ,"Putting XML in a tiddler": "950.19169.35127.13243" ,"Citation Standards": "913.21608.48736.10837" ,"Tiddlers by Tag": "934.43623.11192.36642" ,"book quiz": "908.25135.41080.50449" ,"For Each Notes": "908.25153.25348.58538" ,"Color Palettes": "931.25984.53315.33331" ,"Biblio Entry": "908.25198.30180.47223" ,"Bibliography": "928.49428.28419.34457" ,"Bib Display": "936.65215.37075.50158" ,"TiddlyWiki Reference Sites": "909.20566.47062.29934" ,"Information systems": "908.29668.12475.32238" ,"State Budget": "908.30147.61882.25975" ,"Open Access Publishing": "914.22278.41113.50483" ,"Tiddler HTML Storage Format": "908.32762.11657.65058" ,"How to access data and slices from tiddlers (google group link)": "908.32764.32900.14779" ,"Tiddlywiki and HTML5": "908.33727.58278.34252" ,"Dublin Core as Linked Data": "908.34019.22728.52292" ,"Copac Linked Data and EAD": "908.34020.18217.5973" ,"My TiddlyWiki Stylesheet edits": "908.38570.62486.19285" ,"Is this going to be libraries?": "910.15508.14399.46950" ,"Video in the Classroom": "910.15189.42768.18585" ,"This I Believe": "924.40890.34286.40328" ,"Why things don't change": "909.3003.11994.48315" ,"No Undergrads, No Tenure, No Departments": "909.3012.46359.33843" ,"Higher Education and Students": "922.26829.45805.23483" ,"Higher Education": "909.3122.31123.23159" ,"What information technology can do": "909.5688.56628.4130" ,"CSS Transparancy": "909.10416.40116.47616" ,"Entity Store": "913.20147.14018.58316" ,"Zebra": "909.11635.25298.33655" ,"XML Editor": "909.14784.48882.28876" ,"Making linked data": "909.17620.35671.13038" ,"Tiered Reference": "909.20566.17024.62378" ,"&quot;Things&quot; in EAD": "909.21966.8838.51985" ,"LC call number regular expression": "909.22002.43536.29030" ,"Semantic Web for the Working Ontologist": "909.22981.21244.39884" ,"Regular Expression to test for valid UTF-8": "909.28750.11326.14830" ,"Innovation": "909.30370.23839.16435" ,"Bibmaker Notes": "909.30631.61776.6502" ,"Semantic Data Models": "909.31628.34247.16759" ,"Application vs. Tool": "909.33479.8025.40311" ,"Library Future": "911.21629.49481.2833" ,"Scientists and Peer Review": "909.38921.28370.54784" ,"Provost Search": "909.39433.16171.43264" ,"Data Rules": "909.40876.5478.30003" ,"What students search for": "909.42106.50765.59938" ,"MODS": "909.48011.15598.25668" ,"Behavioral Sustainability": "909.49016.12081.57497" ,"Mods Ontolology": "909.49157.16854.20121" ,"Data Overload": "909.57993.21854.27511" ,"Facets": "909.58972.31587.30190" ,"Work Environment": "909.63442.53006.10069" ,"Apathy": "912.41000.35303.40533" ,"Scratch": "924.36751.62819.16742" ,"MODS Editor": "910.9566.30651.4471" ,"21 things we wont' see in education by 2020": "921.15546.16226.51268" ,"Teaching Web Design": "926.27766.52235.46540" ,"Digital Scholarship Lab": "910.13700.12837.1041" ,"Sharable playlists for media": "929.22714.19339.59528" ,"Normal Person and a Developer": "910.15244.3073.63317" ,"Critical Thinking": "910.16471.48787.4829" ,"Sense Making People": "910.16544.36124.48981" ,"Information Interaction": "917.27302.9593.9813" ,"Social Indexing": "937.48493.60647.28006" ,"Daniel Russel": "910.16854.2251.41437" ,"Four Types of Knowledge": "910.18077.13179.58214" ,"ToDo": "910.18118.11035.43571" ,"Vim rc file": "910.25453.25748.58333" ,"Python Modules I'm Using": "910.33640.11415.1382" ,"MyExperiment": "910.52923.26023.50312" ,"Acquisitions Notes": "913.47614.15704.64187" ,"Leadership Styles": "925.57465.50158.30532" ,"What we should be doing": "911.1212.13743.10427" ,"Sense Making": "911.13221.11622.38809" ,"Angular Javascript Framework": "911.52199.21721.1689" ,"Intelligent Content": "922.26798.4816.50995" ,"Flow not substance": "912.6269.24333.42752" ,"Topic Map Data Model": "912.6498.50219.58077" ,"Why create structured documents and data descriptions": "922.26799.22757.3379" ,"To Do": "912.7019.2241.47121" ,"Topic Map Links": "937.32479.37070.3822" ,"Topic Maps and RDF": "912.8134.2123.36539" ,"Sam Oh Presentation": "912.8499.50083.3225" ,"FRBR Level 1 Example": "913.23008.8817.35754" ,"Topic Map Elements": "912.9546.3363.59101" ,"Information Management": "912.16751.1483.50107" ,"Ontologies, RDF and Topic Maps": "912.17940.2634.60910" ,"What are Universities for?": "917.62155.11527.2235" ,"Ordinary Users and Topic Maps": "920.25300.54739.61405" ,"XHTML-5": "925.17095.20762.64085" ,"Embed CGI output in a tiddler": "938.18669.61841.30532" ,"Technology Research News": "913.43464.20010.43008" ,"XML representation of RDF": "913.13305.11533.45329" ,"Grokkable RDF Is Transformable": "913.16124.44361.63095" ,"Citation Notes": "917.302.9736.58828" ,"DataCite Metadata": "913.21624.44429.51370" ,"Embed html src in tiddler": "938.18701.23262.63266" ,"Definition of Software": "913.24496.6245.3840" ,"Exposing Compound Objects for Repositories": "913.25862.11039.4915" ,"Page-Turnners": "913.32130.27503.38980" ,"Javascript handler for links": "913.44857.503.64768" ,"Context not just Content": "922.26799.45909.44680" ,"Open Academics": "917.60679.35159.26282" ,"Code4LIb Seattle": "914.11096.48879.33501" ,"Reference List": "914.26978.48708.29218" ,"Relational, Hierarchial, and Graph DB": "914.31234.59281.36898" ,"Innovation in Education": "914.38286.54838.41130" ,"Michael Wesch": "914.40052.52619.34474" ,"What is programming": "914.52613.35038.18466" ,"Roles for Ontologies": "914.59700.60186.42035" ,"What we're trying to do": "927.9786.50939.23876" ,"Tiled Images": "915.3127.12476.44800" ,"Information Use": "932.6253.61221.15138" ,"Academically Adrift": "915.20541.18514.49510" ,"$10,000 Education": "940.18973.4795.9045" ,"Job an UNC": "915.43642.11670.33416" ,"US News Online": "915.44637.15178.54323" ,"Notes from Donald Clark's &quot;Plan B&quot;": "916.4880.9776.51012" ,"Python Functions": "916.5367.1316.61986" ,"Inline Frame": "930.20592.32257.62446" ,"Humanities Research Infrastructure": "918.23955.33510.44868" ,"Badges and Certifications": "916.8130.54170.204" ,"Webdav Test": "930.6458.9825.53026" ,"Research Areas": "916.38160.62584.39355" ,"Omeka Notes": "930.58419.20711.48827" ,"How to teach some one about baseball": "916.49969.47456.51643" ,"What Librarians Do": "916.55713.46006.41369" ,"National Transportation Library Metadadata Reference": "917.209.22448.58862" ,"Library's are screwed": "917.2756.61302.44219" ,"Human interface with data": "917.5729.42867.43042" ,"Cost of Higher Education": "917.7075.52515.64392" ,"Fedora at Penn State": "917.20426.62527.7219" ,"Information Seeking Behavior": "917.27335.55437.33041" ,"What's more expensive than college": "917.27347.13758.13875" ,"Pain in Life": "917.37662.37326.15837" ,"What it means to know something": "917.60672.1610.25480" ,"Future of the University": "917.61921.48582.15940" ,"Library and the University": "917.62163.63532.15445" ,"Network Pedagogy": "917.62296.11979.32921" ,"Disrupting the University": "937.60539.18515.2525" ,"Thinking in the future notes": "923.57271.27564.52923" ,"Personal Learning Environments 2": "918.792.2017.33314" ,"E-learning Business": "918.822.49437.45363" ,"From Teaching to Learning": "922.26851.13926.27648" ,"Undergraduate Education": "918.13819.36225.33501" ,"Work here at Haas": "918.10945.45276.45175" ,"Learning Outcomes": "918.10970.54248.42564" ,"John Holt": "918.13526.39413.20821" ,"Tacit Knowledge": "918.13586.55773.11485" ,"PHD Thesis Layout": "918.22265.34595.31539" ,"Cloud Computing": "918.23952.32058.14062" ,"Knowledge Organization System": "918.26495.9116.56814" ,"Catch Phrases": "922.26824.36107.14336" ,"Integrative Learning": "918.27716.39242.56473" ,"What Students Want": "918.48000.11474.8960" ,"Libraries and Problems": "918.56779.27911.28945" ,"Business Models": "926.20714.5727.6434" ,"Curation": "919.1456.8058.27033" ,"What it means to teach": "919.11336.47493.3925" ,"Dspace Notes": "919.8869.51240.62276" ,"Data Skills": "919.11394.55649.2560" ,"Pazpar Question": "919.11425.31078.56490" ,"Online Learning Breakdown": "919.44549.24100.15598" ,"Schema Org Notes": "928.49439.13015.25958" ,"Your can't afford to bad at digital": "920.25596.29153.14557" ,"Topic Maps model": "920.28168.25282.16076" ,"High Impact Learning": "925.51723.49981.45721" ,"Assesment and Accreditation": "920.59890.16358.9932" ,"School": "921.15608.44766.46301" ,"Strategy": "920.59889.31186.29440" ,"Classes": "920.59893.3946.16110" ,"Duplication Theory of Education": "920.59900.3636.31897" ,"Future of HIgher Education": "950.17450.45461.3822" ,"Information Literacy Objectives": "932.6244.36398.38348" ,"Knowledge Development": "922.26827.9187.50278" ,"Library as Producer": "921.23342.53196.18073" ,"Learning XrX": "921.25602.25172.47718" ,"Video Rates": "936.26305.9409.16554" ,"Video for IE": "921.43518.7956.23074" ,"Distance Ed Topics": "921.53217.20865.51968" ,"Best Practices": "921.63410.29698.27562" ,"How Learning Works": "922.27986.5763.21896" ,"Legacy Collections": "921.65117.3274.256" ,"Heutagogy": "922.8043.63169.36454" ,"Web Strategy": "926.27952.61240.55654" ,"Michael Dula": "922.10541.20033.53452" ,"MOVING FROM PEDAGOGY TO ANDRAGOGY": "922.12394.52563.443" ,"Send gist to distance ed": "922.21974.11142.9181" ,"XML Overview from University of Montreal": "922.23563.39734.15564" ,"Online Education": "922.25073.24010.45704" ,"Open Educational Resources": "922.26822.1042.37120" ,"Being Taught": "922.27975.16959.22323" ,"Online Manifesto": "922.27963.23904.30310" ,"Teaching for Learning": "922.28009.57816.51763" ,"Common Characteristics of emerging universities": "922.28014.57052.62771" ,"Learning Enivronments": "922.28026.26351.8874" ,"Online learning assesment": "922.34922.26210.46830" ,"Autonomy": "926.37911.14311.54135" ,"Innovation Free Zone": "922.56736.2992.64000" ,"Thinking about what the University needs to do": "922.57158.44811.38673" ,"What is Instructional Desgin": "922.59695.47604.13772" ,"Values at the core of education": "922.61021.25174.11349" ,"Roles of Learners and Teachers": "926.14835.6432.55978" ,"Process of Learning": "923.4226.60579.16759" ,"Overestimating MOOCs": "925.51729.50845.18773" ,"There's a vendor for that": "923.7113.34532.22954" ,"About Topic Maps": "930.40847.303.45977" ,"What. We do": "923.17342.38959.2304" ,"Productivity in Higher Education": "923.24581.35156.28330" ,"Shank and Cognitive Processes": "923.27271.7796.56473" ,"Why use RDF over SQL": "923.30239.2016.59187" ,"Course Design": "926.26597.43444.45312" ,"Open Goodness": "923.44777.26571.33706" ,"Sort this out": "923.44801.30343.24320" ,"Competency Wheel": "923.46132.26470.20275" ,"Students in College": "923.47182.9423.51950" ,"What is college for?": "923.52198.44078.32546" ,"HTML5 Xhtml Doctype": "925.17094.55357.47377" ,"University Future": "924.9132.42930.2952" ,"Aspect Ratios and Bitrates": "933.1451.36111.53128" ,"HTML5 Video Player": "924.10779.9453.33365" ,"Out of pocket costs": "924.11868.49051.20497" ,"Teach a Man to Fish": "924.19506.2812.5512" ,"Machine Guided Learning": "932.22250.26775.12834" ,"Software Architecture": "924.29294.46322.57719" ,"Effective Learning Techniques": "924.38026.26088.42001" ,"CSS Column widths in EMs": "933.7002.24164.21930" ,"Serials Project": "924.41216.15483.33860" ,"Knewton": "924.43754.29688.47189" ,"Difference Between Online and In Class": "924.53654.39641.7918" ,"Difference between Us and REAL universities": "924.53655.49733.14438" ,"Teaching Online": "924.58193.34004.51046" ,"Learning InfoGraphic": "928.49406.5785.47837" ,"CoolURL Don't Change": "929.2887.65452.65160" ,"Learning about knowledge management": "925.8497.31192.58709" ,"Meta Learning": "925.9835.35375.33092" ,"Transformative Pedagogy": "925.11225.56926.23586" ,"RDFa Doctype": "933.55916.1893.43724" ,"RDF Links": "925.19091.5951.51814" ,"Capturing Data from Learners": "928.49625.21779.11025" ,"Education in Florida": "925.22807.61772.35857" ,"What is Neoliberalism": "925.25711.45866.47018" ,"Model at Penn State": "951.9547.58731.55296" ,"VPN": "925.28656.48363.59204" ,"OJS Notes": "925.31393.9637.41301" ,"Learning Systems Stack": "925.32783.16125.12919" ,"Direct Assement": "925.40200.11659.29900" ,"What are universities for?": "925.51605.6617.16281" ,"Changing models of from teaching to learning": "929.1148.40502.16861" ,"Changes in the way that courses are created": "925.51751.50284.35225" ,"Student Dashboard App": "925.51775.27717.20309" ,"Zope Recovery": "925.51841.42316.9164" ,"Traditional Brand Value": "925.54436.30222.50585" ,"Higher Educaiton White Paper": "925.54616.41892.52514" ,"Degree Compass": "925.57427.58731.45858" ,"McKensey Report": "925.57468.50012.18295" ,"Tuning": "925.57666.50205.32256" ,"Bologna Process": "925.58817.2534.53094" ,"Business Model": "925.58844.45085.25600" ,"Support Services": "938.9296.55860.32256" ,"Unbundling Higher Education": "926.12018.52846.56183" ,"Living with disruption": "926.12042.21170.3157" ,"Quality in Education": "926.14902.23104.3669" ,"Activity Mapping": "926.16339.56107.57361" ,"About Instructional Design": "926.26577.50162.47633" ,"Ed Tech Entrepanoirs": "926.26542.51873.20838" ,"Cynefin Network": "926.28121.26834.12339" ,"Hyperconnected World": "926.33557.59393.12424" ,"Student Success": "930.51065.46774.46165" ,"What we need": "926.33865.60608.18807" ,"Components of a Learning Center": "926.37947.9167.60825" ,"Relying on Venders": "926.37952.37846.61422" ,"Bertrand Russels Rules": "926.47998.16419.52087" ,"Reality of Undergraduates": "926.52249.37240.19097" ,"From Consumption to Creation": "926.63629.38604.47923" ,"Generative Learning": "926.65068.20314.37256" ,"Practical University": "926.63788.48686.46728" ,"Example Library Floor Plan": "927.1202.31254.11622" ,"North East Fedora Group": "927.7413.9449.17186" ,"Progressive and Traditional Views of Education": "927.9780.16150.2969" ,"Librarian Job Descriptions": "927.12681.56137.58231" ,"Classification and Ontologies": "927.17080.52811.57719" ,"Digital Culture": "950.3474.56403.45038" ,"Affinity Spaces": "930.7925.47985.27733" ,"Propgram or be Programmed": "927.31343.4007.36795" ,"Media Server": "927.31730.15230.43912" ,"Role of Librarians": "928.29162.53628.35191" ,"To Big to Know": "928.29174.23942.64017" ,"Good Description": "928.38026.11436.5393" ,"Innovator": "928.39491.51657.36659" ,"Library Relevancy": "928.42155.39480.25873" ,"Library System Function": "928.43773.54771.21469" ,"Archives linked data": "928.45266.10912.546" ,"Disruptive Technologies": "928.49627.23891.19694" ,"Resouce Based Learning": "928.49774.57330.44049" ,"WCSU Enrollment": "929.1150.5758.57446" ,"Story Centered Curriculum": "929.9739.9699.50636" ,"Vision is Important": "929.11320.9340.23091" ,"Think about Tools": "929.11324.43046.37000" ,"Ediucational Change": "929.28611.61930.39918" ,"The Moon": "929.29978.54951.0" ,"RDA Notes": "929.38616.58728.22203" ,"Equella Notes": "929.60686.30933.54169" ,"Strategic Planning Notes": "931.19847.47774.29184" ,"Bookmarks": "929.61427.8338.12817" ,"Joe's Content Strategy": "930.4664.39481.31061" ,"Efficency and Effectivness": "931.20376.27422.28928" ,"Network Admin Notes": "930.9427.29250.38604" ,"Online Learning Components": "930.7655.2667.60672" ,"Training and Learning Architecture": "930.7952.17170.8908" ,"Basic Event Delegation": "930.9080.52355.7509" ,"NPR Archictecture": "930.16614.16531.23005" ,"Web of Trust": "930.19063.49860.64477" ,"Science 2.0": "930.20570.36495.62395" ,"From Data to Knowledge": "950.17798.8636.37137" ,"The Sad Truth": "930.24848.8370.33297" ,"Map of History": "930.25193.51983.21555" ,"Program of be Programmed": "932.560.2234.20753" ,"Video Encoding Profiles": "932.20728.58425.1860" ,"Job Description Additions": "930.37889.28694.2389" ,"When to use topic maps or rdf": "933.57562.38078.12663" ,"Topic Maps and Information Architecture": "930.41035.23366.43093" ,"Credit Hours": "930.52161.12248.49544" ,"Campfires in Cyberspace": "930.55009.48434.53521" ,"Mideval Classroom": "949.47199.18863.63470" ,"Education and Technology": "930.59812.55030.19985" ,"Flat Design Notes": "930.64285.19533.4044" ,"Sematic CMS": "931.1260.49019.65297" ,"Universal Design for Learning": "934.43491.46327.27682" ,"Faculty Thoughts about other resources": "931.24195.37228.52036" ,"Web Colors": "931.15783.57261.30327" ,"Motivation": "931.20407.53165.34560" ,"What is the University's Content Strategy": "931.24210.57596.63709" ,"Best Google Fonts": "931.34599.783.40021" ,"Erik Deval Outlines HE problems": "931.37198.53937.27033" ,"Is Money Ball Still Relevant": "931.64300.24075.62071" ,"Criticism of Compentency Based Education": "932.405.40760.47138" ,"Articulation and Transfer": "932.433.41432.60416" ,"Schema.org Types": "932.695.22227.14080" ,"Privitazation of the University": "932.2015.63149.26402" ,"Collaboration vs Cooperation": "932.2129.15607.31044" ,"JISC Site for Digital Literacy": "932.3227.11756.7560" ,"Scholarly Habitude": "932.3228.11008.44817" ,"Taks Freshman have Trouble with": "932.6209.50734.836" ,"INSTRUCTIONAL CONTENT, MOOCS AND COMPETITION": "932.7927.20752.60177" ,"Number of Graduates": "932.9056.22703.49578" ,"Rhizomatic Learning": "932.9120.31136.19080" ,"About Learning Objects": "932.11016.3521.20138" ,"The Future of Learning": "932.11838.54148.26009" ,"Media Core Key": "932.20703.35247.49664" ,"Increasing Productivity in Education": "932.22254.18253.55005" ,"Resource Oriented Computing White Paper": "932.23342.17840.50909" ,"Technology and Change": "938.19042.47498.24132" ,"Semantic HTML": "932.27594.65532.5307" ,"Mod_Rewrite Notes": "932.29450.38294.21760" ,"Machine Readable Document Formats": "932.30652.41111.31453" ,"Family Share of Higher Education in Connecticut": "932.30959.18297.12748" ,"End of the Golden Age of Higher Education": "932.31001.48400.59596" ,"Unbundling of Higher Education": "934.43876.44717.64972" ,"Guidlines for Best Practice": "932.46550.19027.26572" ,"Librarians and Abundance": "935.12588.31114.39748" ,"Ontologies for Teaching and Learning": "932.46577.64562.41489" ,"Pedigogical Pattern Collector": "932.46632.10354.64204" ,"Flickr Sizes": "933.3045.22353.5597" ,"What we need to do": "932.56404.23391.24763" ,"HLS Notes": "933.4087.42766.49083" ,"ssh Notes": "933.15452.12034.21828" ,"Cognitive Acticvity": "933.27067.36148.22084" ,"Learning and Performance Support Center": "937.11122.63538.21026" ,"Content Controls": "933.29994.20934.21521" ,"Example Javascript Module": "933.35924.23298.15598" ,"Load XML": "933.40132.36190.17783" ,"Quote about Resources": "933.49861.15590.22033" ,"CIDOC Entities": "934.22021.22200.47462" ,"DART": "933.50085.61219.51438" ,"Repository at Oxford": "933.50128.21144.59682" ,"Archival Information Package": "933.50197.62140.54323" ,"From My Blackboard": "937.11021.53605.61320" ,"View of Topic Map Editor": "934.26411.46884.31778" ,"Hypermedia API from HTML": "933.56080.20207.64785" ,"Javascript Libraries and Links": "933.59940.17763.27682" ,"About Institutions and Vendors": "934.4622.49515.47786" ,"Modeling Learning Systems": "934.21869.15258.63197" ,"Director Search Notes": "934.32356.18763.33672" ,"Inside out Library": "938.41910.61696.11673" ,"Topic Maps and Dublin Core": "934.26401.54468.54664" ,"Topic Map Schema": "934.33238.731.33757" ,"Learning Ontologies": "934.43596.57762.32187" ,"Dual Layered MOOC": "934.43616.24124.54289" ,"Librarians Skills Book": "934.43810.53836.6434" ,"Just Some Quotes": "934.43870.63946.13704" ,"Basic Technical Model at Berkeley": "937.11106.20424.54016" ,"MasterKey Notes": "934.64192.36702.13994" ,"What We Do": "935.3748.62413.29696" ,"Eyedropper Tool for Mac": "935.3915.59360.39150" ,"Information Problems": "937.11036.19907.14472" ,"Insideout 2": "935.12604.26635.36949" ,"Resize file system on Castor": "935.41476.52467.59545" ,"RDF Item Description": "935.50338.64582.21333" ,"13 Ways": "935.52783.16228.13841" ,"What the University Does": "935.61490.7075.29644" ,"Knowledge Oraganization Concept Map": "935.61544.53196.55364" ,"Integrated Learning": "935.62880.34070.53435" ,"Instructional Content in Higher Education": "936.3243.19749.39970" ,"Missing Educational Software": "936.3253.46383.15547" ,"Open Learning Sites": "936.14827.62854.30583" ,"Product vs Process": "936.26237.41179.32614" ,"Metadata &amp; Semantics for Cultural Collections &amp; Applications": "936.33350.49625.17083" ,"Education vs. Learning": "936.33532.11178.45414" ,"What we are not doing": "936.33716.45379.26811" ,"Library as Commons": "937.962.60588.53845" ,"Scholarly Primatives": "937.2733.33971.1553" ,"Supporting Librarians": "937.10031.8502.7918" ,"Managing your own information": "937.11018.50407.42530" ,"Learning Resouce Metadata Initiative": "937.11139.9704.45568" ,"Ontologies Test": "938.13553.54193.18227" ,"21st Century Learning": "937.21545.41581.22732" ,"Which Investment": "937.28333.17965.55500" ,"Roles in an Application": "937.42724.26661.34542" ,"Effacacy": "937.48844.30293.6877" ,"Modern Library vs Traditional Library": "950.11572.5062.26965" };\n//}}}\n
<html>\n#666633\n#CCCC99\n#990033\n\n</html>
!!! Traditional Library\nWe've reached the end of the traditional library.The network and digital items (that contain information) are easier and more valued that traditional items (books, print journals, dvd, etc.) see (Buckland's automated library) and therefore the traditional jobs of reference, selection, access services, and cataloging are gone too.\n\n!!!Modern Library\nThe modern library (maybe the digital library) is where the contents are digital as well as the tools \n\n!!!Roles in the Modern Library\n\n* write code (code4lib) (programmer, scripter, batch file editor, etc [continuum from 1 to 10]);\n* model data that the code runs against (both logical and physical)\n* model the domain (ontologies, subject experts)\n* system administrator (linux and program installation)\n* systems integrator (help programs work with each other)\n* curate (interact with the world to find instances of the models)\n\n\nAll roles can bleed into each other and the top three are much harder to do than the last so there will be fewer of those positions
[[From the Dublin Core Group|http://dublincore.org/groups/citation/citstds.html]]\n\n[[Citations in Wikipedia| http://en.wikipedia.org/wiki/Wikipedia:CIT]]
Powered by [[ZiddlyWiki|http://ziddlywiki.com]]\n
You need to get information into the "records" about stuff that \n1. isrelevant to the container, and \n2. relevant to its contents, and \n3. relevant to its surroundings (the context and task of the reader)
[img[http://www.noisebetweenstations.com/personal/weblogs/images//2010/08/uxfieldsexplained.png]]
Collect and perserve or disseminate?
[[Sunshine Review|http://sunshinereview.org/index.php/Connecticut_state_budget]]\n\n[[from the Courant|http://articles.courant.com/2010-11-14/news/hc-op-mckinney-must-cut-state-spendin20101114_1_spending-cuts-state-spending-government-spending/2]]\n\n>In addition, Gov.-elect Malloy has a responsibility to taxpayers to negotiate further concessions from state employees to take effect July 1, when the current State Employees Bargaining Agent Coalition agreement expires. State employees did offer a concession package of $700 million under the 2009 agreement; however, our worsening economic and financial picture requires all stakeholders to do more.\n\n>Unlike the state's private sector, which lost 100,000 jobs during the recession, the public sector avoided layoffs by granting concessions. Still, state employee wages and benefits account for nearly 25 percent of total government spending (more than $4.5 billion annually), and further concessions must be part of any responsible proposal to eliminate our deficit. It is my hope that Gov.-elect Malloy will seek reasonable concessions from state employees that will make their benefits and wages more consistent with the private sector.\n\nIf they gave back $700 million in 2009 (how did they do that) we need to do 3 times that now. \n\n!!! Higher Education\n\n[[from CTmirror|http://www.ctmirror.org/story/11568/ed-and-malloy]]\n\n>The combined operating budgets of the University of Connecticut, Connecticut State University System, the dozen community colleges and the online Charter Oak State College is almost $2 billion, of which $652.2 million is paid for from the state's general fund in block grants.\n\n>"It's going to be difficult. We're going to have to wait and see how the numbers come back," said Richard Balducci, vice chairman of the Board of Trustees of the Connecticut State University System, unable to guarantee the freeze would remain in effect. The university system absorbed about a $13 million cut in state funding last year, and Malloy's proposal would trim another $17.6 million in the coming year.\n\n>Meanwhile, in-state tuition and fees increased by 239 percent at the community colleges, 284 percent at UConn and nearly 353 percent at CSUS.\n\n!!! Budget Summary\nIt's still a big document but [[here|http://www.ctmirror.org/sites/default/files/documents/Section%20B-%20Budget%20Summary.pdf]] you can see it all.
<<<\nBuilding web-applications is hard! Even the simplest hello world application will take you hours to set up and you have to know a lot about how many different pieces of technologies work together. Here is a quick inventory from the browser to the back end of what a typical web-application developer needs to know about: HTML, CSS, JavaScript, cookies, HTTP, URL encodings, Servlets, web-framework (i.e. web-work), authentication, threading, SQL, ObjectRelational mappers, DB Schema, RDMS, DB indexing. If you know all of that, than you have a good chance that after week of work, you can have a hello world application written which will allow the user to authenticate, and persist some data.\n<<<
[img[/filestore/uploads/repositories/CIDOC-CRM.gif]]\n\n>Actors (i.e. people, either individually or in groups) participate in Temporal Entities (e.g. events), which are affected by Physical Entities (i.e. material things) and Conceptual Objects (i.e. ideas and concepts), and occur at Places within certain Time -- Spans. Appellations (names) can be used to identify any of these entities, and Types can be used to classify them to the appropriate level of detail.
!!!Fedora Repository Service Interfaces \n\n!!!Management Service (API-M)\nIngest - XML-encoded object submission\nCreate - interactive object creation via API requests\nMaintain - interactive object modification via API requests\nValidate -- application of integrity rules to objects\nIdentify - generate unique object identifiers\nSecurity - authentication and access control\nPreserve - automatic content versioning and audit trail\nExport - XML-encoded object formats\n \n!!!Access Service (API-A and API-A-LITE)\nSearch - search repository for objects\nObject Reflection - what disseminations can the object provide?\nObject Dissemination - request a view of the object's content\n \n!!!OAI-PMH Provider Service\nOAI-DC records
Story based curriculum vs. Subject based curriculum\n\n!!! Where we are\n<<<\nProfessors talk. Students take notes. Then there is a test. Subjects are taught independently of each other in a strange smorgasbord approach that means graduates can barely remember what they learned the year before\n<<<\n\n<<<\nThe experience is passive, fragmented, unmotivated, and generally dull.\n<<<\n\n!!! SSC\n//Project Based//\n\n<<<\n On line courses should not be replicating existing courses which were meant to handle large numbers and not meant to nurture students as they actually produce something and naturally learn by doing. \n\nSocratic Arts has produced many on line full length masters degrees and even more short courses for various universities and corporations. These courses are always experiential in nature. They do not contain lectures or tests. However, they do require frequent deliverables from the students, and they emphasize teaching in the form of performance support provided by the course and mentoring provided, as needed, by the instructor to help a student to learn knowledge and skills as they are relevant to what he or she is doing.\n<<<\n\n!!!Faculty Roles\n<<<\nThe SCC calls for two types of mentors: learning coaches and subject-matter experts. A learning coach will motivate and channel the student in productive directions, helping the student to formulate strategies for assigned tasks and to identify opportunities for self-directed learning during the performance of a task. \n<<<\n\n!!!Authoring tools\n<<<\n* helps the author define a module structure with scenarios, tasks, deliverables, and learning resources, but not lectures, quizzes, and papers \n* helps the author build an interview-based guide with examples that helps authors think about what those pieces should look like\n* helps the author determine the deliverables to be produced by the student\n* helps determine the story that provides the context for those deliverables\n* helps determine sub tasks on the way to producing deliverable\n* helps the author create fictional documents that start the work\n* helps the author provide just in time help in the form of video experts\n* helps the author provide just in time help from existing web sites\n* helps the author provide just in time help in the form of a general plan of attack\n\nEmbedded in the tool are examples of all of these kinds of things, so that the author can use them as a guide as to what to create in the new course.\n\nThe tool itself helps the author to define an appropriate story of professional practice, including\n\n* a set of top-level goals and problems\n* a sequence of tasks necessary to achieve the goals and solve the problems\n* a set of prioritized performance objectives for each task. \n\nWith the story defined, the tool then helps the author create the many detailed components of the course, including\n\n* fictional documents for the course as a whole and for individual tasks\n* fictional messages assigning tasks, in the form of emails or video scripts\n* step-by-step guides for each task, with just enough detail to keep students on track\n* links and references to appropriate learning resources, both online and physical\n* embedded expert tips to address likely student mistakes at each step, in the form of texts or video scripts\n* checklists to enable students to self-check their task deliverables before submission\n* reflection questions for students to consider at the end of each task and of the course as a whole.\n\n[[Source - Roger Shank|http://educationoutrage.blogspot.com/2013/08/faculty-putting-their-existing-courses.html]]\n\n!!!Questions\n* At what scale can these things operate at?\n\n
[img[/filestore/uploads/innovation/disruptive-techologies.png]]
<<<\nJoshua Kim\nQuestion: What would be the single most impactful investment we could make in improving student learning by leveraging technology?\n\nOptions:\n\nA. Hire more instructional designers.\nB. Invest in advanced digital learning platforms.\nC. Develop institutional capabilities in learner-centric data analytics and assessment.\nD. Free up faculty time.\nE. None of the above - you supply an answer.\n\nWhich answer would you choose? Why?
!!! Things to look back up\n* citeproc.js and that guy's site ( http://gsl-nagoya-u.net/http/pub/ )\n* open bibliograhy\n* open citations\n* semantic publishing\n* Balisage\n* Dita for learning\n* XMLMind
* Does maki really need PyXML?\n\n* As of 2010-09-25 Maki had 924 downloads\n\n[[How to implement AtomPub|http://www.xml.com/lpt/a/1663]]\n\nThis is using rack (a ruby thing) but it is the same as WSGI\n\n{{{\ndef call(env)\n uri = path(env)\n case env['REQUEST_METHOD']\n when 'GET' then get(uri, env)\n when 'POST' then post(uri, env)\n when 'PUT' then put(uri, env)\n when 'DELETE' then delete(uri, env)\n end\nend\n\n# chop off the common prefix, leaving what we dispatch on\ndef path(env)\n env['REQUEST_URI'][@base.length .. -1]\nend\n\ndef get(uri, env)\n headers = {}\n type = nil\n case uri\n when '/'\n rep = VDC.new(@cloud).representation\n type = 'VDC'\n when %r{^/vnets/(.*)$}\n rep = get_vnet($1)\n type = 'VNet' if rep\n\n # ...lots more regexps elided...\n\n if (type)\n headers['Content-Type'] = "application/vnd.com.sun.cloud.#{type}+json"\n [ 200, headers, rep ]\n else\n headers['Content-Type'] = "text/plain"\n [ 404, headers, "Can't fetch #{uri}" ]\n end\nend\n}}}\n
from ben o'steen\n\nfrom oaipmhscraper import OAIPMHScraper\noaipmh = OAIPMHScraper("dspace","http://library.wcsu.edu/dspace-oai/request", "oai:library.wcsu.edu:")\n\n!!!OAI Registries\n[[Illinois|http://gita.grainger.uiuc.edu/registry/]]\n[[OpenDOAR|http://www.opendoar.org/]]\n
<<<\n2012 will see recognition by colleges and universities that badges and certifications, where they may be created from the reverse engineering of a degree into courses and then into specific, measurable learning objectives of the courses, does not threaten the integrity of a degree, undermine the contributions of curriculum committees, or devalue the expertise of faculty. Instead, the ability to measure and recognize (e.g. badges and certifications) the accomplishment of learning objectives within courses can be a way to motivate students, provide for a more flexible path towards degree attainment, create more revenue opportunities with stand-alone certificate modules, reinvent the course as a more cost effective way to attain a degree than the cobbling together of certificates, and (for all these reasons) better demonstrate to employers and the public of the worth of a college degree.\n<<<
<html>\n<ins>This is something that I added!</ins><br />\n<s>Use this tag for corrected text.</s><br />\n<del>Use this tag for text that has been deleted</del><br />\n\n<embed src="http://kennison.name/var/retest" width="100%" height="100%" type="text/html" />\n</html>
> That functionality includes: selection (acquisitions and demand driven acquisitions (DDA)), print management (circulation, reserves, ILL, etc.), electronic management (licensing, tracking, etc.), digital asset management (IR functions), metadata management (cataloging, collaborative metadata management) and link resolution (OpenURL).
http://www.cdlib.org/cdlinfo/2010/05/21/webinar-of-merritt-repository-development/
<<<\n\n"Enough of this professionalization nonsense. Education != instruction - education, \n to quote the good Cardinal Newman, "is a higher word." \n \n We, faculty, establish the environment for education. Professional staff\n such as "learning designers" or "instructional designers" are extraneous\n and a drain on our precious few resources. Replacing tenure lines with\n an army of professionalized staff loaded with credentials alongside\n low-paid and necessarily subservient and contingent adjunct faculty is\n not the appropriate way forward. You are complicit with the destruction\n of higher education and the transformation of our institutions into the\n corporate university. Reject these efforts to redefine education into\n the instrumentalized system that you are already fully involved in.\n Enough!\n\n\n\nRead more: http://www.insidehighered.com/blogs/technology-and-learning/learning-designers-continuing-conversation#ixzz2ln5aPCmT \nInside Higher Ed \n<<<\n\n!!!Another point of view\n<<<\nAt many instituitons, the process of developing digital instructional materials still operates in a cottage-industry fashion; individual instructors with limited funds, incomplete skill sets, and insufficient incentives, bare most of the burden for course design and development. While service departments provide technical support and instructional guidance, they've made only a small dent in the instructional model, to date.\n<<<
[img[/filestore/uploads/webservices/npr_architecture_diagram.jpg]]
<<<\nEach of the four sections of the rubric is intended to get at a specific vital angle of the course's efficacy. The brief summary is as follows:\n\nSection 1, The Efficacy Goals: What are you trying to do?\nSection 2, The Evidence: Why should we believe you?\nSection 3, The Plan: How do you intend to achieve your efficacy goals?\nSection 4, Capacity: Do you, and those you depend on, have the knowledge, skills, and relationships to deliver the efficacy goals?\n<<<\n\n[[Phil Hill|http://mfeldstein.com/can-pearson-solve-rubrics-cube/]]\n\n[[At Pearson|http://efficacy.pearson.com/the-urgent-challenge/faq/]]
[[Setup doc from computer science department in Soton UK|http://id.ecs.soton.ac.uk/docs/]] This is pretty good and is on the file system. It has an ID service which redirects to either the //data// service (RDF) or the web service which is html.
ebrary example in consuls "Understanding fitness [electronic resource] : how exercise fuels health and fights disease " ''need to add more links''\n\nNotes ( lots from [[Eric Hellman|http://go-to-hellman.blogspot.com/]]\n<<<\n* In the print world circulating libraries made sense because the cost of lending was less than the cost of marginal production. \n\n* In thinking about what roles libraries will play when all books are e-books, I keep coming back to a conclusion that sounds odd at first: the prospective role of libraries will be entwined with that of piracy in the e-book ecosystem. While there are fundamental differences between e-book libraries and e-book pirates, there are important similarities. \n\n* Some people will be able to buy but others may not. Academic libraries ''subsidize'' publishing so students can have access. \n<<<\n\n[[University of Texas guide to ebooks:http://www.lib.utexas.edu/students/find/findebooks.html]]\n\n[[University of Texas sources for ebooks:http://www.lib.utexas.edu/books/etext.html]]\n\n[[Iowa list of ebook collections|http://www.lib.uiowa.edu/eresources/e-books.asp]]\n\nfrom [[GoToHellman|http://go-to-hellman.blogspot.com/2010/12/2010-summary-libraries-are-still.html]]\n<<<\nWe must recognize that "free and easy" access to digital content is not only not going to happen, it is the enemy of universal access. If librarians insist that the digital content be available to all their patrons wherever they are, they will lose that which I believe is more important still the chance to make it available at all. -Tim\n\nBut carried to its logical conclusion, the notion that libraries will be useful primarily as providers of inconvenience in service of ebook market segmentation will be hard for many to swallow. And it's not much of a business model for the libraries. So, "libraries are still screwed". -Eric\n\nthe library of the future gives you access to everything, but you can't leave the building, so be it -Tim (public libraries)\n<<<\n\n[[eBook economics for libraries|http://www.librarything.com/blogs/thingology/2009/10/ebook-economics-are-libraries-screwed/]]
[[from Mahemoff|http://tiddlywiki.mahemoff.com/html5.html]]
[[eco4r|http://www.eco4r.org]] looks very promising.\n\n[[Their data model|http://trac.eco4r.org/trac/eco4r/wiki/DataModel]]
[[from College for America|http://www.google.com/url?sa=t&rct=j&q=college%20for%20america%20snhu%20120%20competencies&source=web&cd=2&cad=rja&ved=0CDUQFjAB&url=http%3A%2F%2Fwww.cael.org%2Fpdfs%2F2012-Conference%2FCollege-for-America.pptx&ei=8gdfUbfuEOnD4AP9gYHIBg&usg=AFQjCNEbuaWv5op30jRw6mX83DXTMTGlnQ]]\n\n[img[/filestore/uploads/students/student-dashboard-app.png]]\n\n<<<\nThe CBE movement offers a radical possibility: that traditional higher education may lose its monopoly on delivery models. If we can say with certainty what constitutes learning and how we know for sure that students have mastered that learning, we should then be much less concerned with how a student gets there. \n<<<
<<<\nTeach the history of baseball, beginning with Abner Doubleday and the impact of cricket and imperialism. Have a test.\n\nStarting with the Negro leagues and the early barnstorming teams, assign students to memorize facts and figures about each player. Have a test.\n\nRank the class on who did well on the first two tests, and allow these students to memorize even more statistics about baseball players. Make sure to give equal time to players in Japan and the Dominican Republic. Send the students who didn’t do as well to spend time with a lesser teacher, but assign them similar work, just over a longer time frame. Have a test.\n\nSometime in the future, do a field trip and go to a baseball game. Make sure no one has a good time.\n\nIf there’s time, let kids throw a baseball around during recess.\n\nObviously, there are plenty of kids (and adults) who know far more about baseball than anyone could imagine knowing. And none of them learned it this way.\n<<<\nSeth Godin
'''Fedora defines four types of Fedora objects'''\n* data objects: containers for content - the 'usual' type of Fedora object in a repository\n* content models: containers for content models that describe the characteristics of one or more data objects\n* service definitions: containers that list service calls which can be used with objects conforming to a particular content model\n* service deployments: a container for service deployment bindings used to implement service calls\n\nThis is kind of interesting and has me thinking of how you do this. In Zope, containment is powerful. \n\nData Objects (the things people want) are types of content models (who's properties can be looked up). which then have interfaces (what methods they have) and who implements those interfaces. \n\n>The Fedora community has identified three prominent constructional content modelling patterns: simple, compound and atomistic.\n\n> * simple data objects contain a single content-bearing datastream\n> * compound data objects contain multiple content-bearing datastreams in a single object\n> * an atomistic (also called complex) object has one or more 'child' objects each normally bearing a single content-bearing datastream. All these child objects are linked by a single 'parent' object which is able to identify them and express any relationship (for instance ordering) between them.\n\n[[notes came from this page|https://wiki.duraspace.org/display/hydra/Don%27t+call+it+a+%27content+model%27%21]]\n
> Fairly soon, virtually everyone will have a screen and an Internet connection. In that world, argues futurist Marina Gorbis, the big divide will be "the motivational divide" - who has the self-motivation, grit and persistence to take advantage of all the free or cheap online tools to create, collaborate and learn. \n\nThe quote below is about //political knowledge// but the same could be said about any are of knowledge \n\n>under conditions of enhanced consumer choice, the knowledge gap between more and less motivated citizen widens. In short, when it comes to the richness of political knowledge, the rich are getting richer and the poor are getting poorer"\n\nSo it's not a difference is ''access'' but a difference in ''motivation'' !\nThe first quote is from Thomas Friedman. Here is a [[post from a guy who read that post|http://mindfulstew.wordpress.com/2013/12/08/why-value-education-when-i-have-everything-i-need/]] but is wondering about the motivation of his students when they have every thing they need. \n\nThe idea is that the ''motivational divide" replaces the ''digital divide''!. It not the rich who will enhierit the world but the ''motivated''.\n
!!!Parts\n* Storage using a REST interface (can use any kind of storage)\n* Domain Objects (FRBR entities, whatever)\n** have attributes (enforce the range of values )[need to be predicates]\n** have relations (these act like methods on objects, (property handlers)[also a predicate]\n* Implementers for those objects (What do implementers do?)\n** Create instances of domain objects\n** Find instances meeting criteria\n** Retrieve instances by unique identifier\n** Provide UI snippets for all of the above:\n** search/lookup forms\n** field edit/display snippets\n** "add new" forms\n* Predicates for search \n** you will need to map for different granularity of search \n** the query just tells us what you want not how to do it (separation of query and implementation)\n!!! Can we do this all only using XML?\n'''Definition of serialization:''' in computer science, in the context of data storage and transmission, serialization is the process of converting a data structure or object into a sequence of bits so that it can be stored in a file, a memory buffer, or transmitted across a network connection link to be "resurrected" later in ...\n!!! Digital Object creation, presentation, archive\nAt North Texas I think it is \n* creation (scanning and metadata, catalogin)\n* bagit (move to achive)\n* archive ingest (of bagit)\n* push to presentation (using bagit)\n!!! How can I integrate both XML apps with apps that need more logic ?\n* will xquery and dbxml replace python and Zope?\n\n!!!Old Thinking\nI'm just catching up with some of this thinking that's old but I think still relevant ([[RIPP|http://www.zope.org/Members/roeder/ripp/ripp?pp=1]])\n\n!!!Parts of Zope\n[img[/filestore/uploads/stacks/zope.png]]
[[How does this relate to learning acessment? |http://en.wikipedia.org/wiki/Dreyfus_model_of_skill_acquisition]]\n\n!!!1. Novice\n"rigid adherence to taught rules or plans"\nno exercise of "discretionary judgment"\n!!!2. Advanced beginner\nlimited "situational perception"\nall aspects of work treated separately with equal importance\n!!!3. Competent\n"coping with crowdedness" (multiple activities, accumulation of information)\nsome perception of actions in relation to goals\ndeliberate planning\nformulates routines\n!!!4. Proficient\nholistic view of situation\nprioritizes importance of aspects\n"perceives deviations from the normal pattern"\nemploys maxims for guidance, with meanings that adapt to the situation at hand\n!!!5. Expert\ntranscends reliance on rules, guidelines, and maxims\n"intuitive grasp of situations based on deep, tacit understanding"\nhas "vision of what is possible"\nuses "analytical approaches" in new situations or in case of problems
My Tiddly Wiki Notes Site
{{{\n<sizes canblog="1" canprint="1" candownload="1">\n <size label="Square" width="75" height="75" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_s.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/sq/" media="photo" />\n <size label="Large Square" width="150" height="150" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_q.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/q/" media="photo" />\n <size label="Thumbnail" width="100" height="75" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_t.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/t/" media="photo" />\n <size label="Small" width="240" height="180" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_m.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/s/" media="photo" />\n <size label="Small 320" width="320" height="240" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_n.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/n/" media="photo" />\n <size label="Medium" width="500" height="375" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/m/" media="photo" />\n <size label="Medium 640" width="640" height="480" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_z.jpg?zz=1" url="http://www.flickr.com/photos/stewart/567229075/sizes/z/" media="photo" />\n <size label="Medium 800" width="800" height="600" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_c.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/c/" media="photo" />\n <size label="Large" width="1024" height="768" source="http://farm2.staticflickr.com/1103/567229075_2cf8456f01_b.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/l/" media="photo" />\n <size label="Original" width="2400" height="1800" source="http://farm2.staticflickr.com/1103/567229075_6dc09dc6da_o.jpg" url="http://www.flickr.com/photos/stewart/567229075/sizes/o/" media="photo" />\n</sizes>\n}}}\n\nyoutube sizes\n92 -> 426x240\n 93 -> 640x360\n 94 -> 854x480\n 95 -> 1280x720\n 96 -> 1920x1080\n151 -> 128x72
[[XSPF dot org|http://xspf.org/]]\nAn XML based playlist for media. There is a flash player that will handle audio but I don't know about video. The playlist gets downloaded and the "player" for that device gets opened. You don't have to build a web page with entry for each item. Build a web page that embeds the player and the playlist\n\n[[JW Flash Player for flash and h.264|http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12534/video-delivery-http-pseudo-streaming]]\n\n[[Hosted Media Service (one example)|http://www.gravlab.com/standard.html]]\n\n[[Http Live Streaming Page|http://www.priyaontech.com/2011/11/generating-http-live-streaming-content-for-ios-devices/]]
<html>\n<iframe \n seamless="seamless" \n width="90%"\n height="150%" \n border="0" \n scrolling="no"\n src="http://kennison.name/maki/examples/files.xml"></iframe>\n</html>
<<<\nProvision of Course and teaching materials\nThe first generation of distance education institutions placed great emphasis on the creation of excellent teaching\nresources, in first print and later multi-media formats. This was in contrast (both in terms of time and money\nexpended and resulting quality) to resources committed to classroom teaching. Typically classroom teachers, with\nthe aid of a textbook or two and a set of informal lecture notes (now augmented by Powerpoint slides) produce\nindividualized courseware, of variable quality and little or no editing or distribution. Both classroom and distance\neducation courses are most often built upon the unbundled provision of a text book, created by commercial\npublishers and paid for, usually in addition to course fees, by the student.\nThe provision and widespread distribution of Open Educational Resources (OER) is beginning to disrupt both\nclassroom and distance education models of courseware production and distribution. At present there are thousands\nof full post-secondary course modules available as OER online and tens of thousands of lesson modules in\nrepositories such as the MIT-sponsored OCWC site, Rice University’s Connexions, the Saylor Foundation,\nMERLOT, the Washington State Open Course Library, ARIADNE in Europe, and many others (Hylen, 2007). In\naddition, the US Department of Labor has made $2 billion available over four years for training initiatives that must\nuse an open access license (Department of Labor, 2011). Access to this rapidly growing font of usable learning\nmaterials has already increased the quantity and quality of informal learning. Seely (2011) notes that OER have had\n“the most visible impact” on individual learning however increasingly classes of students are using OER materials.\nThe MIT OCW site alone has more than one million unique visitors a month. According to their statistics, 45% are\nself-learners and nearly 42% are students at other universities (MIT, 2011). These numbers do not count other OER\nsites or even MIT OCW mirror sites. Tufts University estimates that more than half of their visitors are independent\nlearners (Lee, Albright, O’Leary, et al., 2008). As the quantity and quality of OER increases, they will become even\nmore readily used by faculty. Already there is a large movement towards the use of open textbooks, primarily driven\nby their growing costs (US Government Accountability Office, 2005; Allen, 2010; Beshears, 2010).\n<<<
!!! Enterprise platform for //Personalized// Learning\n\n[img[/filestore/uploads/highered/academic-services.jpg]]\n\n>services once offered by schools — content delivery, assessment, credentialing, research, mentorship, affiliation and networking, job placement — will no longer be monopolized by them
2 | JUPR: Journal of Undergraduate Psychological Research, Vol. 1\n 9 | JUPR: Journal of Undergraduate Psychological Research, Vol. 2\n 18 | The American Hatter\n 23 | 1955 Danbury Flood Scrapbook\n 24 | David B. Stevens Cyphering Book\n 25 | Miscellaneous Photographs\n 3 | Immigration & Memory \n 27 | Pinkerton Detective Agency Danbury Fires Investigation Collection\n 28 | Ruth Alice Haas Papers \n 29 | Danbury Map (Westchester County), ca. 1860\n 30 | 1880s Danbury Bird's Eye Map\n 26 | George B. Hawley Collection\n 21 | 1856 Map of Danbury\n 42 | 1840s? Map of Danbury\n 43 | WCSU Centennial Interview Segments\n 44 | Stambler, Leah\n 46 | Veterans of Korea Oral Histories \n 47 | Veterans of Iraq War II Oral Histories \n 39 | Veterans of World War II Oral Histories\n 67 | 1858 Map of Danbury\n 69 | Plan of Danbury, 1867\n 38 | Cohort 1\n 70 | Stetson Hat, ca. 1910s\n 71 | Charles D. Garlick Letters\n 72 | Miscellaneous\n 73 | Furman selections from: New American Choral Music--Vol. III\n 74 | Furman Compilation\n 75 | 78 rpm Audiodisc\n 76 | Choir Festival 1967, 1967\n 78 | June Goodman Papers\n 77 | I Have a Dream - Microfilmed Scores\n 79 | Marjorie Echols Local Artists Collection, MS 035\n 82 | Stevens, Brian\n 83 | 2008 History and Non-Western Cultures\n 81 | Senior Writing Theses (2008-2)\n 20 | Senior Writing Theses (2007-1)\n 45 | Senior Writing Theses (2008-1)\n 84 | Walter Gordon Merritt Papers (MS 014)\n 16 | Henry L. Pike Locomotive Sketchbook, 1866\n 86 | Warner World War II Interviews\n 91 | Senior Writing Theses (2009-1)\n 88 | JUPR: Journal of Undergraduate Psychological Research, Vol. 3\n 89 | Howard Barlow Collection\n 90 | 2008 Social Sciences Journal\n 92 | Masters Thesis\n 12 | WCSU Photographs and Miscellanea, RG 008\n 93 | Senior Writing Theses (2009-2)\n
<script label="click here" title="mouseover tooltip text" key="X">\n /* javascript code goes here... */\n alert('you clicked on the link!');\n</script>
cf. [[TiddlyWiki.com|http://www.tiddlywiki.com/#EmbeddedImages]]\n{{{\n[img[title|filename]]\n[img[filename]]\n[img[title|filename][link]]\n[img[filename][link]]\n}}}
[img[/filestore/uploads/learning/lenses.png]]
[img[/filestore/uploads/highered/Competency_Wheel.png]]
[img[/filestore/uploads/learning/future-of-universtiy.png]]
>The former Saudi oil minister, Sheik Ahmed Zaki Yamani, once warned his OPEC colleagues something Putin should remember: The Stone Age didn't end because we ran out of stones. It ended because we invented bronze tools, which were more productive.
We don't need to worry about this except if the //edx's// of the world displace us. \n\n[img[/filestore/uploads/computing/cloud-computing.png]]
Work Notes\n
!!! Technology Needed\n* Application for display on tablet computer, application for display on smartphone\n* Live streaming audio, live streaming video, \n* recorded audio, recorded video, \n* software-based readers, \n* courses centralized into one student information system, \n* visual software, \n* online labs\n* Online access to bulletin boards, online simulations\n* Courses can be taken using the following: PC, Apple, Linux, Unix (and derivatives)\n!!!Student services\n* Online access to academic advising, \n* bookstore, \n* 24/7 tech support, \n* financial aid services, \n* digitized library, live librarian, \n* local area network, \n* mentoring, \n* live tutoring, \n* writing workshops, \n* career placement support\n!!!Digitized library \n* The percentage of a campus’s physical library digitized and available remotely to students, multiplied by the weight\n\n!!! Student Engagement\n* Collaborative assignments\n* Assessment survey\n* Exam Integrity\n* Class size\n
* With cron I just update the xml file using xmlstarlet\n\nNotes for Mike (music.mss.0070.xml is not valid) 2011-02-08\n\n!!! Adding a new Repository\n\nChecks on source file\n* What is the url of eadid pointing to?\n* Are they pointing to the DTD in the public header? If so the ead.dtd needs to be in that directory\n\nFiles you have to touch\n* update_indexes.sh\n* count.sh\n* index.tkl\n* document.xsl\n* search.xsl\n* ead2dc.xsl\n* add local file folder in zope at staff/ead/
Need better methodologies to \n* plan, \n* create, \n* classify, \n* manage, \n* localize, \n* publish, \n* deliver and \n* find content\n\nfrom:\nhttp://www.topicmaps.com/tm2008/gelb.pdf
!!! Foundations: Technology and Methodologies\n* Digital libraries: architectures and infrastructures\n* Metadata standards and protocols in digital library systems\n* Interoperability in digital libraries, data and information integration\n* Distributed and collaborative information spaces\n* Systems, algorithms, and models for digital preservation\n\n!!!Personalization in digital libraries\n* Information access: retrieval and browsing\n* Information organization\n* Information visualization\n* Multimedia information management and retrieval\n* Multilinguality in digital libraries\n* Knowledge organization and ontologies in digital libraries\n\n!!!Digital Humanities\n* Digital libraries in cultural heritage\n* Computational linguistics: text mining and retrieval\n* Organizational aspects of digital preservation\n* Information policy and legal aspects (e.g., copyright laws)\n* Social networks and networked information\n* Human factors in networked information\n* Scholarly primitives\n\n!!!Research Data\n* Architectures for large-scale data management (e.g., Grids, Clouds)\n* Cyberinfrastructures: architectures, operation and evolution\n* Collaborative information environments\n* Data mining and extraction of structure from networked information\n* Scientific data curation\n* Metadata for scientific data, data provenance\n* Services and workflows for scientific data\n* Data and knowledge management in virtual organizations\n\n!!!Applications and User Experience\n* Multi-national digital library federations (e.g., Europeana)\n* Digital Libraries in eGovernment, elearning, eHealth, eScience, ePublishing\n* Semantic Web and Linked Data\n* User studies for and evaluation of digital library systems and applications\n* Personal information management and personal digital libraries\n* Enterprise-scale knowledge and information management\n* User behavior and modeling\n* User mobility and context awareness in information access\n* User interfaces for digital libraries\n
>the need for administrators to be informed and prepared with strategic plans equal to foreseeable challenges
<<showtoc>>\n!Heading One\nand some text \n\n!!Heading Three \nBut nested between them \n\n!!Heading Two\nAnd some more text \n!Description\nThis macro will insert a table of contents reflecting the headings that are used in a tiddler and will be automatically updated when you make changes. Each item in the table of contents can be clicked on to jump to that heading. It can be used either inside of select tiddlers or inside a system wide template.\n\nA parameter can be used to show the table of contents of a seperate tiddler, &lt;<showtoc tiddlerTitle>&gt;\n\nIt will also place a link beside each header which will jump the screen to the top of the current tiddler. This will only be displayed if the current tiddler is using the &lt;<showtoc>&gt; macro.\n\nThe appearance of the table of contents and the link to jump to the top can be modified using CSS. An example of this is given below.\n\n!Usage\n!!Only in select tiddlers\nThe table of contents above is an example of how to use this macro in a tiddler. Just insert &lt;<showtoc>&gt; in a tiddler on a line by itself.\n\nIt can also display the table of contents of another tiddler by using the macro with a parameter, &lt;<showtoc tiddlerTitle>&gt;\n!!On every tiddler\nIt can also be used in a template to have it show on every tiddler. An example ViewTemplate is shown below.\n
[[Stephen Downes in 2001 talking about Learning Objects|http://www.irrodl.org/index.php/irrodl/article/view/32/378]]
>Uncertainty is the degree to which available choices or the outcomes of possible alternatives are free from constraints\n\nHow is this realated to \n\n* experience curve\n* learning curve\n* Improvement curve\n\n>William J. Paisley moved from information needs/uses toward strong guidelines for information system. He studied the theories of information-processing behavior that will generate propositions concerning channel selection; amount of seeking; effects on productivity of information quality, quantity, currency, and diversity; the role of motivational and personality factors, etc. He investigated a concentric conceptual framework for user research. In the framework, he places the information users at the centre of ten systems, which are:\nThe scientist within his culture.\nThe scientist within a political system.\nThe scientist within a membership group.\nThe scientist within a reference group.\nThe scientist within an invisible college.\nThe scientist within a formal organization.\nThe scientist within a work team.\nThe scientist within his own head.\nThe scientist within a legal/economical system.\nThe scientist within a formal.
<<search>><<closeAll>><<permaview>><<newTiddler>><<newJournal 'DD MMM YYYY'>><<slider chkSliderOptionsPanel OptionsPanel 'options »' 'Open options panel'>><<exportTiddlers>><<exportLink>><<importLink>><<login>>\n
I've never been a fan of this but I think it's worth a look if just for the citation import/export stuff. \n\n!!!Documentation\n* [[FDL Doc|https://wiki.dlib.indiana.edu/download/attachments/24288/DLFMODS_ImplementationGuidelines.pdf]]
>The librarians defined four levels of service as:\n* Level 1: directional and referral \n* Level 2: direct patrons to source (refer to librarian) \n* Level 3: show patron source and instruct in its use (refer to librarian)\n* Level 4: search for in-depth information (refer to librarian)
!!! This is just to show that it's easy to embed video\n<html>\n<p style="text-align:center;">\n <video id="ah-video" class="video-js vjs-default-skin" width="480" height="270" controls autoplay >\n <source src="http://archives.library.wcsu.edu/campusMap2/video/ah.mp4" type="video/mp4" />\n <source src="http://archives.library.wcsu.edu/campusMap2/video/ah.ogv" type="video/ogg" />\n <!-- fallback to Flash: -->\n <object width="480" height="270" type="application/x-shockwave-flash" data="http://archives.library.wcsu.edu/js/jwplayer/player.swf">\n <!-- Firefox uses the `data` attribute above, IE/Safari uses the param below -->\n <param name="movie" value="http://archives.library.wcsu.edu/js/jwplayer/player.swf" />\n <param name="flashvars" value="controlbar=over&amp;file=http://archives.library.wcsu.edu/campusMap2/video/ah.mp4&amp;autostart=true" />\n </object>\n </video>\n</p>\n</html>
* Digitization, digital reformatting, and digital library production\n * Digital preservation, curation, and data management\n * Repository services ([ScholarSphere](http://scholarsphere.psu.edu), [Hydra](http://projecthydra.org))\n * User experience, content strategy, and user services\n * Digital scholarship, digital humanities, and e-science services\n * Discovery, access, and accessibility strategies\n * Emerging technology strategies\n * IT infrastructure and platforms management and support\n * Software and web applications development\n * Libraries' website management and services\n * Service desk and workstation management\n * Multimedia technologies
[[Shifting the Emphasis from Teaching to Learning: Process-Based Assessment in Nurse Education|http://www.irrodl.org/index.php/irrodl/article/view/957/1856]]\n\nLearner-Centered Assessment on College Campuses LB2331 .H83 2000 \n\n>A key to this change is shifting the unit of analysis from blocks of information delivered through courses to something quite different, namely the development of the learner over time, inside and outside the classroom. That has implications for how we design courses, how we count faculty load, how we choose campus technologies, even how we define the curriculum.\n\n[[Mazur at Harvard|http://harvardmagazine.com/2012/03/twilight-of-the-lecture]]\n\n> teaching is mostly listening, and learning is mostly telling\n\n[img[filestore/uploads/learning/teaching2learning.png]]
<<<\nThe potential of resource-based learning environments (RBLEs) for instruction and learning is considerable. Whereas conventional instructional approaches address known learning goals using well-organized sequences, resources, and activities,// methods for supporting context-specific, user-centered learning// have been slow to develop. Increasingly, individuals evaluate vast numbers of digital resources located in expanding information repositories. [...] Digital information systems such as the Web continue to influence both the availability and use of resources (Quinlan, 1997). RBLEs enable teachers and learners to take advantage of these systems, expanding the resources they use to enhance the teaching and learning process. [...]Resources are media, people, places or ideas that have the potential to support learning. Resources are information assets data points organized by an individual or individuals to convey a message (Allee, 1997), (Hill & Hannafin, 2001: 38:)\n\nOne area in particular need of development for EPSS [Electronic Performance Support Systems] technology is the integration and use of resources. Resources have always been integral to training. Resource-based approaches extend the traditional use of available information and media by reusing and manipulating them to accommodate specific situational requirements. In EPSSs, resources are individual media (text, video, pictures, graphics, etc.) that have the potential to support performance. //Resources are organized sets of data combined by an expert or specialist to convey a message//, thus providing information related to a specific topic and/or task (Clark, 1998). [...] Resource-based approaches offer the potential for establishing situational relevance in a flexible development/delivery environment. They involve the identification and re-use (or adaptation) of existing resources to support varied, rather than only specific, training and learning needs. Hannafin, M.J., Hill, J. R., & McCarthy, J. (2002)\n<<<\n\nhttp://edutechwiki.unige.ch/en/Resource-based_learning
> * learner participation and creativity and * online identity formation,\n\nTalking about the system you have to \n\n* sketch context, the environment, and what you want to happen\n* these then get analyzed in to concepts, entities that independent of any particular system\n* these then have to mapped on to logical systems that might be best for managing the data and full filling the requirements\n* then an actual embodiment of those technologies needs to be selected
!!!Knowledge Was\n* curated\n* settled\n* scarce\n* orderly\n* discrete\n\n!!!Knowledge is\n* inclusive\n* unsettled\n* overwhelming\n* messy\n* linked\n\nWeinberger
<script label="edit a tiddler">\n var title=prompt("Enter a tiddler title");\n if (!title||!title.length) return; /* cancelled by user */\n story.displayTiddler(null,title,2);\n</script>
http://hoster.peermore.com/bags/tiddlywiki-reference/tiddlers.wiki
[[Interesting|http://code.google.com/p/library-callnumber-lc/wiki/Home]]\n\nNot from Google\n\n[[Call number map from Michigan|http://www.lib.umich.edu/browse/categories/index.php]]\n\n[[LC sort routines from UTA| http://rocky.uta.edu/doran/sortlc/]]
[img[/filestore/uploads/students/Freshman-Tasks.png]]\n\n[[Source: project info literacy, UW|http://projectinfolit.org/pdfs/PIL_2013_FreshmenStudy_FullReport.pdf]]\n\n<<<\nOur findings suggest many freshmen were overwhelmed with the first part of the research process - finding - and were often relieved when they had some sources in hand. But other problems inevitably arose for most of them. They soon found themselves struggling with reading, comprehending, evaluating, and applying the scholarly sources they had found. These were the higher order thinking skills necessary for college-level research.\n<<<
* [[Semantics for Humans 2010|http://www.slideshare.net/larsga/topic-maps-humanoriented-semantics]] Good for everybody to understand\n* http://www.infoloom.com/tmsample/pep4.htm (pepper intro)\n* [[Martian Example|[[Martian Example|http://antonypitts.com/TMMN/]]\n* [[Basic Example|http://tecfaetu.unige.ch/staf/staf-i/gorga/staf18/tm/xtm2html-ttypes.html]]\n* [[Entity Diagram|http://csc000.cscaustria.at/xtm/mapping_xtm_on_databases.html]]
<<<\n\nThis new media environment can be enormously disruptive to our current teaching methods and philosophies. As we increasingly move toward an environment of instant and infinite information, it becomes less important for students to know, memorize, or recall information, and more important for them to be able to find, sort, analyze, share, discuss, critique, and create information. They need to move from being simply knowledgeable to being knowledge-able.\n\n[[from|http://www.academiccommons.org/commons/essay/knowledgable-knowledge-able]]
[img[/filestore/uploads/instructional-design/what-can-be-modeled-2007.png]]\n\n
[img[/filestore/uploads/learning/Universal-Design-Learning.png]]\n\n[[Source Cast.org|http://www.cast.org/udl/index.html]]\n\n>three principles of Universal Design for Learning (UDL) and discusses how to apply these principles to the four curricular components (i.e., goals, instructional materials, instructional methods, and assessments). [[source|http://iris.peabody.vanderbilt.edu/module/udl/challenge/#content]]\n\nI think the above is a good way to instructional design models.\n\n[[What Angry Birds teaches us about UDL|http://chronicle.com/blogs/profhacker/what-can-angry-birds-teach-us-about-universal-design-for-instruction/42038]]\n\n[[Examples of UDL from UConn|http://www.facultyware.uconn.edu/UDI_examples.htm]]\n\n\n!!!Major Principals \nUID's guiding principles are based on the work of Chickering and Gamson (1987) and include: \n# creating welcoming classrooms;\n# determining the essential components of a course; \n# communicating clear expectations; \n# providing constructive feedback; \n# exploring the use of natural supports for learning, including technology, to enhance opportunities for all learners;\n# designing teaching methods that consider diverse learning styles, abilities, ways of knowing, and previous experience and background knowledge; \n# creating multiple ways for students to demonstrate their knowledge; and \n# promoting interaction among and between faculty and students (Fox, Hatfield, & Collins, 2003).\n\nWe are frequently asked,"then what d