Starting from the meta-information properties that we requested from Tailor, I created a set of properties that we would want out of LAPDOG. I tried to include some forward-looking properties for future versions of LAPDOG (eg, when procedures may be based on multiple demonstrations) as well as properties that we won't necessarily be using quite yet on our side (eg, a pointer to the full clickstream data, for when we are able to store that somewhere). Below is the list of properties, and an example of them in use. Meta-information: learner -- this will always be "LAPDOG" user -- which user provided the demonstration recordStartDate -- date/time when the demonstration began recordEndDate -- date/time when the demonstration ended addDate -- date/time when the new procedure was added to the Task Manager comments -- optional space for user-provided comments knowledgeProducingSteps -- list of steps that were added (not explicitly demonstrated) demonstratedVariableBindings -- the variable bindings from the original demonstration constants -- any value identified by LAPDOG as a constant (ie, not turned into a variable) dataReference -- pointer to the full clickstream data numberOfDemonstrations -- for learning from more than one demonstration Example of these new meta-information properties added to the example SPARK-L procedure learned for PQ0065: {defprocedure do_findContact cue: [do: (findContact +$keyWords1 -$url4 )] precondition: (True) body: [seq: [do: (searchWeb "http://www.google.com" $keyWords1 $resultUrl2 )] [do: (findALink $resultUrl2 $keyWords1 $url3 )] [do: (findALink $url3 "Contact" $url4 )] [do: (openURL $url4 )] ] properties: [ (learnerProperties (user HelenTroy) (learner LAPDOG) (recordStartDate "20070307T153000Z") (recordEndDate "20070307T153500Z") (addDate "20070307T154000Z") (comments "Extra info provided by user") (knowledgeProducingSteps [ [do: (findALink $resultUrl2 $keyWords1 $url3 )] [do: (findALink $url3 "Contact" $url4 )] ] ) (demonstratedVariableBindings [ "sri international" "http://www.sri.com/contact" ] ) (constants [ "http://www.google.com" ] ) (dataReference ) (numberOfDemonstrations 1) ) ] } Notes: - the "comments" property is optional (for now, other properties can also be treated as optional as well, but "comments" is intended to *always* be optional) - we will need to discuss how to indicate the constants (there may be additional information that we can get from LAPDOG here) - dataReference values will depend on how we are able to store the underlying data