Ontology Development Process v 0.1
Caveat:
This is work in progress. The process described below was originally designed to develop ontologies using Protégé, a knowledge editor with an intuitive interface that supports a frame based knowledge model. The process is currently being adopted to address description-logic language like DAML+OIL (or OWL). This process may eventually used to develop a requirements document for a DAML+OIL IDE. change log
Credit:
The original process is derived from Ontology Development 101: A Guide to Creating Your First Ontology, 2001, by N. Noy & D. L. McGuinness
|
Process Name: Develop ontology for
knowledge-based application |
Process Number: 1.0 |
|
|
Input/ Pre-condition: None // |
||
|
|
||
|
1.1
Identify
the domain and the scope of the ontology 1.2
Develop
an initial class list 1.3
For
each class identify the slots and their constraints 1.4
Perform
external review and adjust ontology 1.5 Conduct postmortem and document lessons learned |
||
|
Output/Post-condition:
|
||
|
Postmortem: |
||
|
Lessons learned and PIP: To be filled up immediately after the completion
of the process |
||
|
Process Name: Identify the domain and the scope of the ontology |
|
|
|
Input/ Pre-condition: None // This is the first step of the process |
||
|
|
||
|
Steps: 1.
Identify
the domain that the ontology will model 2.
Identify
domain experts 3.
Develop
a domain reference list 4.
Develop
a narrative of a reference application that the ontology will support 5.
Use
the narrative to develop a spectrum of competency questions that the
knowledge based system will be able to answer. The questions should have a
mix of both simple queries that recalls some facts to more complex queries
that require reasoning 6.
Use
the output of 1-5 above to identify a few initial descriptions of possible
instances of the classes of the ontology. (This is done early on to provide
some guidance on deciding on how abstract an ontology should be) 7. Conduct
postmortem and document lessons learned |
||
|
Output/Post-condition: Scope Document that contains A narrative of a
sample application, a list of competency questions and description of some
possible instances of the classes. |
||
|
Postmortem: |
||
|
Lessons learned and PIP: To be filled up immediately after the completion of the process |
||
|
Process Name: Develop an initial class list |
||
|
Input/ Pre-condition: Scope Document |
||
|
|
||
|
Steps: 1.
Enumerate
terms that describe the domain of the ontology. 2.
For
each term develop a one line working definition in the most common language
used in the domain 3.
Verify
the term definition with the domain expert 4.
Use
the competency questions list found in the Scope Document to validate/refine
the list a.
Are
the terms too broad? b.
Do
the answers require a particular level of detail or representation of a
particular area? c.
Are
we missing terms? Does the ontology contain enough information to answer
these types of questions? 5. Develop a class hierarchy (sub-class super-class). //
The above will be replaced by the use of a classifier ·
Note: Ignore other relationships (i.e.
aggregation etc.) ·
Note: A term defined in terms of
another term in the concept document may be an indicator of a sub-class
super-class hierarchy. 6.
Enter
the hierarchy in Protégé 7.
Revise
the instance description based on the new hierarchy a.
Add
some more instances b.
Modify
description of some earlier instances 8. Conduct
postmortem and document lessons learned |
||
|
Output/Post-condition:
|
||
|
Postmortem: |
||
|
Lessons learned and PIP: To be filled up immediately after the completion of the process |
||
|
Process Name: For each class identify the slots and their constraints |
|
|
|
Input/ Pre-condition:
|
||
|
|
||
|
Steps: 1.
Identify
slots. They can be: a.
Intrinsic
properties // like a color of a wine b.
Extrinsic
properties // like the maker c.
Parts,
can be both physical and abstract parts d.
Relationships
to other individuals (other than sub-class –super class) 2.
Identify
constraints // possible values 3.
Incorporate
it in Protégé 4.
Conduct
postmortem and document lessons learned |
||
|
Output/Post-condition:
|
||
|
Postmortem: |
||
|
Lessons learned and PIP: To be filled up immediately after the completion of the process |
||
|
Process Name: Perform External review and adjust ontology |
|
|
Input/ Pre-condition:
|
||
|
|
||
|
Steps: 1
Identify
reviewer 2
Develop
review checklist 3 Collect review feedback and adjust ontology 4. Conduct
postmortem and document lessons learned |
||
|
Output/Post-condition:
|
||
|
Postmortem: |
||
|
Lessons learned and PIP: To be filled up immediately after the completion
of the process |
||