ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I think I was hoping there is a "standard topic repository" that would provide this kind of information.

Now I think I know what you're asking: topic names are almost arbitrary, types are not however. Topics are typed, so both participants in pub-sub need to declare the same types.

But that doesn't solve the complete problem.

So besides typing, additional semantics are captured in what is typically called a "ROS API". For serious systems, those are captured in REPs. Those REPs provide additional information on the types that should be used for certain topics, their names and what their intended use is.

See REP 138: LaserScan Common Topics, Parameters, and Diagnostic Keys for an example, but there are some others as well.

REPs have not been used that much in more recent years, but I believe they are something that comes close to your "standard topic repository", at least conceptually.

I think I was hoping there is a "standard topic repository" that would provide this kind of information.

Now I think I know what you're asking: topic names are almost arbitrary, types are not however. Topics are typed, so both participants in pub-sub need to declare the same types.types. That avoids the situation where you attempt to send incorrectly formatted information to a certain subscriber.

But that doesn't solve the complete problem.problem. Typing addresses the syntax part of communication. But for semantics we still need something more.

So besides typing, additional semantics are captured in what is typically called a "ROS API". For serious systems, those are captured in REPs. Those REPs provide additional information on the types that should be used for certain topics, their names and what their intended use is.

See REP 138: LaserScan Common Topics, Parameters, and Diagnostic Keys for an example, but there are some others as well.

REPs have not been used that much in more recent years, but I believe they are something that comes close to your "standard topic repository", at least conceptually.

I think I was hoping there is a "standard topic repository" that would provide this kind of information.

Now I think I know what you're asking: topic names are almost arbitrary, types are not however. Topics are typed, so both participants in pub-sub need to declare the same types. That avoids the situation where you attempt to send incorrectly formatted information to a certain subscriber.

But that doesn't solve the complete problem. Typing addresses the syntax part of communication. But for semantics we still need something more.

So besides typing, additional semantics are captured in what is typically called a "ROS API". For serious systems, those are captured in REPs. Those REPs provide additional information on the types that should be used for certain topics, their names and what their intended use is.

See REP 138: LaserScan Common Topics, Parameters, and Diagnostic Keys for an example, but there are some others as well.well (and some REPs standardise entities other than topics or parameters, such as REP 103: Standard Units of Measure and Coordinate Conventions and REP 105: Coordinate Frames for Mobile Platforms).

REPs have not been used that much in more recent years, but I believe they are something that comes close to your "standard topic repository", at least conceptually.