
Copyright © 2004-2007 by Sebastian Ryszard Kruk with contributions from (under the Corrib.org project):
Digital Enterprise Research Institute, National University of Ireland, Galway, Ireland
This work is licensed under a Creative
Commons License. This copyright applies to the Extensible Access Control (EAC) Ontology Speecification and accompanying documentation and does not
apply to JeromeDL data formats, ontology terms, or technology.
The EAC ontology is used at the bottom layer in JeromeDL. It is used to describe access controls to a digital objects repository.
NOTE: This section describes the status of this document at the time of its publication. Other documents may supersede this document.
Authors welcome suggestions on the EAC ontology and this document. Please send comments to the JeromeDL developers list; public archives are available. This document may be updated or added to based on implementation experience, but no commitment is made by the authors regarding future updates.
Modern digital library systems not only store bibliographic metadata but also an electronic representation of the content itself. Depending on its type, content typically follows some structure, e.g. we can decompose a book into chapters and provide individual descriptions for each chapter with information about re- lations between them. Including structural concepts in ontologies and using these concepts in metadata descriptions provides a universal layer for metadata and content retrieval. It allows to extend the structure description with new concepts, without violating the integrity of existing data. The application of ontologies for structural descriptions enables uniform access to structural and bibliographical information, and delivers new search and discovery possibilities, as described in Kruk et al.
For more information about JeromeDL, see the project website
The XML Namespace URI that MUST be used by implementations of this specification is:
An alphabetical index of EAC terms, by class (categories or types) and by property. All the terms are hyperlinked to their detailed description for quick reference.
Classes: Action, ActionAccess, ActionCreate, ActionModify, ActionRemove, Condition, ConditionType, License, LicensedEntity, LicensedResource, LicensedService, PropagationState, Rule,
Properties: allowsForAction, deniesForAction, hasCollectionOrder, hasCondition, hasConditionType, hasInheritedLicense, hasLicense, hasPropagationState, hasRule, isActive, isConjunctive, isDeniedFirst, sameAs,
It is important to understand that the EAC ontology as specified in this document is not a standard in the sense of ISO Standardisation, or that associated with W3C Process.
JeromeDL ontology depends heavily on W3C's standards work, specifically on XML, XML Namespaces, RDF, and OWL.
This specification contributes an ontology, "EAC Ontology", to the Semantic Web, specifying it using W3C's Resource Description Framework (RDF). As such, JeromeDL adopts by reference both a syntax (using XML), a data model (RDF graphs) and a mathematically grounded definition for the rules that underpin the RDF design.
EAC ontology introduces the following classes and properties.
URI: http://www.jeromedl.org/eac/0.1/Action
- Action is an abstract concept which allows to define basic actions identified within certain applications. In the case of REST services these would be the basic HTTP methods: access (GET), modification (POST), creation (PUT), and removal (DELETE). Each Action is computed as a conjunction or sum (depending on the value of the is conjunction property) of Condition s.
URI: http://www.jeromedl.org/eac/0.1/ActionAccess
- FORMER: http://www.jeromedl.org/structure#ActionAccess
URI: http://www.jeromedl.org/eac/0.1/ActionCreate
- FORMER: http://www.jeromedl.org/structure#ActionCreate
URI: http://www.jeromedl.org/eac/0.1/ActionModify
- FORMER: http://www.jeromedl.org/structure#ActionModify
URI: http://www.jeromedl.org/eac/0.1/ActionRemove
- FORMER: http://www.jeromedl.org/structure#ActionRemove
URI: http://www.jeromedl.org/eac/0.1/Condition
- Condition allows to define an atomic policy condition, which aggregates a number of Rule s. The result of computing the policy condition is a conjunc- tion of results of atomic rules. EAC Condition can be organized in hierarchical structures. It allows to define abstract policies which are conjunction of other policies.
URI: http://www.jeromedl.org/eac/0.1/License
- License is the most important concept in the EAC model. It aggregates positive (al lows for performing certain actions) and negative (denies for per- forming certain actions) conditions for each type of action. A single license can be assigned to many Licensed Entities. It is validated by the EAC engine (see Sec. 5) against conditions defined in the licenses for the actions to be performed on the given entity. The license can define whether the negative (deny first = true) or positive (deny first = false) constraints should be computed first.
URI: http://www.jeromedl.org/eac/0.1/LicensedEntity
Licensed Entity - Licensed Entity is an abstract concept of a resource (Licensed Resource ) or a service (Licensed Service ) to which a license can be applied. The Licensed Resources, following the aggregation capabilities of semantic digital libraries [5], allows to pass the license down to the sub-components of the given resource. The way in which the license is applied to sub-components, and in which it is computed for the resources and its sub-components, is defined by the Propagation State of the license.
URI: http://www.jeromedl.org/eac/0.1/LicensedResource
Licensed Resource - Represents all resources which can have licenses attached to them
URI: http://www.jeromedl.org/eac/0.1/LicensedService
Licensed Service - Represents services which can have a license attached to them. It is preferable that we use REST services for that matter.
URI: http://www.jeromedl.org/eac/0.1/PropagationState
Propagation State - Propagation State Identify how the license is applied to the Licensed Re- sources, and how it propagates to sub-components of the given resource. Pos- sible states include: applying to the give resource only (Resource Only ), to the resource and only direct sub-components (With Children ), or to the resource and any sub-components (With Descendants ); it is also possible to apply the license to the direct (Only Children ) or all (Only Descendants ) sub-components, but not the the resource itself.
URI: http://www.jeromedl.org/eac/0.1/Rule
- Rule defines an atomic rule, which computed against give resource and within certain context returns boolean value, e.g., IP network address range, a part of a social network, maximum usage count.
URI: http://www.jeromedl.org/eac/0.1/allowsForAction
- FORMER: http://www.jeromedl.org/structure#allowAction
URI: http://www.jeromedl.org/eac/0.1/deniesForAction
- FORMER: http://www.jeromedl.org/structure#denyAction
URI: http://www.jeromedl.org/eac/0.1/hasCollectionOrder
- Defines the position at which the EAC Condition is hold in the hierarchy of conditions tree (in fact it tells the ordering number between peer EAC conditions)
URI: http://www.jeromedl.org/eac/0.1/hasCondition
- FORMER: http://www.jeromedl.org/structure#hasProtectionDefinition
URI: http://www.jeromedl.org/eac/0.1/hasConditionType
- FORMER: http://www.jeromedl.org/structure#drmType
URI: http://www.jeromedl.org/eac/0.1/hasInheritedLicense
- Binds sub-resource in aggregation view to the license inherited from the upper resource
URI: http://www.jeromedl.org/eac/0.1/hasLicense
- Binds licensed entity to the license
URI: http://www.jeromedl.org/eac/0.1/hasPropagationState
- FORMER: http://www.jeromedl.org/structure#licensePropagation
URI: http://www.jeromedl.org/eac/0.1/hasRule
- Defines one of many rules that create a condition.
URI: http://www.jeromedl.org/eac/0.1/isActive
- Determines if the eac condition is currently active or not
URI: http://www.jeromedl.org/eac/0.1/isConjunctive
- Tells whether the Action specification should fulfill all conditions or just some
URI: http://www.jeromedl.org/eac/0.1/isDeniedFirst
- FORMER: http://www.jeromedl.org/structure#isDenyFirst
URI: http://www.jeromedl.org/eac/0.1/sameAs
- deprecated property; used to indicate relations between real chapters (as handled in JeromeDL prior-2.1) and licence entities of chapters (as handled in JeromeDL 2.1+). It will probably become absolute once we will remove bNodes from the aggregation model in JeromeDL.