opencog/opencog — pull request #885 by williampma (2014-06-20 04:44:20+00:00)
Title: R2L: Post-processing functions to create fully abstracted version

"The woman softly kisses the smelly frog." will create:
```scheme
((EvaluationLink
(PredicateNode "kiss@8z0Rg8kPeGMzxASQqFaAVha1fKpz5rEP")
(ListLink
(ConceptNode "woman" (stv 0.001 0.99000001))
(ConceptNode "frog@yqZmeYYAuFWlfOc969UVw2tCMKbOqRHd")
)
)
(InheritanceLink
(SatisfyingSetLink
(PredicateNode "kiss@8z0Rg8kPeGMzxASQqFaAVha1fKpz5rEP")
)
(ConceptNode "softly" (stv 0.001 0.99000001))
)
(InheritanceLink
(ConceptNode "frog@yqZmeYYAuFWlfOc969UVw2tCMKbOqRHd")
(ConceptNode "smelly" (stv 0.001 0.99000001))
)
)
```

"The woman kisses the frog." will create:
```scheme
((EvaluationLink
(PredicateNode "kiss" (stv 0.001 0.99000001))
(ListLink
(ConceptNode "woman" (stv 0.001 0.99000001))
(ConceptNode "frog" (stv 0.001 0.99000001))
)
)
)
```

Currently, "The woman kisses a frog." will generate the same thing as "The woman kisses the frog." It is not yet clear how they should be distinguished.

Those random letters behind @ are just random 32 letters, not UUID.