Content and Computer Platforms Week 3. Today’s goals Obtaining, describing, indexing content...

Post on 31-Dec-2015

213 views 0 download

Transcript of Content and Computer Platforms Week 3. Today’s goals Obtaining, describing, indexing content...

Content and Computer Platforms

Week 3

Today’s goals

• Obtaining, describing, indexing content– XML– Metadata

• Preparing for the installation of Dspace– Computers available– User names and passwords– Access

The Digital Library Content

• Essential elements for a digital library– Users– Content– Services

Content - requirements

• Store– Organize– Describe

• Find

• Deliver

Describing the content

• How to describe content– Metadata

• Machine readable description of anything

• What description– Machine readable requires standard descriptive

elements• Dublin Core (http://dublincore.org/)

– International standard– “a standard for cross-domain information resource description.”– 15 descriptive elements

• Other metadata schemes– IEEE-LOM

Metadata

• What does metadata look like?

• Metadata is data about data– Information about a resource, encoded in

the resource or associated with the resource.

• The language of metadata: XML– eXtensible Markup Language

XML

• XML is a markup language

• XML describes features

• There is no standard XML

• Use XML to create a resource type

• Separately develop software to interact with the data described by the XML codes.

Source: tutorial at w3school.com

XML rules

• Easy rules, but very strict• First line is the version and character

set used: – <?xml version="1.0" encoding="ISO-8859-1"?>

• The rest is user defined tags• Every tag has an opening and a closing

Element naming

• XML elements must follow these naming rules:– Names can contain letters, numbers, and other

characters– Names must not start with a number or

punctuation character– Names must not start with the letters xml (or XML

or Xml ..)– Names cannot contain spaces

Elements and attributes

• Use elements to describe data

• Use attributes to present information that is not part of the data– For example, the file type or some other

information that would be useful in processing the data, but is not part of the data.

Repeating elements

• Naming an element means it appears exactly once.

• Name+ means it appears one or more times

• Name* means it appears 0 or more times.

• Name? Means it appears 0 or one time.

Using XML - an exampleDefine the fields of a recipe collection:<?xml version="1.0" encoding="ISO-8859-1"?><recipe><recipe-title> </recipe-title><ingredient-list> <ingredient> <ingredient-amount> </ingredient-amount> <ingredient-name> </ingredient-name> </ingredient></ingredient-list><directions></directions></recipe> ISO 8859 is a character set.

See http://www.bbsinc.com/iso8859.html

Processing the XML data

• How do we know what to do with the information in an XML file?– Document Type Definition (DTD)

• Put in the same file as the data -- immediate reference

• Put a reference to an external description• Provides the definition of the legitimate content

for each element

Document Type Definition• <?xml version=“1.0”?>• <!DOCTYPE recipe [• <!ELEMENT recipe (recipe-title, ingredient,

directions)>• <!ELEMENT recipe-title (#PCDATA)>• <!ELEMENT ingredient-list (ingredient)*>• <!ELEMENT ingredient (ingredient-amount, ingredient-

name)>• <!ELEMENT ingredient-amount (#PCDATA)>• <!ELEMENT ingredient-name (#PCDATA)>• <!ELEMENT directions (#PCDATA)> ]>

Repeat 0 or more times

<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE recipe SYSTEM “recipe.dtd”><recipe><recipe-title> Meringue cookies</recipe-title><ingredient-list> <ingredient> <ingredient-amount>3 </ingredient-amount> <ingredient-name> egg whites</ingredient-name> </ingredient> <ingredient> <ingredient-amount> 1 cup</ingredient-amount> <ingredient-name> sugar</ingredient-name> </ingredient> <ingredient> <ingredient-amount>1 teaspoon </ingredient-amount> <ingredient-name> vanilla</ingredient-name> </ingredient> <ingredient> <ingredient-amount>2 cups </ingredient-amount> <ingredient-name>mini chocolate chips </ingredient-name> </ingredient></ingredient-list><directions>Beat the egg whites until stiff. Stir in sugar, then vanilla. Gently fold in chocolate

chips. Place in warm oven at 200 degrees for an hour. Alternatively, place in an oven at 350 degrees. Turn oven off and leave overnight.

</directions> </recipe>

Not the way that I want to see a recipe in a magazine!

What could we do with a large collection of such entries?

How would we get the information entered into a collection?

External reference to DTD

XML exercise

• Design an XML schema for an application of your choice. Keep it simple.

• Examples -- address book, TV program listing, DVD collection, …

Another example• A paper with content encoded with XML:

http://tecfaseed.unige.ch/staf18/modules/ePBL/uploads/proj3/paper81.xml

• First few lines:• <?xml version="1.0" encoding="ISO-8859-1"?>• <?xml-stylesheet href="ePBLpaper11.css" type="text/css"?>• <?xml-stylesheet href="ePBLpaper11.xsl" type="text/xsl"?>• <!DOCTYPE paper SYSTEM "ePBLpaper11.dtd">• <paper id="proj3">• <info>• <title>Standards E-learning and their possible support for a rich pedagogic approach in a• 'Integrated Learning' context</title>• <authors>• <author>• <firstname>Rodolophe</firstname>• <familyname>Borer</familyname>• <homepageurl>http://tecfa.unige.ch/perso/staf/borer/</homepageurl>• <email/>• </author>• </authors>

Vocabulary

• Given the need for processing, do you want free text or restricted entries?

• Free text gives more flexibility for the person making the entry

• Controlled vocabulary helps with– Consistent processing– Comparison between entries

• Controlled vocabulary limits– Options for what is said

Vocabulary example

• Recipe example– What text should be controlled?– What should be free text?

• Ingredients– Ingredient-amount– Ingredient-name– Should we revise how we coded ingredient

amount?

• Directions

Dublin Core

• Standard set of metadata fields for entries in digital libraries:– Title, creator, subject, description,

publisher, contributor, date, type, format, identifier, source, language, relation, coverage, rights

Dublin Core elementssee: http://dublincore.org/documents/dces/

• Title• Creator • Subject - C• Description• Publisher• Contributor• Date • Type - C

• Format - C• Identifier• Source• Language• Relation• Coverage - C

• Rights Rights Management information

Space, time, jurisdiction.

C = controlled vocabulary recommended.

Reference to related

resource

Standards RFC 3066,

ISO639

Unambiguous ID

Ex: collection, dataset, event, image

YYYY-MM-DD, ex.

Entity primarily responsible for making content of the resource

Entity making the resource available

Contributor to content of the resource

What is needed to display or operate the resource.

A Dspace example

• CITIDEL: http://what.csc.villanova.edu:18080/citiDelrepository/

IEEE - LOM

• Example of a specialized metadata scheme– Learning Object Metadata

• Specifically for collections of educational materials

• Includes all of Dublin Core• See http://projects.ischool.washington.edu/sasutton/IEEE1484.html

Computing systems

• Linux machines• Introduction to unix:

http://www.csc.villanova.edu/~lab/unix/• Machines are named dl01 through dl07• dl04, dl05, and dl07 are located in Mendel 289.

The others are across the hall in the information visualization laboratory

• Hand out login and password information• Go to the labs, form teams, login to your

machine, check out simple editor, etc.

Tonight

• Talked about the way that content is described.

• Saw one way that content gets into a DL.

• Became familiar with the computing resources available for our use.