Stay organized with collections
Save and categorize content based on your preferences.
@ExperimentalAppSearchApi
interface Node
Known indirect subclasses
This is the basic Abstract Syntax Tree (AST) class. All other classes extend from this class depending on the specific node.
This API may change in response to feedback and additional changes.
Summary
Public functions
fun getChildren(): (Mutable)List<Node!>
Get a list of the node's child Node
s.
By default this method will return an empty list representing that the node has no child nodes.
If a node type extends this interface and has child nodes, then that class should override this implementation and return a list of nodes of size equal to the number of child nodes that node has.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-07-10 UTC.
[null,null,["Last updated 2025-07-10 UTC."],[],[],null,["# Node\n====\n\nArtifact: [androidx.appsearch:appsearch](/jetpack/androidx/releases/appsearch) \n[View Source](https://cs.android.com/search?q=file:androidx/appsearch/ast/Node.java+class:androidx.appsearch.ast.Node) \nAdded in [1.1.0](/jetpack/androidx/releases/appsearch#1.1.0)\n\n*** ** * ** ***\n\nKotlin \\|[Java](/reference/androidx/appsearch/ast/Node \"View this page in Java\")\n\n\n```\n@ExperimentalAppSearchApi\ninterface Node\n```\n\n\u003cbr /\u003e\n\nKnown direct subclasses \n[AndNode](/reference/kotlin/androidx/appsearch/ast/operators/AndNode), [ComparatorNode](/reference/kotlin/androidx/appsearch/ast/operators/ComparatorNode), [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode), [NegationNode](/reference/kotlin/androidx/appsearch/ast/NegationNode), [OrNode](/reference/kotlin/androidx/appsearch/ast/operators/OrNode), [PropertyRestrictNode](/reference/kotlin/androidx/appsearch/ast/operators/PropertyRestrictNode), [TextNode](/reference/kotlin/androidx/appsearch/ast/TextNode) \n\n|-------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------|\n| [AndNode](/reference/kotlin/androidx/appsearch/ast/operators/AndNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that represents logical AND of nodes. |\n| [ComparatorNode](/reference/kotlin/androidx/appsearch/ast/operators/ComparatorNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that represents a numeric search expression between a property and a numeric value. |\n| [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that represents a function. |\n| [NegationNode](/reference/kotlin/androidx/appsearch/ast/NegationNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that stores a child node to be logically negated with a negative sign (\"-\") or 'NOT'. |\n| [OrNode](/reference/kotlin/androidx/appsearch/ast/operators/OrNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that represents logical OR of nodes. |\n| [PropertyRestrictNode](/reference/kotlin/androidx/appsearch/ast/operators/PropertyRestrictNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that represents a property restrict. |\n| [TextNode](/reference/kotlin/androidx/appsearch/ast/TextNode) | [Node](/reference/kotlin/androidx/appsearch/ast/Node) that stores text. |\n\nKnown indirect subclasses \n[GetSearchStringParameterNode](/reference/kotlin/androidx/appsearch/ast/query/GetSearchStringParameterNode), [HasPropertyNode](/reference/kotlin/androidx/appsearch/ast/query/HasPropertyNode), [PropertyDefinedNode](/reference/kotlin/androidx/appsearch/ast/query/PropertyDefinedNode), [SearchNode](/reference/kotlin/androidx/appsearch/ast/query/SearchNode), [SemanticSearchNode](/reference/kotlin/androidx/appsearch/ast/query/SemanticSearchNode) \n\n|-------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------|\n| [GetSearchStringParameterNode](/reference/kotlin/androidx/appsearch/ast/query/GetSearchStringParameterNode) | [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode) that represents the getSearchStringParameter function. |\n| [HasPropertyNode](/reference/kotlin/androidx/appsearch/ast/query/HasPropertyNode) | [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode) representing the \\`hasProperty\\` query function. |\n| [PropertyDefinedNode](/reference/kotlin/androidx/appsearch/ast/query/PropertyDefinedNode) | [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode) representing the \\`propertyDefined\\` query function. |\n| [SearchNode](/reference/kotlin/androidx/appsearch/ast/query/SearchNode) | [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode) that represents the search function. |\n| [SemanticSearchNode](/reference/kotlin/androidx/appsearch/ast/query/SemanticSearchNode) | [FunctionNode](/reference/kotlin/androidx/appsearch/ast/FunctionNode) that represents the semanticSearch function. |\n\n*** ** * ** ***\n\nThis is the basic Abstract Syntax Tree (AST) class. All other classes extend from this class depending on the specific node.\n\nThis API may change in response to feedback and additional changes.\n\nSummary\n-------\n\n| ### Public functions |\n|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `(`[Mutable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)`)`[List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html)`\u003c`[Node](/reference/kotlin/androidx/appsearch/ast/Node)`!\u003e` | [getChildren](/reference/kotlin/androidx/appsearch/ast/Node#getChildren())`()` Get a list of the node's child [Node](/reference/kotlin/androidx/appsearch/ast/Node)s. |\n\nPublic functions\n----------------\n\n### getChildren\n\nAdded in [1.1.0](/jetpack/androidx/releases/appsearch#1.1.0) \n\n```\nfun getChildren(): (Mutable)List\u003cNode!\u003e\n```\n\nGet a list of the node's child [Node](/reference/kotlin/androidx/appsearch/ast/Node)s.\n\nBy default this method will return an empty list representing that the node has no child nodes.\n\nIf a node type extends this interface and has child nodes, then that class should override this implementation and return a list of nodes of size equal to the number of child nodes that node has. \n\n| Returns |\n|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------|\n| `(`[Mutable](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-mutable-list/index.html)`)`[List](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html)`\u003c`[Node](/reference/kotlin/androidx/appsearch/ast/Node)`!\u003e` | An empty list of [Node](/reference/kotlin/androidx/appsearch/ast/Node) representing the child nodes. |"]]