[Documentation] [TitleIndex] [WordIndex

Only released in EOL distros:  

roboframenet: arbitrator | executor | frame_registrar | imperative_to_declarative | location_memorizer | moo | move_action_server | move_base_rfn | pr2_props_rfn | rfnserver | roboframenet_bringup | roboframenet_msgs | semantic_framer | stanford_parser | stanford_parser_msgs | stanford_parser_ros | stop_server | turtlebot_follower_rfn | utter

Package Summary

stanford_parser_ros wraps the parse tree and dependency functionality of the Stanford Parser and Stanford Dependencies Parser (with parse tree and dependencies outputs) for ROS. It receives a string (a command sentence) and returns a Parse, which consists of a flattened parse tree and a list of dependencies (such as direct object, indirect object, etc.).

WARNING: This documentation refers to an outdated version of rosjava and is probably incorrect. Use at your own risk.

Interpreting Output Messages

Parse tree

A python utility is provided to unsquash the parse trees and dependencies output by stanford_parser_ros. This will create a tree structure:

from stanford_parser_msgs import unsquash_tree

[...]

def callback(msg): # msg type: stanford_parser_msgs/Parse
  [...]
  parse_tree = unsquash_tree(msg)
  [...]

Each node in the tree -- an instance of the class Tree -- has the following elements:

node.tag        # string
node.score      # double -- confidence rating of the Stanford Parser
node.word       # string
node.word_index # integer -- node.word = msg.words[node.word_index]
node.children   # listof(Tree)

The part-of-speech tags used in the Stanford Parser come from Penn Treebank II and can be found here.

Dependencies

Dependencies (a list located under msg.dependencies) have the following 3 elements:

For instance, the sentence "Give Bill the ball." has, among others, the dependency "dobj(give-2, ball-5)". For this dependency, relation is "dobj", governor_index is 2, and dependent_index is 5.


2024-11-16 17:48