Package org.opendaylight.yangtools.yang.model.api
Definition of structures and DOM like API of effected YANG schema.
This package is structured into following logical units:
- YANG Meta model
- Meta model of YANG, which defines basic concepts and building blocks of YANG models
such as
ModelStatement
. - YANG Statement model
- Concrete java model of YANG statements, which defines basic relationship between statements and represents these statements.
- YANG Effective model
- Effective model of processed YANG models, which represents semantic interpretation of YANG models and provides convenience views for interpreting models.
YANG Effective model
Effective model statement mapping
- anyxml
AnyxmlSchemaNode
- argument
ExtensionDefinition.getArgument()
- augment
AugmentationSchemaNode
- base
IdentityrefTypeDefinition.getIdentities()
- belongs-to
SubmoduleStatement.getBelongsTo()
- bit
BitsTypeDefinition.Bit
BitsTypeDefinition.getBits()
- case
CaseSchemaNode
- choice
ChoiceSchemaNode
- config
DataSchemaNode.isConfiguration()
- contact
ModuleLike.getContact()
- container
ContainerSchemaNode
- default
TypeDefinition.getDefaultValue()
- description
DocumentedNode.getDescription()
DocumentedNode.getDescription()
- enum
EnumTypeDefinition.EnumPair
EnumTypeDefinition.getValues()
- error-app-tag
ConstraintMetaDefinition.getErrorAppTag()
- error-message
ConstraintMetaDefinition.getErrorMessage()
- extension
ExtensionDefinition
- deviation
Deviation
- deviate
DeviateKind
- feature
FeatureDefinition
- fraction-digits
DecimalTypeDefinition.getFractionDigits()
- grouping
GroupingDefinition
- identity
IdentitySchemaNode
- if-feature
IfFeatureStatement
- import
ModuleImport
- include
IncludeStatement
- input
OperationDefinition.getInput()
- key
ListSchemaNode.getKeyDefinition()
- leaf
LeafSchemaNode
- leaf-list
LeafListSchemaNode
- length
LengthConstraint
LengthRestrictedTypeDefinition.getLengthConstraint()
- list
ListSchemaNode
- mandatory
MandatoryAware.isMandatory()
- max-elements
ElementCountConstraint.getMinElements()
- min-elements
ElementCountConstraint.getMaxElements()
- module
Module
- must
MustConstraintAware.getMustConstraints()
MustDefinition
- namespace
QNameModuleAware.getNamespace()
- notification
NotificationDefinition
- ordered-by
ListSchemaNode.isUserOrdered()
LeafListSchemaNode.isUserOrdered()
- organization
ModuleLike.getOrganization()
- output
OperationDefinition.getOutput()
- path
LeafrefTypeDefinition.getPathStatement()
- pattern
PatternConstraint
StringTypeDefinition
- position
BitsTypeDefinition.Bit.getPosition()
- prefix
ModuleLike.getPrefix()
ModuleImport.getPrefix()
- presence
ContainerSchemaNode.isPresenceContainer()
- range
RangeConstraint
RangeRestrictedTypeDefinition.getRangeConstraint()
- reference
DocumentedNode.getReference()
- refine
RefineStatement
- require-instance
RequireInstanceRestrictedTypeDefinition.requireInstance()
- revision
QNameModuleAware.getRevision()
- revision-date
ModuleImport.getRevision()
- rpc
RpcDefinition
- status
DocumentedNode.WithStatus.getStatus()
- submodule
SubmoduleStatement
- type
TypeDefinition
TypedDataSchemaNode.getType()
TypedDataSchemaNode.getType()
- typedef
TypeDefinition
- unique
UniqueEffectiveStatement
- units
TypeDefinition.getUnits()
- uses
UsesNode
DataNodeContainer.getUses()
- value
EnumTypeDefinition.EnumPair.getValue()
- when
WhenConditionAware.getWhenCondition()
- yang-version
ModuleLike.getYangVersion()
- yin-element
ExtensionDefinition.isYinElement()
- add
DeviateKind.ADD
- current
Status.CURRENT
- delete
DeviateKind.DELETE
- deprecated
Status.DEPRECATED
- false
Boolean.FALSE
- max
- Not exposed
- min
- Not exposed
- not-supported
DeviateKind.NOT_SUPPORTED
- obsolete
Status.OBSOLETE
- replace
DeviateKind.REPLACE
- system
ListSchemaNode.isUserOrdered()
- true
Boolean.TRUE
- unbounded
- Not exposed
- user
ListSchemaNode.isUserOrdered()
YANG Base Type Mapping
- Int8 built-in type
Int8TypeDefinition
- Int16 built-in type
Int16TypeDefinition
- Int32 built-in type
Int32TypeDefinition
- Int64 built-in type
Int64TypeDefinition
- Uint8 built-in type
Uint8TypeDefinition
- Uint16 built-in type
Uint16TypeDefinition
- Uint32 built-in type
Uint32TypeDefinition
- Uint64 built-in type
Uint64TypeDefinition
- Decimal64 built-in type
DecimalTypeDefinition
- Boolean built-in type
BooleanTypeDefinition
- Enumeration built-in type
EnumTypeDefinition
- Bits Built-In Type
BitsTypeDefinition
- The binary Built-In Type
BinaryTypeDefinition
- The leafref Built-In Type
LeafrefTypeDefinition
- The identityref Built-In Type
IdentityrefTypeDefinition
- The empty Built-In Type
EmptyTypeDefinition
- The union Built-In Type
UnionTypeDefinition
- The instance-identifier Built-In Type
InstanceIdentifierTypeDefinition
-
Interface Summary Interface Description ActionDefinition Represents YANG action statement.ActionNodeContainer Node which can contain action nodes.AddedByUsesAware Deprecated. The only user of this trait is MD-SAL's binding component.AnydataSchemaNode The "anydata" statement defines an interior node in the schema tree.AnyxmlSchemaNode The "anyxml" interface defines an interior node in the schema tree.AugmentationSchemaNode AugmentationSchema represents augment definition.AugmentationTarget Interface for all nodes which are possible targets of augmentation.CaseSchemaNode The CaseSchemaNode interface is used to define branches of the ChoiceSchemaNode.ChoiceSchemaNode A ChoiceSchemaNode defines a set of alternatives.ConstraintMetaDefinition Contains methods which retrieve values for description, error message, error app tag and reference (to some external definition, resource or similar).ContainerLike Common interface for common container-like constructs.ContainerSchemaNode The ContainerSchemaNode is used to define an interior data node in the schema tree.CopyableNode Represents a node that can be added by uses or by augmentation.DataNodeContainer Node which can contains other nodes.DataSchemaNode Data Schema Node represents abstract supertype from which all data tree definitions are derived.DerivableSchemaNode Deprecated, for removal: This API element is subject to removal in a future version. This interface's sole purpose is to aid MD-SAL binding generator, which is now in a position to provide to implement its logic without this interface.DeviateDefinition Interface describing YANG 'deviate' statement.Deviation Interface describing YANG 'deviation' statement.DocumentedNode Node which can have documentation assigned.DocumentedNode.WithStatus EffectiveModelContext EffectiveStatement
-based result of YANG parser compilation.EffectiveModelContextListener Interface for listeners interested in updates of an EffectiveModelContext.EffectiveModelContextProvider A static provider of anEffectiveModelContext
.EffectiveStatementEquivalent<E extends EffectiveStatement<?,?>> Marker interface for objects which have an equivalent EffectiveStatement.EffectiveStatementInference A base class of anEffectiveModelContext
context reasoning with regards to what logical sequence ofEffectiveStatement
s were considered.ElementCountConstraintAware Common interface for list-like nodes, which can optionally have constraints on the number of direct children.ExtensionDefinition Contains the methods for getting the data which are part of the YANGextensoion
statement.FeatureDefinition Interface describing YANG 'feature' statement.GroupingDefinition Interface describing YANG 'grouping' statement.IdentitySchemaNode Interface describing YANG 'identity' statement.InputSchemaNode LeafListSchemaNode Interface describing YANG 'leaf-list' statement.LeafSchemaNode Interface describing YANGleaf
statement.ListSchemaNode Interface describing YANG 'list' statement.MandatoryAware Mix-in interface forSchemaNode
s which can have amandatory
statement.Module This interface contains the methods for getting the data from the YANG module.ModuleImport Interface describing YANG 'import' statement.ModuleLike This interface contains common methods for getting the schema contents from a YANG module or submodule.MustConstraintAware Mix-in interface for nodes which can define must constraints.MustDefinition Contains methods for accessing constraint declaration for valid data in form of XPath expressions.
YANG example:
must "ifType != 'ethernet' or (ifType = 'ethernet' and ifMTU = 1500)";
NotificationDefinition Interface describing YANG 'notification' statement.NotificationNodeContainer OperationDefinition Common interface for an operation.OutputSchemaNode PathExpression An expression as defined in RFC7950 Section 9.9.2, i.e.QNameModuleAware RpcDefinition Interface describing YANG 'rpc' statement.SchemaContext The interface represents static view of compiled yang files, contains the methods for obtaining all the top level context data (data from all modules) like YANG notifications, extensions, operations...SchemaContextListener Interface for listeners interested in updates of the global schema context.SchemaNode SchemaNode represents a node in schema tree.SchemaTreeInference AnEffectiveStatementInference
consisting purely of steps along theschema tree
axis, so that it represents aschema tree node
based on resolution ofabsolute-schema-nodeid
as specified by RFC7950 section 6.5.Submodule This interface contains the methods for getting the data from the YANG submodule.TypeAware Marker interface for SchemaNodes which store simple data, for which we have type information.TypedDataSchemaNode ADataSchemaNode
which holds values of the same type.TypeDefinition<T extends TypeDefinition<?>> YANG statementtypedef
contains also substatementsdefault
- default value which is compatible withtype
,type
- base type from which istypedef
derived,units
- textual information about units associated with this type. This interface contains the methods for getting the values of the arguments of substatements mentioned above.UnknownSchemaNode Contains the methods for getting the details about the unknown node.UsesNode Contains the methods for getting data and checking properties of the YANGuses
substatement.WhenConditionAware Mix-in interface for nodes which can be conditional on a when statement. -
Class Summary Class Description ElementCountConstraint Contains method which returns various data constraints for a list-like YANG element (e.g.PathExpression.DerefSteps Steps of a PathExpression which is a combination ofderef()
function call and a relative path, corresponding to Errata 5617.PathExpression.LocationPathSteps Steps of a PathExpression which is a LocationPath, corresponding to RFC7950 base specification.PathExpression.Steps Abstract base class for expressing steps of a PathExpression.SchemaNodeDefaults SchemaPath Deprecated. This path is not really unique, as it does not handle YANG namespace overlap correctly. -
Enum Summary Enum Description DeviateKind Enum describing YANG deviation 'deviate' statement.Status Enumeration describing YANG 'status' statement.YangStmtMapping Mapping for both RFC6020 and RFC7950 statements.