Resource vs. Source

Adam Mathes

Knowledge Representation and Formal Ontology Final Project
Graduation School of Library and Information Science
UIUC
April 2005

What is a resource?

But what is a resource?

What is a resource? (TBL's answer)

T. Berners-Lee
RFC 2396 - Uniform Resource Identifiers (URI): Generic Syntax

"A resource can be anything that has identity. Familiar examples include an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), and a collection of other resources. Not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a library can also be considered resources."

What is a resource? (TBL's answer part 2)

"The resource is the conceptual mapping to an entity or set of entities, not necessarily the entity which corresponds to that mapping at any particular instance in time. Thus, a resource can remain constant even when its content---the entities to which it currently corresponds---changes over time, provided that the conceptual mapping is not changed in the process."

But seriously, what is a resource?

W3C semantic web activity basically dodges this - resources are things that can be identified by a URI. "Things that have identity" doesn't tell us much.

But I don't want to talk about real life people that are identified by a URI/URL string, although perhaps what we discover here will apply or be related to those discussions as well.

Limiting this discussion to web resources - pages, sites, documents, web applications, web services.

Static Pages are (almost) Easy

Simplest case is a static page of HTML

Properties:

The world is not static

But many of the web resources we care about are not static pages

Is there such a thing as static?

Even static pages are often not really static

How current web applications work

a typical web application flow diagram

Technology to higher level abstraction

Moving away from current technology and implementation to what is fundamentally going on

Can we create a reasonable ontology for what's going on here?

Some things to distinguish

Resource from an "instance" of that resource

Instance is an access of a resource in a particular context

What is necessary to include in a context? (What is a context?)

Distinguish resources from the "sources" that comprise and inform that resource

Some things to consider about / worry about

Mixed and often contradictory or ambiguous vocabulary in this domain

What level of abstraction are we working on?

Questions to consider

What kind of question do we want to be able to answer?

Although, it may be useful to ontologize regardless of intended use just for a better understanding of this domain. (This as academia, after all.)

Some first attempts at an ontology

(Will indubitably have serious problems)

Resources are...

...things with identity?

...the higher level abstract thing that that a set of instances belongs to

...the conceptual mapping of a "concept" to a set of other entities (accesses, instances?)

...a resource may just have to a primitive abstract thing (like work)

Mappings, Context

corresponding to "program / display logic" part of original diagram

can we distinguish a resource from this mapping? (I think so)

Contexts

Instances

Instances are also sets of assertions

These instances are dependent on:

  1. the resource
  2. the context (that set of assertions)
  3. the mapping function (this may also change?)

A Visual Description

source vs resource

How do we determine identity of a resource?

Do resources intrinsically have identities?

If the sources change, we still have the same resource, says TBL (and me)

What if the mapping function changes?

Honestly, I'm not sure.

Is a resource dynamic or static?

r is a static resource iff

∀c ResourceAccess(r,c) = i

May need the concept of a valid domain of contexts for a resource

Source / resource relation

Does a source inform / effect a resource?
Does a resource depend on a source?

For resource r and source s
If ∃ c1 and c2 s.t. c1 and c2 are within the domain of r
and c1, c2 differ only in s value (or presence)
ResourceAccess(r, c1) = i1
ResourceAccess(r, c2) = i2
s.t i1 and i2 are not equal, then r depends on s / s informs r.

Informs(s, r)
Depends(r, s)

(Or maybe simplified to ∃ c s.t. s belongs to c and c is in the domain of r)

What we need of FOL

Problems

But what about...?

Questions