wikid (wiki/data) jeffrey a. young oclc office of research [email protected] distributed service...

33
WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research [email protected] Distributed Service Registry Workshop Warwick, UK 14 July 2005

Upload: jasmine-robertson

Post on 28-Mar-2015

225 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

WikiD (Wiki/Data)

Jeffrey A. YoungOCLC Office of [email protected]

Distributed ServiceRegistry WorkshopWarwick, UK14 July 2005

Page 2: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

WikiD Overview

Ward Cunningham describes a wiki as "the simplest online database that could possibly work".

The cost of this simplicity is that wikis are generally limited to a single collection containing a single kind of record (viz. Wiki Markup Language records).

WikiD (Wiki/Data) extends the wiki model to support multiple collections containing arbitrary schemas of XML records with minimal additional complexity.

Page 3: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

What we’ll cover

Walkthrough of the conventional WikiPage creation process Walkthrough of the WikiD “Collection” creation process Discuss potential applications of WikiD Discuss the architecture of WikiD

Page 4: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Datademocracy

Page 5: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Click to edit this sandbox page

Page 6: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Create a reference to a new WikiPage

Click to saveChanges

Page 7: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

The ‘?’ indicates that the page

doesn’t exist yet. Click it to start the

page creation process

Page 8: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Type in some content according to the Wiki Markup

Language rules

Click to save changes

Side note: “Category” WikiNames are special

Page 9: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

The question mark is gone,

replaced with a hotlink to the

new page

Page 10: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Here is the Wiki Markup we entered,

rendered into HTML for display

Page 11: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

“Collection” WikiNames

Some WikiNames can have special meaning (e.g. WikiNames that begin with the word “Category”)• For our purposes, we don’t care how “Category”

WikiNames are special, only that they are treated differently by the WikiEngine

In the same spirit, WikiD treats WikiNames that start with the word “Collection” as special

Page 12: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

This is the WikiD sandbox page and

we’re going to edit it

Page 13: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

The “Collection” prefix is special. We’re going to

create a registry of open-source software projects

Click to save changes

Page 14: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

The sandbox page has been updated to reflect our change.

Click the ‘?’ to begin the collection creation process

Page 15: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Before we create the collection, note that

none of the listed XML Schemas suit our needs

So, click to add a new

schema

Page 16: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Let’s identify our new XML Schema

with the label: “software”

Page 17: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Give ourXML Schema

a title

Click “Create” to

submit

Now, list the

element names in our new

XML Schema

Page 18: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

What gets stored is an XML Schema document

generated from the list of elements we just entered

Page 19: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

We’re back to our collection creation form

with our new XML Schema now included in the list of available

XML Schemas

Create the

collection

Page 20: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

The ‘?’ is gone. We just created the collection, so our collection name

is now hotlinked

Page 21: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

This is the collection home page. It’s

time to add items to the collection.

Page 22: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Here are the element names from the XML Schema I just

created

Page 23: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

This is the collection home

page, with several items added

Page 24: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

This is the display for a single item in

the collection

Page 25: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

WikiD Features

Support for fielded searching (via SRW/U) Support for XML Schema crosswalks (via XSL) Support for custom HTML rendering (via XSL) Support for custom collection-level actions (via Java classes

and/or XSL) Support to dynamically interact with external collections

(e.g. OAI repositories, OPACS, OpenURL resolvers) Supports a variety of protocols for input/output

• OAI-PMH v2.0• SRW/U• OpenURL 1.0• RSS

Arbitrary URI resolution (via an embedded OpenURL 1.0 resolver)

Page 26: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

PearsDB

Engine

Filesystem

SRW/U Update

WikiD

OpenURL1.0

WebEdit

Servlets & Data Flows

Page 27: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

OpenURL 1.0 Resolver

A standard for performing context-sensitive “services” on “referents” (e.g. rendering of wiki markup records)

• http://alcme.oclc.org/openurl/docs/pdf/z39_88_2004.pdf Installation is configured to recognize wiki-type services

• display• edit• delete• etc.

For this application, my plan is to embed this in the WikiD code rather than run it as a sibling web-app

http://www.oclc.org/research/projects/openurl/default.htm

Page 28: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Wiki/OpenURL 1.0 Mapping

Identifier By ValueMetadata

By ReferenceMetadata

PrivateData

Referent info:sid/localhost:Wiki.Internal:FrontPage/Sub

ReferringEntity

http://localhost:8080/metawiki/info:sid/localhost:Wiki.Internal:FrontPage

Requester User ID(if authenticated)

Service Type action=edit

Resolver

Referrer http://localhost:8080/metawiki

Page 29: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Pears

A record-based database system http://www.oclc.org/research/software/pears/default.htm

Page 30: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

SRW/U

Search/Retrieve Web/URL Service A SOAP/REST search service standard

• http://www.loc.gov/z3950/agency/zing/srw/brief.html http://www.oclc.org/research/software/srw/default.htm

Page 31: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

Update

Update Web Service A database update web service standard created by the

SRW/U community• http://srw.cheshire3.org/docs/update/

Enhanced to support file system-based version control of documents

Page 32: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

WebEdit

A lightweight open-source web-based record editor Accepts HTML form submittals and transforms them into

XML documents that conform to a desired XML Schema Forwards the generated XML document to a corresponding

Update service

Page 33: WikiD (Wiki/Data) Jeffrey A. Young OCLC Office of Research jyoung@oclc.org Distributed Service Registry Workshop Warwick, UK 14 July 2005

WikiD

An lightweight wiki front-end to an OpenURL 1.0 resolver• This combination supports wiki-enhancements for managing

fielded data collections• http://outgoing.typepad.com/outgoing/2005/05/metawiki.html

doGet/doPost processing• Transforms a Wiki URL request into an OpenURL 1.0

ContextObject representation• Issues the ContextObject to the OpenURL resolver• Relays the resolver results back to the client