Dodds: SCORM and CORDRA

advertisement
CORDRA
Philip V.W. Dodds
March 2004
The “Problem Space”
• The SCORM framework specifies how to develop
and deploy content objects that can be shared and
contextualized to suit the needs of the learner
• SCORM provides the means to tag content for later
discovery and access in a distributed environment
BUT:
• SCORM is silent about how discovery and access is
to be implemented
Working Title
Content Object Repository
Discovery and Resolution Architecture
(or)
Content Object Repository
Discovery and Registration Architecture
“CORDRA”
ADL’s Approach
•
Articulate the high level requirements, policies and business
rules for instructional content repositories that constrain the
architecture such that it can be implemented consistently.
•
Identify and relate the most relevant technologies and
specifications that can be applied to the architecture (connect
the dots).
•
Define a framework on which a number of services may be
built (but without defining the implementation of such services).
•
Provide a model that can scale.
Assumptions Unique To ADL’s Community
•
Assumption 1: Developers of learning content want their content to be
found.
– Requirement: A means for discovering where content is available
•
Assumption 2: Most users and developers are not skilled at either
tagging content or expressing detailed queries.
– Requirement: Guidance and very simple interfaces for tagging content
are needed.
•
Assumption 3: Searchers of content have specific criteria in mind.
– Requirement: A means to relate search criteria based on context to
descriptions of specific content objects (e.g., mapping a skill definition to
an object that addresses that skill).
•
Assumption 4: Searchers of content often want only exactly what they
need.
– Requirement: A means to insure that discovered content is relevant,
accredited and authorized (among other properties) is required to assure
the delivery of appropriate content.
Assumptions (continued)
• Assumption 5: Forcing a rigid information, service and
protocol model won’t scale.
– Requirement: An approach is required that is low cost and easy to
implement and that allows voluntary support and adoption, and minimal
alteration of existing approaches.
• Assumption 6: The architecture must enable local policies
and business rules, not define them.
– Requirement: The means to institute and expose local business rules and
policies so they may be used or mapped to and from other systems.
• Assumption 7: We cannot foresee all of the services or
capabilities that will eventually be required.
– Requirement: An architecture is needed that will enable new services and
capabilities to be added without changing the underlying structure.
Discovery
• Two extremes of discovery
– Exact and/or thorough (e.g., library collection searching)
– What’s out there that might related (e.g., Google)
• Preferred Process:
–
–
–
–
Develop search criteria
Go to a master index of relevant repositories
Go to the appropriate repository
Discover what it has that is relevant
This suggests the value of a registry of repositories that “want” to
be found
CORDRA “Triangle”
Context
Delivery
Discovery
Identification
Retrieval
Resolution
Location
Resolution
• Identification of an object and knowing where it is are different
things
• The Handle System may help us:
“The Handle System has been designed from the start to serve as
a general-purpose naming service. It is designed to
accommodate very large numbers of entities and to allow
distributed administration over the public Internet. The Handle
System data model allows access control to be defined at the
level of each of the data values associated with a given handle.
Each handle can further define its own set of administrators that
are independent from the network or host administrator.”
-- from IETF RFC 3650
The Handle System
Handles are Persistent and
Globally Unique
The Handle System - Resolution
Global Handle
Registry
CNRI
Library
Of Congress
loc.
IDF -DOI
10.
Local
Naming
Authorities
100.army
Handle + policies =
Community of practice
100.navy.navair/100344jjp
Resolves to (returns):
http://navair.pax.mil/training/object23.zip
DTIC
100.
100.navy
CMU
100.Airforce
ADL CORDRA Proposed Framework
Global
Handle
Server
@CNRI
DoD Local Handle Server @DTIC
Repository
Metadata Index
Repository
Registry
Content
Object Registry
Content
Object Metadata
Index
Marines
Joint
Navy
Air Force
Army
Distributed Repositories
Registering a Content Object
Global
Handle
Server
@CNRI
DoD Local Handle Server @DTIC
Repository
Metadata Index
Marines
Repository
Registry
1. Create Content (obtain handle optionally)
e.g., 100.navy.navair/1002184jr
2. “Publish” object by
placing it in a repository
Navy
Content
Object Registry
Content
Object Metadata
Index
3. Register object by
obtaining (or updating) a
handle record and sending the
object’s location and search
metadata
Air Force
Army
Distributed Repositories
Joint
Registering a Repository
Global
Handle
Server
@CNRI
DoD Local Handle Server @DTIC
Repository
Metadata Index
Marines
Repository
Registry
Content
Object Registry
Content
Object Metadata
Index
2. Register repository location by obtaining
a handle for it and sending its metadata to the
registry (probably a web form transaction)
1. Create Repository’s metadata (location, access
procedures, authority, search services, etc.)
Navy
Air Force
Army
Distributed Repositories
Joint
Searching For An Object
1. Access search service and enter
search metadata
Global
Handle
Server
@CNRI
2. Service searches object index
3. Service identifies and returns
handles for “hits”
Object Search
Service
DoD Local Handle Server @DTIC
Repository
Metadata Index
Repository
Registry
Content
Object Registry
Content
Object Metadata
Index
Marines
Joint
Navy
Air Force
Army
Distributed Repositories
Retrieving An Object
1. Client (you) sends a handle query to the Handle System. The
query is sent to the appropriate local Handle Server.
Global
Handle
Server
@CNRI
2. Local Handle System looks up
(resolves) the handle and returns
the location of the object
DoD Local Handle Server @DTIC
Repository
Metadata Index
Marines
Repository
Registry
Content
Object Registry
3. Client directly requests the
object from the location provided
“get” request
by the handle service.
Content
Object Metadata
Index
Registry contains the location
information for the object
Joint
Navy
Air Force
Army
Distributed Repositories
Searching For Repositories
1. Access search service and enter
search criteria (e.g., show me all
repositories or tell me about this
one) – service returns results.
Repository
Search
Service
Repository
Metadata Index
Global
Handle
Server
@CNRI
DoD Local Handle Server @DTIC
Repository
Registry
Content
Object Registry
Content
Object Metadata
Index
Marines
Joint
Navy
Air Force
Army
Distributed Repositories
Locating A Specific Repository
1. Access search service and
request the handle of the desired
repository – service returns handle.
2. Client (you) sends a handle query for the repository to the
Handle System. The query is sent to the appropriate local
Handle Server which then returns the location of the repository.
Global
Handle
Server
@CNRI
Repository
Search
Service
DoD Local Handle Server @DTIC
Repository
Metadata Index
Repository
Registry
3. Client directly accesses the repository
through location provided by the handle
service.
Content
Object Registry
Content
Object Metadata
Index
Registry contains the location
information for the repository
access request
Joint
Marines
Navy
Air Force
Army
Distributed Repositories
Enabling Services
•
We need lots of services…
–
–
–
–
–
–
–
–
Policy enforcement
Resolution/retrieval
Authentication, authorization and auditing
Digital rights management
Security
Processing community specific business rules
“Smart” search/discovery
… many others
ADL CORDRA Proposed Framework
Global
Handle
Server
@CNRI
Resolution System
DoD Local Handle Server @DTIC
Repository
Metadata Index
Marines
Repository
Registry
Content
Object Registry
Content
Object Metadata
Index
Identifier System
Joint
Navy
Air Force
Army
Distributed Repositories
To Do List… to support the DoDI
• Define and review DTIC services (fund)
– Object and repository registries
– Object and repository metadata indices
– Search services and portals
• Define registry interface definition
• Create reference registry interface (code)
– Repository and object
• Define repository access policies
• Prototype key services
Thank you!
pdodds@rhassociates.com
Download