Skip to content
Snippets Groups Projects
yang.go 1.06 MiB
Newer Older
  • Learn to ignore specific revisions
  • Manuel Kieweg's avatar
    Manuel Kieweg committed
    	// created.
    
    	if t.ConnectivityService == nil {
    		t.ConnectivityService = make(map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	key := ConnectivityServiceUuid
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    
    	if _, ok := t.ConnectivityService[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list ConnectivityService", key)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	t.ConnectivityService[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService{
    		ConnectivityServiceUuid: &ConnectivityServiceUuid,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return t.ConnectivityService[key], nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // NewEndPoint creates a new entry in the EndPoint list of the
    // TapiCommon_Context_ConnectivityContext_ConnectivityService struct. The keys of the list are populated from the input
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // arguments.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService) NewEndPoint(LocalId string) (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint, error){
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Initialise the list within the receiver struct if it has not already been
    	// created.
    
    	if t.EndPoint == nil {
    		t.EndPoint = make(map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	key := LocalId
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    
    	if _, ok := t.EndPoint[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list EndPoint", key)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	t.EndPoint[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint{
    		LocalId: &LocalId,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return t.EndPoint[key], nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // NewName creates a new entry in the Name list of the
    // TapiCommon_Context_ConnectivityContext_ConnectivityService struct. The keys of the list are populated from the input
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // arguments.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService) NewName(ValueName string) (*TapiCommon_Context_ConnectivityContext_ConnectivityService_Name, error){
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Initialise the list within the receiver struct if it has not already been
    	// created.
    
    	if t.Name == nil {
    		t.Name = make(map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_Name)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	key := ValueName
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    
    	if _, ok := t.Name[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list Name", key)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	t.Name[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_Name{
    		ValueName: &ValueName,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return t.Name[key], nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // NewTopologyConstraint creates a new entry in the TopologyConstraint list of the
    // TapiCommon_Context_ConnectivityContext_ConnectivityService struct. The keys of the list are populated from the input
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // arguments.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService) NewTopologyConstraint(LocalId string) (*TapiCommon_Context_ConnectivityContext_ConnectivityService_TopologyConstraint, error){
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Initialise the list within the receiver struct if it has not already been
    	// created.
    
    	if t.TopologyConstraint == nil {
    		t.TopologyConstraint = make(map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_TopologyConstraint)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	key := LocalId
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    
    	if _, ok := t.TopologyConstraint[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list TopologyConstraint", key)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	t.TopologyConstraint[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_TopologyConstraint{
    		LocalId: &LocalId,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return t.TopologyConstraint[key], nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService) ΛListKeyMap() (map[string]interface{}, error) {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	if t.Uuid == nil {
    		return nil, fmt.Errorf("nil value for key Uuid")
    	}
    
    	return map[string]interface{}{
    		"uuid": *t.Uuid,
    	}, nil
    }
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection represents the /tapi-common/context/connectivity-context/connectivity-service/connection YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection struct {
    	ConnectionUuid	*string	`path:"connection-uuid" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection) ΛListKeyMap() (map[string]interface{}, error) {
    	if t.ConnectionUuid == nil {
    		return nil, fmt.Errorf("nil value for key ConnectionUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    	return map[string]interface{}{
    
    		"connection-uuid": *t.ConnectionUuid,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}, nil
    }
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_Connection) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-constraint YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint struct {
    	ConnectionExclusion	[]string	`path:"connection-exclusion" module:"tapi-connectivity"`
    	ConnectionInclusion	[]string	`path:"connection-inclusion" module:"tapi-connectivity"`
    	CorouteInclusion	*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion	`path:"coroute-inclusion" module:"tapi-connectivity"`
    	DiversityExclusion	map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion	`path:"diversity-exclusion" module:"tapi-connectivity"`
    	RequestedCapacity	*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity	`path:"requested-capacity" module:"tapi-connectivity"`
    	Schedule	*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule	`path:"schedule" module:"tapi-connectivity"`
    	ServiceLevel	*string	`path:"service-level" module:"tapi-connectivity"`
    	ServiceType	E_TapiConnectivity_ServiceType	`path:"service-type" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint) IsYANGGoStruct() {}
    
    // NewDiversityExclusion creates a new entry in the DiversityExclusion list of the
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint struct. The keys of the list are populated from the input
    // arguments.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint) NewDiversityExclusion(ConnectivityServiceUuid string) (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion, error){
    
    	// Initialise the list within the receiver struct if it has not already been
    	// created.
    	if t.DiversityExclusion == nil {
    		t.DiversityExclusion = make(map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion)
    	}
    
    	key := ConnectivityServiceUuid
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    	if _, ok := t.DiversityExclusion[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list DiversityExclusion", key)
    	}
    
    	t.DiversityExclusion[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion{
    		ConnectivityServiceUuid: &ConnectivityServiceUuid,
    	}
    
    	return t.DiversityExclusion[key], nil
    }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-constraint/coroute-inclusion YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion struct {
    	ConnectivityServiceUuid	*string	`path:"connectivity-service-uuid" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_CorouteInclusion) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-constraint/diversity-exclusion YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion struct {
    	ConnectivityServiceUuid	*string	`path:"connectivity-service-uuid" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion) ΛListKeyMap() (map[string]interface{}, error) {
    	if t.ConnectivityServiceUuid == nil {
    		return nil, fmt.Errorf("nil value for key ConnectivityServiceUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    	return map[string]interface{}{
    
    		"connectivity-service-uuid": *t.ConnectivityServiceUuid,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}, nil
    }
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_DiversityExclusion) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-constraint/requested-capacity YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity struct {
    	TotalSize	*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize	`path:"total-size" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-constraint/requested-capacity/total-size YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize struct {
    	Unit	E_TapiCommon_CapacityUnit	`path:"unit" module:"tapi-connectivity"`
    	Value	*uint64	`path:"value" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize"], t, opts...); err != nil {
    		return err
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_RequestedCapacity_TotalSize) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-constraint/schedule YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule struct {
    	EndTime	*string	`path:"end-time" module:"tapi-connectivity"`
    	StartTime	*string	`path:"start-time" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule) IsYANGGoStruct() {}
    
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityConstraint_Schedule) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService represents the /tapi-common/context/connectivity-context/connectivity-service/connectivity-service YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService struct {
    	ConnectivityServiceUuid	*string	`path:"connectivity-service-uuid" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService) ΛListKeyMap() (map[string]interface{}, error) {
    	if t.ConnectivityServiceUuid == nil {
    		return nil, fmt.Errorf("nil value for key ConnectivityServiceUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    	return map[string]interface{}{
    
    		"connectivity-service-uuid": *t.ConnectivityServiceUuid,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}, nil
    }
    
    // Validate validates s against the YANG schema corresponding to its type.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService"], t, opts...); err != nil {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_ConnectivityService) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint represents the /tapi-common/context/connectivity-context/connectivity-service/end-point YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint struct {
    	AdministrativeState	E_TapiCommon_AdministrativeState	`path:"administrative-state" module:"tapi-connectivity"`
    	Capacity	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity	`path:"capacity" module:"tapi-connectivity"`
    	ConnectionEndPoint	map[TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint_Key]*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint	`path:"connection-end-point" module:"tapi-connectivity"`
    	Direction	E_TapiConnectivity_PortDirection	`path:"direction" module:"tapi-connectivity"`
    	LayerProtocolName	E_TapiConnectivity_LayerProtocolName	`path:"layer-protocol-name" module:"tapi-connectivity"`
    	LayerProtocolQualifier	E_TapiConnectivity_LayerProtocolQualifier	`path:"layer-protocol-qualifier" module:"tapi-connectivity"`
    	LifecycleState	E_TapiCommon_LifecycleState	`path:"lifecycle-state" module:"tapi-connectivity"`
    	LocalId	*string	`path:"local-id" module:"tapi-connectivity"`
    
    	MediaChannelConnectivityServiceEndPointSpec	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec	`path:"media-channel-connectivity-service-end-point-spec" module:"tapi-photonic-media"`
    
    	Name	map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name	`path:"name" module:"tapi-connectivity"`
    	OperationalState	E_TapiCommon_OperationalState	`path:"operational-state" module:"tapi-connectivity"`
    
    	OtsiConnectivityServiceEndPointSpec	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec	`path:"otsi-connectivity-service-end-point-spec" module:"tapi-photonic-media"`
    
    	PeerFwdConnectivityServiceEndPoint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_PeerFwdConnectivityServiceEndPoint	`path:"peer-fwd-connectivity-service-end-point" module:"tapi-connectivity"`
    	ProtectingConnectivityServiceEndPoint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ProtectingConnectivityServiceEndPoint	`path:"protecting-connectivity-service-end-point" module:"tapi-connectivity"`
    	ProtectionRole	E_TapiConnectivity_ProtectionRole	`path:"protection-role" module:"tapi-connectivity"`
    	Role	E_TapiConnectivity_PortRole	`path:"role" module:"tapi-connectivity"`
    	ServerConnectivityServiceEndPoint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ServerConnectivityServiceEndPoint	`path:"server-connectivity-service-end-point" module:"tapi-connectivity"`
    	ServiceInterfacePoint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ServiceInterfacePoint	`path:"service-interface-point" module:"tapi-connectivity"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint implements the yang.GoStruct
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint_Key represents the key for list ConnectionEndPoint of element /tapi-common/context/connectivity-context/connectivity-service/end-point.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint_Key struct {
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	TopologyUuid	string	`path:"topology-uuid"`
    	NodeUuid	string	`path:"node-uuid"`
    	NodeEdgePointUuid	string	`path:"node-edge-point-uuid"`
    
    	ConnectionEndPointUuid	string	`path:"connection-end-point-uuid"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // NewConnectionEndPoint creates a new entry in the ConnectionEndPoint list of the
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint struct. The keys of the list are populated from the input
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // arguments.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint) NewConnectionEndPoint(TopologyUuid string, NodeUuid string, NodeEdgePointUuid string, ConnectionEndPointUuid string) (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint, error){
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Initialise the list within the receiver struct if it has not already been
    	// created.
    
    	if t.ConnectionEndPoint == nil {
    		t.ConnectionEndPoint = make(map[TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint_Key]*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	key := TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint_Key{
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		TopologyUuid: TopologyUuid,
    		NodeUuid: NodeUuid,
    
    		NodeEdgePointUuid: NodeEdgePointUuid,
    		ConnectionEndPointUuid: ConnectionEndPointUuid,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    
    	if _, ok := t.ConnectionEndPoint[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list ConnectionEndPoint", key)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	t.ConnectionEndPoint[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint{
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    		TopologyUuid: &TopologyUuid,
    		NodeUuid: &NodeUuid,
    
    		NodeEdgePointUuid: &NodeEdgePointUuid,
    		ConnectionEndPointUuid: &ConnectionEndPointUuid,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return t.ConnectionEndPoint[key], nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // NewName creates a new entry in the Name list of the
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint struct. The keys of the list are populated from the input
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    // arguments.
    
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint) NewName(ValueName string) (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name, error){
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Initialise the list within the receiver struct if it has not already been
    	// created.
    
    	if t.Name == nil {
    		t.Name = make(map[string]*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	key := ValueName
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    	// Ensure that this key has not already been used in the
    	// list. Keyed YANG lists do not allow duplicate keys to
    	// be created.
    
    	if _, ok := t.Name[key]; ok {
    		return nil, fmt.Errorf("duplicate key %v for list Name", key)
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	t.Name[key] = &TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name{
    		ValueName: &ValueName,
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return t.Name[key], nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint) ΛListKeyMap() (map[string]interface{}, error) {
    	if t.LocalId == nil {
    		return nil, fmt.Errorf("nil value for key LocalId")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return map[string]interface{}{
    		"local-id": *t.LocalId,
    	}, nil
    }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint"], t, opts...); err != nil {
    		return err
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/capacity YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity struct {
    	TotalSize	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize	`path:"total-size" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity"], t, opts...); err != nil {
    		return err
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/capacity/total-size YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize struct {
    	Unit	E_TapiCommon_CapacityUnit	`path:"unit" module:"tapi-connectivity"`
    	Value	*uint64	`path:"value" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize"], t, opts...); err != nil {
    		return err
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Capacity_TotalSize) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/connection-end-point YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint struct {
    	ConnectionEndPointUuid	*string	`path:"connection-end-point-uuid" module:"tapi-connectivity"`
    	NodeEdgePointUuid	*string	`path:"node-edge-point-uuid" module:"tapi-connectivity"`
    	NodeUuid	*string	`path:"node-uuid" module:"tapi-connectivity"`
    	TopologyUuid	*string	`path:"topology-uuid" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint) ΛListKeyMap() (map[string]interface{}, error) {
    	if t.ConnectionEndPointUuid == nil {
    		return nil, fmt.Errorf("nil value for key ConnectionEndPointUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	if t.NodeEdgePointUuid == nil {
    		return nil, fmt.Errorf("nil value for key NodeEdgePointUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	if t.NodeUuid == nil {
    		return nil, fmt.Errorf("nil value for key NodeUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	if t.TopologyUuid == nil {
    		return nil, fmt.Errorf("nil value for key TopologyUuid")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return map[string]interface{}{
    		"connection-end-point-uuid": *t.ConnectionEndPointUuid,
    		"node-edge-point-uuid": *t.NodeEdgePointUuid,
    		"node-uuid": *t.NodeUuid,
    		"topology-uuid": *t.TopologyUuid,
    	}, nil
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint"], t, opts...); err != nil {
    		return err
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_ConnectionEndPoint) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec struct {
    	McConfig	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig	`path:"mc-config" module:"tapi-photonic-media"`
    	PowerManagementConfig	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig	`path:"power-management-config" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/mc-config YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig struct {
    	Spectrum	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum	`path:"spectrum" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/mc-config/spectrum YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum struct {
    	FrequencyConstraint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint	`path:"frequency-constraint" module:"tapi-photonic-media"`
    	LowerFrequency	*uint64	`path:"lower-frequency" module:"tapi-photonic-media"`
    	UpperFrequency	*uint64	`path:"upper-frequency" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/mc-config/spectrum/frequency-constraint YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint struct {
    	AdjustmentGranularity	E_TapiPhotonicMedia_AdjustmentGranularity	`path:"adjustment-granularity" module:"tapi-photonic-media"`
    	GridType	E_TapiPhotonicMedia_GridType	`path:"grid-type" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_McConfig_Spectrum_FrequencyConstraint) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/power-management-config YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig struct {
    	ExpectedMaximumInputPower	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower	`path:"expected-maximum-input-power" module:"tapi-photonic-media"`
    	ExpectedMinimumInputPower	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower	`path:"expected-minimum-input-power" module:"tapi-photonic-media"`
    	IntendedMaximumOutputPower	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower	`path:"intended-maximum-output-power" module:"tapi-photonic-media"`
    	IntendedMinimumOutputPower	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower	`path:"intended-minimum-output-power" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/power-management-config/expected-maximum-input-power YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower struct {
    	PowerSpectralDensity	*float64	`path:"power-spectral-density" module:"tapi-photonic-media"`
    	TotalPower	*float64	`path:"total-power" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMaximumInputPower) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/power-management-config/expected-minimum-input-power YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower struct {
    	PowerSpectralDensity	*float64	`path:"power-spectral-density" module:"tapi-photonic-media"`
    	TotalPower	*float64	`path:"total-power" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_ExpectedMinimumInputPower) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/power-management-config/intended-maximum-output-power YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower struct {
    	PowerSpectralDensity	*float64	`path:"power-spectral-density" module:"tapi-photonic-media"`
    	TotalPower	*float64	`path:"total-power" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMaximumOutputPower) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/media-channel-connectivity-service-end-point-spec/power-management-config/intended-minimum-output-power YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower struct {
    	PowerSpectralDensity	*float64	`path:"power-spectral-density" module:"tapi-photonic-media"`
    	TotalPower	*float64	`path:"total-power" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_MediaChannelConnectivityServiceEndPointSpec_PowerManagementConfig_IntendedMinimumOutputPower) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/name YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name struct {
    	Value	*string	`path:"value" module:"tapi-connectivity"`
    	ValueName	*string	`path:"value-name" module:"tapi-connectivity"`
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name) IsYANGGoStruct() {}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // ΛListKeyMap returns the keys of the TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name struct, which is a YANG list entry.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name) ΛListKeyMap() (map[string]interface{}, error) {
    	if t.ValueName == nil {
    		return nil, fmt.Errorf("nil value for key ValueName")
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    
    	return map[string]interface{}{
    		"value-name": *t.ValueName,
    	}, nil
    }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name"], t, opts...); err != nil {
    		return err
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    	}
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    }
    
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_Name) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    Manuel Kieweg's avatar
    Manuel Kieweg committed
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/otsi-connectivity-service-end-point-spec YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec struct {
    	OtsiConfig	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig	`path:"otsi-config" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/otsi-connectivity-service-end-point-spec/otsi-config YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig struct {
    	ApplicationIdentifier	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier	`path:"application-identifier" module:"tapi-photonic-media"`
    	CentralFrequency	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency	`path:"central-frequency" module:"tapi-photonic-media"`
    	LaserControl	E_TapiPhotonicMedia_LaserControlType	`path:"laser-control" module:"tapi-photonic-media"`
    	Modulation	E_TapiPhotonicMedia_ModulationTechnique	`path:"modulation" module:"tapi-photonic-media"`
    	Spectrum	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum	`path:"spectrum" module:"tapi-photonic-media"`
    	TotalPowerWarnThresholdLower	*float64	`path:"total-power-warn-threshold-lower" module:"tapi-photonic-media"`
    	TotalPowerWarnThresholdUpper	*float64	`path:"total-power-warn-threshold-upper" module:"tapi-photonic-media"`
    	TransmitPower	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_TransmitPower	`path:"transmit-power" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/otsi-connectivity-service-end-point-spec/otsi-config/application-identifier YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier struct {
    	ApplicationCode	*string	`path:"application-code" module:"tapi-photonic-media"`
    	ApplicationIdentifierType	E_TapiPhotonicMedia_ApplicationIdentifierType	`path:"application-identifier-type" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_ApplicationIdentifier) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/otsi-connectivity-service-end-point-spec/otsi-config/central-frequency YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency struct {
    	CentralFrequency	*uint64	`path:"central-frequency" module:"tapi-photonic-media"`
    	FrequencyConstraint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint	`path:"frequency-constraint" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/otsi-connectivity-service-end-point-spec/otsi-config/central-frequency/frequency-constraint YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint struct {
    	AdjustmentGranularity	E_TapiPhotonicMedia_AdjustmentGranularity	`path:"adjustment-granularity" module:"tapi-photonic-media"`
    	GridType	E_TapiPhotonicMedia_GridType	`path:"grid-type" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_CentralFrequency_FrequencyConstraint) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }
    
    
    // TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum represents the /tapi-common/context/connectivity-context/connectivity-service/end-point/otsi-connectivity-service-end-point-spec/otsi-config/spectrum YANG schema element.
    type TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum struct {
    	FrequencyConstraint	*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum_FrequencyConstraint	`path:"frequency-constraint" module:"tapi-photonic-media"`
    	LowerFrequency	*uint64	`path:"lower-frequency" module:"tapi-photonic-media"`
    	UpperFrequency	*uint64	`path:"upper-frequency" module:"tapi-photonic-media"`
    }
    
    // IsYANGGoStruct ensures that TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum implements the yang.GoStruct
    // interface. This allows functions that need to handle this struct to
    // identify it as being generated by ygen.
    func (*TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum) IsYANGGoStruct() {}
    
    // Validate validates s against the YANG schema corresponding to its type.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum) Validate(opts ...ygot.ValidationOption) error {
    	if err := ytypes.Validate(SchemaTree["TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum"], t, opts...); err != nil {
    		return err
    	}
    	return nil
    }
    
    // ΛEnumTypeMap returns a map, keyed by YANG schema path, of the enumerated types
    // that are included in the generated code.
    func (t *TapiCommon_Context_ConnectivityContext_ConnectivityService_EndPoint_OtsiConnectivityServiceEndPointSpec_OtsiConfig_Spectrum) ΛEnumTypeMap() map[string][]reflect.Type { return ΛEnumTypes }