Ontology Requirements List (from OOR)
List of Possible Repository Requirements (major update to OOR list)
This list contains the requirements from the OOR requirements list, reorganized and with many new requirements added. (I couldn't post it quickly to the OOR list because it is in HTML.)
Bracketed items on each line refer to the origin of the particular requirement. The source lists are identified at the end.
Functional Requirements of an RDF/OWL Repository
- [FN02] Allows authors to create ontology content
- Provide Capability to Submit an Ontology to the Repository.
- [LO01] Extract administrative and descriptive data from the metadata fields of an OWL ontology.
- [TS04] The repository shall provide a mechanism to automatically categorize a submission
- [LO01] Generate a meta-card entry for the ontology.
- [FN02] Supports automatic cataloging of published artifacts
- Provide Centralized Data Storage.
- [LO01] OWL ontology.
- [LO01] RDF store.
- Ontology metadata
- [LO01] Metadata should follow existing metadata standards.
- [LO01] includes the source, date, version number and other core metadata as defined by appropriate standards bodies
- [FN02] Allow standard and extensible metadata to be associated with Ontology elements
- [LO01] Linkage to XML and database data and documents.
- Metrics and Logging.
- [LO01] Provide data access metrics.
- [LO01] Provide data storage metrics.
- [LO01] Provide audit logs of repository activity.
- [JBG] Provide level-of-interest metrics for ontologies and concepts (based on access, imports, annotation, edits, and concept mapping/reuse)
- [TS04] The repository shall provide a mechanism to create usage reports
- Ontology Services.
- [LO01] Browsing Services.
- [TS04] locally or globally (011)
- Ontology Query Services
- [JBG] both content and metadata
- support discovery by
- [TS04] domain
- [TS04] author/creator/source
- [TS04] version
- [TS04] usage
- [TS04] language
- [TS04] terminology
- [TS04] quality
- [TS04] search locally or globally
- Semantic Search/Query Services
- [LO01] Users submit logical queries which are answered with exact data.
- [LO01] Broaden queries with simple inference, such as equivalence, inversion, generalization and specialization.
- [LO01] Visualization Services.
- [JBG] Ontology fragment viewing
- [JBG] Single ontology
- [JBG] Multiple ontologies
- [JBG] Semantic web browsing (across ontologies from the web in real time, using imports and relations
- Validation Services (see Validation Requirements section)
- [JBG] URI Issue/Resolution/Dereferencing Services
- [JBG] Issue URI for each ontology in the form of a URL
- [JBG] Provide dereferencing service for ontology URI
- [JBG] dereference as RDF
- [JBG] dereference as HTML (with metadata)
- [JBG] dereference as other format
- [JBG] Issue or identify URI for each concept
- [JBG] Provide dereferencing service for concept URIs
- [JBG] dereference as RDF
- [JBG] dereference as HTML (with metadata)
- [JBG] dereference as other format
- [JBG] If concept URI is a URN, provide URL that can be used to discover information about the concept
- [JBG] Provide dereferencing service for ontology URI
- [LO01] Edit Services.
- [JBG] Modify content of existing ontology online and resubmit
- [JBG] Modify metadata of existing ontology online and resubmit
- [JBG] Obtain (check out) copy of existing ontolog for off-line editing
- [LO01] Annotation Services.
- [LO01] Web-Page Markup.
- Remote Crawl and Index.
- [LO01] OWL Semantic Search Services crawl and index OWL content on the Web.
- Indexing Support Services.
- [LO01] Provides services for external search engines and entity extractors to index and mine repository contents
- [LO01] Browsing Services.
- User Services via a Web Interface
- [LO01] Search metadata indices.
- [LO01] Link from the metadata index to the specific OWL or RDF storage location.
- [LO01] Browse repository contents.
- [LO01] Provide visual representation of ontologies.
- [LO01] Search RDF instance stores with ontology-assistance.
- [LO01] Specify agent-directed searches of instance store content.
- Machine Services (APIs and web services).
- [LO01] Query repository and triples store using a conceptual query language, such as SPARQL.
- [LO01] Query the repository and triples store using REST.
- [LO01] Query the repository and triples store using SOAP.
- [LO01] Use an API to programmatically create, view, and modify repository contents.
- Protocol Support
- [EW03] Need to serve content in an appropriate standard exchange form and using protocols associated with each content type
- [TS04] The repository shall provide explicit machine usable/accessible repository semantic
- [LO01] Define machine services in appropriate machine-interpretable format, such as OWL-S
- Validation
- [FN02] Supports automatic rule-based validation of submitted artifacts
- [TS04] The repository shall provide syntax validation mechanisms
- [TS04] The repository shall provide a logical consistency checking mechanism
- [LO01] Validate an OWL ontology to ensure that it is valid OWL.
- [LO01] Confirm the RDF against its terminology defined in RDFS.
- Reasoning Services
- [LO01] Provide services to check ontology consistency, build classification, verify concepts' satisfiability and check entailment.
- [LO01] Provide services to support rules and execute minimally automated deductive reasoning and proof.
- [TS04] The repository shall be capable of supporting ontologies in languages that have reasoners
- Simple Mapping Services
- [LO01] Provide services to support mapping user terminology to the concepts that represent the meaning of that terminology, using thesauri, lexicons, and other terminological resources.
- [JBG] Provide services to readily map terms among different ontologies
and save the results- [JBG] SKOS relationships
- [JBG] OWL sameAs relation
- [JBG] other key provenance relations
- [JBG] user-defined relations
- [LO01] (Disambiguation) A user would generate a mapping between multiple ontologies to identify where classes and properties are the same. The data from multiple sources could then be imported into a repository where a reasoning tool can determine what objects are the same. The results could then be viewed in a browser.
- Ontology and Instance Versioning
- [LO01] Submitted items should be tracked with version numbers (after determining the levels of granularity needed for versioning).
- [LO01] Provide services to support semantic versioning of ontologies and knowledge bases (instances).
- [FN02] Maintains change history for all artifacts in repository
- [FN02] Supports different life cycle states for ontological content and provides a process for transitioning from one state to the other in a controlled manner.
- Authentication and Privacy Services
- [FN02] Supports a set of minimal authentication mechanisms (e.g. Basic, HTTPS mutual, OpenId)
- [FN02] Provide fine grained role-based access control and authorization over all actions
- [TS04] The repository shall provide a mechanism to enforce access policies
- [TS04] The repository shall provide user and administrator access control mechanisms
- Governance and Policy Services
- [TS04] The repository shall provide a mechanism to enforce submission policies
- [TS04] The repository shall provide a mechanism to enforce governance policies
- [TS04] The repository shall provide a mechanism to enforce tracking policies
- [TS04] The repository shall provide a mechanism to avoid intellectual property and related legal issues/problems
- Community Services
- [FN02] Allow communities to manage a shared "community" repository
- [FN02] Provide a "root" repository that keeps tracks of community repositories and provides the most universal ontology content and metadata
- [FN02] Supports a maven like distributed model where content from "local" repository may be "deployed" to the "community" repository or the "root" repository
- [FN02] Support seamless search over multiple repositorys (local + community, local + community + root, other...)
- [FN02] Supports flexible search mechanism where domain and community specific parameterized queries may be defined for metadata based searches
- [JBG] Provide collaborative editing and annotation of ontologies
- [JBG] Provide collaborative editing and annotation of concepts/relations
- Notification/Subscription Services
- [FN02] Supports flexible subscription and notification feature to keep interested parties notified of changes to artifacts
- [FN02] Subscription to/notification of state changes for terms or ontologies
- [TS04] Subscription to/notification of alerts associated with one or more repository items.
- [TS04] Subscription to updates of repository items (i.e., the item itself, not a message saying it has been updated)
- Ontology Types
- [EW03] Need to support ontologies in at least OWL and Common Logic (CL).
- Import/Merging Services.
- [LO01] Support importing of modular ontologies into larger ontologies; this is at least partially a function of the knowledge representation language itself.
- Provide a Repository of Downloadable Web Tools.
- [LO01] Define a process with criteria for determining what kinds of tools to make available.
- [LO01] Provide an index to available tools.
- [LO01] Provide search capability to available tool
- Advanced Mapping Services
- Schema Translation.
- [LO01] Automatically generate translation code between database schemas with an OWL mapping specification.
- Visually-aided Mapping
- [LO01] A user would generate a mapping between an existing ontology and the ontology expected by the custom visualization tool. The data would then be translated according to the mappings. The resulting data can then be viewed by the custom visualization tool
- Schema Translation.
- Design Requirements
/ Ilities- [TS04] The architecture will evolve.
- [TS04] Not all capabilities will be implemented at any single version
- [TS04] There will be multiple versions each successor implanting additional capabilities and/or evolving the previous version.
- [TS04] The repository will meet the needs of operational or commercial systems.
- [TS04] Instance data, which are themselves not ontologies, will not be stored in the repository
- [TS04] The repository architecture shall be scalable
- [TS04] The repository architecture shall support distributed repositories.
- [TS04] The repository architecture shall not require a hierarchical structure.
- [TS04] The repository shall be distributed.
- [TS04] The specification of the repository shall be sufficiently detailed and platform independent to allow multiple implementations.
- [TS04] The architecture will evolve.
Sources
- Candidate01 - proposed by LeoObrst/2008.01.03
- slides #7~11 from the planning meeting slide deck
- Candidate02 - proposed by FarrukhNajmi/2008.01.24
- Candidate03 - proposed by EvanWallace/2008.04.17
- Candidate04 - proposed by ToddSchneider/2008.04.17
Posted December 3rd, 2008 by graybeal