Upload
silvia-laurel-beasley
View
212
Download
0
Tags:
Embed Size (px)
Citation preview
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”
Discovery
DeliveryContext
Identification LocationResolution
Retrieval
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 andGlobally Unique
The Handle System - Resolution
Global HandleRegistry
CNRI
100.army 100.navy
DTIC100.
IDF -DOI10.
LibraryOf Congress
loc.CMU
100.Airforce
Handle + policies = Community of practice
100.navy.navair/100344jjpResolves to (returns):
http://navair.pax.mil/training/object23.zip
LocalNaming
Authorities
ADL CORDRA Proposed FrameworkGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines
Registering a Content ObjectGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines2. “Publish” object by placing it in a repository
3. Register object by obtaining (or updating) a handle record and sending the object’s location and search metadata
1. Create Content (obtain handle optionally) e.g., 100.navy.navair/1002184jr
Registering a RepositoryGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines
1. Create Repository’s metadata (location, access procedures, authority, search services, etc.)
2. Register repository location by obtaining a handle for it and sending its metadata to the registry (probably a web form transaction)
Searching For An ObjectGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines
Object SearchService
1. Access search service and enter search metadata
2. Service searches object index
3. Service identifies and returns handles for “hits”
Retrieving An ObjectGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines
1. Client (you) sends a handle query to the Handle System. The query is sent to the appropriate local Handle Server.
2. Local Handle System looks up (resolves) the handle and returns the location of the object
3. Client directly requests the object from the location provided by the handle service. “get” request
Registry contains the location information for the object
Searching For RepositoriesGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines
Repository SearchService
1. Access search service and enter search criteria (e.g., show me all repositories or tell me about this one) – service returns results.
Locating A Specific RepositoryGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
JointMarines
Repository SearchService
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.
Registry contains the location information for the repository3. Client directly accesses the repository
through location provided by the handle service. access request
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 FrameworkGlobalHandleServer
@CNRI
DoD Local Handle Server @DTIC
ContentObject Registry
ContentObject Registry
ContentObject Metadata
Index
ContentObject Metadata
Index
RepositoryRegistry
RepositoryRegistry
RepositoryMetadata Index
RepositoryMetadata Index
Distributed RepositoriesArmy
Navy
Air Force
Joint
Marines Identifier System
Resolution System
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!