Dublin Core Application Profile (DCAP)
The concept of the (metadata) application profile is important for DCMI and the Dublin Core community. It has underpinned many of DCMI's development efforts in recent years. There is significant community interest in developing tools to aid in creating and documenting application profiles. There is a related interest in assuring that profiles specify validation rules for the data that they define.
Previous work in the Dublin Core community defined a framework for application profiles and a constraint language based on the Dublin Core Abstract Model. This current work will use some of the concepts developed previously but will not be bound to those specifications.
The profiles project potentially will include development of a revised framework to support application profiles, a revised abstract model, and an application profile constraint language.
A Core Vocabulary for Profiles
The idea behind this project is that there is a growing need to develop vocabularies for the creation of data and metadata. The goal of interoperability among data stores encourages the reuse of existing vocabularies for this purpose, and thus to create local profiles that can be understood as widely as possible. Some developers of applications work with complex platforms for data creation and validation. However, metadata is used by nearly every information technology function, from the simple web page to an institutional database, and many people involved in those functions are developing their metadata without the aid of complex and often expensive technology nor the use of professional data developers. This project aims to provide a simple core vocabulary that allows the reuse of elements defined in the public sphere of the web, and to assign basic constraints to those elements; a core vocabulary as simple to understand and use as Dublin Core, but with a different set of outcomes.
Outcomes in this project will be:
- Gathering use cases and requirements for application profiles that will guide the work
- Scoping the project to an initial set of requirments that can be addressed in a short period of time, but that can be extended in the future if desired
- Development of a basic vocabulary for the creation of application profiles
- Alignment of the application profile vocabulary with actionable constraints, possibly using existing constraint languages
- Development of one or more example workflows using commonly known technologies
- Creation of reusable examples, especially of the most common functions
- If possible, the development of a demonstrator application for the creation of profiles
All of this should be done keeping in mind the "core" concept that has been the philosophy behind the work of the Dublin Core Metadata Initiative. This favors simple solutions that can be used by the broadest community, and that are extensible where more detail is needed.
There is an initial seeding of some documents to support these tasks. These documents are expected to be fully revised during the project.
- A gathering of use cases for application profile constraints
- A requirements document
- Design patterns for basic constraints
- Comparison of some existing profile vocabularies
- Elements list, based in part on the DSP