1: What is a DNA-Molecule
Shaken formulation:
What is the DNA-Molecule ?
Answer
|
Question in KM
Template
What is <instance>?
Parameters
INSTANCE |
---|
Code
("p6: What is <instance>? The answer is computed from the EXPLAIN function, which is the general explanation function used in Shaken for objects and processes. It is based on the use of Explanation Design Plans (EDPs). EDP structure the way the infomation (based on slot values) is displayed to the user. The leaves of this structure are VIEWS of the concept. A view is a partial and specialized set of slot values of a particular concept. These slot values are organized by accessors. Each slot in the base KB is linked to a particular accessor, e.g. the slot destination is linked to the accessor location. The result of the explanation is displayed as a list. The structure of the list follows the hierarchical structure of the EDP." (defun answer-p6-data (instance expanded) (setq instance (intern instance :user)) (let* ((explanation (rkf::list-explain `(("concept" . ,instance) ("query-type" . ":explain-qn") ("expanded" . ,expanded) )))) `(,@explanation ("concept" . ,instance) ("query-type" . :explain-qn) (user::question-type user::p6) ("expanded" . ,expanded))))) (defun list-explain (alist) (let* ((user::*show-comments* nil) (*dictionary* nil) (concept-name (util::alist-value alist "concept")) (query-type-string (util::alist-value alist "query-type")) (concept (coerce-concept (intern concept-name :user))) (query-type (and query-type-string (intern (read-from-string query-type-string) :keyword)))) (if concept (let ((query-type (if (equal query-type :explain-qn) (get-concept-query-type concept) (or query-type (get-concept-query-type concept))))) (list (cons "explanation" (list-edp (explain query-type concept alist) alist)) (cons "question" (user::question-string query-type concept alist)) (cons "dictionary" *dictionary*)))))) (defun explain (query-type concept alist) (when query-type (let* ((edp (select-edp query-type)) (explanation-plan (construct-node edp concept alist))) (apply-edp (get-node-type edp) edp explanation-plan) explanation-plan)))
Raw Answer
((values (<EDP>Object: a DNA-Molecule (<EDP>Object Overview: (<EDP>Definition: (( Double-stranded polynucleotide formed from two separate chains of deoxyribonucleotide units; serves as the carrier of genetic information.) (Alberts:ECB:G-6 ))) (<EDP>It is a kind of: (Container Nucleic-Acid-Complex))) (<EDP>Object Details: (<EDP>It is composed of: (<SLOT>structural basic unit _Base-Pair976) (<SLOT>part _DNA-Strand981 _DNA-Strand980 _Base-Pair976)) (<EDP>Specializations: (Eucaryotic-DNA Procaryotic-DNA Viral-DNA))) (<EDP>Object Significance: (<EDP>Functions: (<SLOT>in-event _Be-Contained975) (<SLOT>purpose _Container979))))) (concept . _dna-molecule971) (query-type . explain-qn) (question-type p6) (expanded) (explanations ((_dna-molecule971 has-part _dna-strand981 ((a dna-strand called DNA-Strand-2))) (_dna-molecule971 has-part _dna-strand980 ((a nucleotide-sequence) (a dna-strand called DNA-Strand-1 with (complement (((the dna-strand has-part of _dna-molecule971) called DNA-Strand-2))) (object-of ((a be-attached-to with (object (((the has-part of _dna-molecule971) called DNA-Strand-2))) (instrument ((a chemical-sequence with (element-type (hydrogen-bond))))))))))) (_dna-molecule971 has-part _base-pair976 ((the has-basic-structural-unit of _dna-molecule971))) (_dna-molecule971 has-basic-structural-unit _base-pair976 ((a base-pair (@ dna-molecule has-basic-structural-unit)))) (_dna-molecule971 purpose _container979 ((a container with (in-event ((a genetic-information-storage with (object ((a genome (@ dna-molecule purpose container in-event genetic-information-storage object)))) (@ dna-molecule purpose container in-event)))) (@ dna-molecule purpose)))) (_dna-molecule971 in-event _be-contained975 ((a be-contained with (object ((the content of _dna-molecule971 (@ container in-event be-contained object)))) (@ container in-event)))))))
Explanation
The DNA-Strand is part of the DNA-MoleculeKB rule (English):
The following rule was asserted for Concept
The has-part of a is: a DNA-Strand with the following-properties:
Concept DNA-Molecule is a subconcept of concept
KB rule (KM):
((a dna-strand called DNA-Strand-2))
KB rule (English):
The following rule was asserted for Concept
The has-part of a is: a Nucleotide-Sequence
Concept DNA-Molecule is a subconcept of concept
KB rule (KM):
((a nucleotide-sequence))
KB rule (English):
The following rule was asserted for Concept
The has-part of a is: a DNA-Strand with the following-properties:
Concept DNA-Molecule is a subconcept of concept
KB rule (KM):
((a dna-strand called DNA-Strand-1 with (complement (((the dna-strand has-part of _dna-molecule971) called DNA-Strand-2))) (object-of ((a be-attached-to with (object (((the has-part of _dna-molecule971) called DNA-Strand-2))) (instrument ((a chemical-sequence with (element-type (hydrogen-bond))))))))))
KB rule (English):
The following rule was asserted for Concept
The has-part of a is: the structural basic unit of the DNA-Molecule
Concept DNA-Molecule is a subconcept of concept
KB rule (KM):
((the has-basic-structural-unit of _dna-molecule971))
KB rule (English):
The following rule was asserted for Concept DNA-Molecule
The has-basic-structural-unit of a DNA-Molecule is: a Base-Pair
KB rule (KM):
(every dna-molecule has (has-basic-structural-unit ((a base-pair))))
KB rule (English):
The following rule was asserted for Concept DNA-Molecule
The purpose of a DNA-Molecule is: a Container with the following-properties:
KB rule (KM):
(every dna-molecule has (purpose ((a container with (in-event ((a genetic-information-storage with (object ((a genome))))))))))
KB rule (English):
The following rule was asserted for Concept Container
The in-event of a Container is: a Be-Contained with the following-properties:
Concept DNA-Molecule is a subconcept of concept Container
KB rule (KM):
(every container has (in-event ((a be-contained with (object ((the content of _dna-molecule971)))))))
Terms
SHAKEN - Unpublished Copyright © 1999-2001, SRI Team