Bixby Developer Center

Guides
References

visibility

optionalvalue optional

Controls the visibility of the property to the planner. Public properties are exposed to the planner, allowing property projections to occur in the middle of the plan. Private properties are hidden to the planner and are only available in action implementations, dialog and layouts. Default visibility exposes the property to the planner only at the goal, allowing for a property projection or a sort at the goal.

Example

In the below example, the type property on shoe.Shoe has Public visibility. This allows the planner to take the type property of the shoe.FindShoe output and use it as the input to shoe.FindAccessories:

intent { goal: shoe.Accessory value: shoe.Name("Boot") }

structure (Shoe) {
property (name) {
type (Name)
min (Required)
}
property (type) {
type (Type)
min (Required)
// let this property be used as an input to downstream actions
visibility (Public)
}
}

// shoe.Shoe is the output of this action.
action (FindShoe) {
type (Search)
collect {
input (name) {
type (Name)
min (Optional)
}
}
output (Shoe)
}

// shoe.Type is the input to this action. The planner can extract the
// shoe.Type input from the type property of shoe.FindShoe output.
action (FindAccessories) {
type (Search)
collect {
input (type) {
type (Type)
min (Required)
}
}
output (Accessory)
}