Development of Ontology
The CUAHSI Ontology, it's development, how it is used in HIS, and how it interacts with a user have been extensively discussed.
We need a requirements document so that we can discuss it a point at a time.
User scenarios, and discssions ¶
Ontology Vocabulary
What are the requirements of an ontology
- Should be simpler to create than using Protoge'
Ontology Concepts
The CUAHSI ontology should focus on XXXX.
A concept should incorporate the following:
- A concept label
- A label should be unique (is this a requirement?)
- in the existing ontologies this is the class label.
- a label should have a language associated with it
- A concept ID
- A concept ID should be unique.
- A concept label should be alphanumeric. It is suggested that it be created by removing spaces and punctuation from the concept name
Concept Ontologies (Each one is a separate file):
- CUAHSI Vocabulary
- Sample Medium
- Value Type
- Basic Time Support (Hour, daily, monthly, yearly)
Additional concept structures/vocabularies are needed:
Ontology Mapping
- A variable should be
- Mapped at least one concept in the CUAHSI Vocabulary Ontology
- it may be mapped to more than one concept
- A variable may be attached to more than one ontology:
- Sample Media
- Units
- Value Type
Ontology Mapping User
It should be easy for users to create a mapping.
Is this a one at a time, or a list based creating
- For a give datasource, A mapping should be easy to verify
- a list of all variables for a datasource and mappings should be available.
- A system should make a automated guess that needs to be approved by an administrator.
Ontology Mapping Automated
Based on the Ontology labels, and mapped variable names, an attempt to match should be made to assist the user in mapping.
Rules:
- exact match to variable name
- exact match to a synonym for a variable
- partial match to variable name
- exact match to a mapped name
Suggested approach is that a table of concepts, and mapped variable names (with full text indexing) be created periodically in the HIS central, and used to help automate the process. The other would be a service the uses the lucene full text indexing engine.
Ontology Searching
When the ontology is search, for a given input what is the output?
- The behavior is (exact match)
Prefix Matching - If no variables are mapped to a branch,
- the term should be returned, or not returned?
- synonyms should be returned as:
- term user submitted or correct term
Returned Information
- Incremental delivery is needed. If more than a certain number of variables are returned, then only deliver X.
- The Hierarchy of the ontology should be returned.
- A list of mapped variables.
- information on how to get next increment, if needed.
Ontology UI