<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic ERROR - Data is invalid according to the yang model when configuration openconfig bgp and ios-xr in Tools</title>
    <link>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3815236#M2229</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm been trying to figure out why I'm getting the following error.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;:python -u /opt/project/bgp_oc_gnmi_create.py -v -i pr04.lab01 -g 57777 -u user -p password-y /opt/project/yang/vendor/cisco/xr/651&lt;BR /&gt;2019-03-06 19:15:47,367 - ydk - ERROR - Data is invalid according to the yang model. Libyang error: Invalid value "198.168.1.2" in "neighbor-address" element. Path: '/openconfig-network-instance:network-instances/network-instance[name='default']/protocols/protocol[identifier='openconfig-policy-types:BGP'][name='default']/bgp/neighbors/neighbor[neighbor-address='198.168.1.2']/neighbor-address'&lt;BR /&gt;Traceback (most recent call last):&lt;BR /&gt;File "/opt/project/bgp_oc_gnmi_create.py", line 121, in &amp;lt;module&amp;gt;&lt;BR /&gt;crud.create(provider, bgp_ni)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/errors/error_handler.py", line 112, in helper&lt;BR /&gt;return func(self, provider, entity, *args, **kwargs)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/services/crud_service.py", line 49, in create&lt;BR /&gt;return self._crud.create(provider, entity)&lt;BR /&gt;File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__&lt;BR /&gt;self.gen.throw(type, value, traceback)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/errors/error_handler.py", line 82, in handle_runtime_error&lt;BR /&gt;_raise(_exc)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/errors/error_handler.py", line 56, in _raise&lt;BR /&gt;raise exc&lt;BR /&gt;ydk.errors.YModelError: Invalid value "198.168.1.2" in "neighbor-address" element. Path: /openconfig-network-instance:network-instances/network-instance[name='default']/protocols/protocol[identifier='openconfig-policy-types:BGP'][name='default']/bgp/neighbors/neighbor[neighbor-address='198.168.1.2']/neighbor-address&lt;BR /&gt;2019-03-06 19:15:47,376 - ydk - INFO - Disconnected from device&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;What it seems, I'm&amp;nbsp;building the path incorrectly but based on the yang model, I don't know what I'm missing.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt; Wed Mar 6 21:20:27.629 UTC&lt;BR /&gt;Cisco IOS XR Software, Version 6.5.1&lt;BR /&gt;Copyright (c) 2013-2018 by Cisco Systems, Inc.&lt;BR /&gt;&lt;BR /&gt;Build Information:&lt;BR /&gt;Built By : ahoang&lt;BR /&gt;Built On : Wed Aug 8 17:10:43 PDT 2018&lt;BR /&gt;Built Host : iox-ucs-025&lt;BR /&gt;Workspace : /auto/srcarchive17/prod/6.5.1/ncs5500/ws&lt;BR /&gt;Version : 6.5.1&lt;BR /&gt;Location : /opt/cisco/XR/packages/&lt;BR /&gt;&lt;BR /&gt;cisco NCS-5500 () processor&lt;BR /&gt;System uptime is 5 weeks 6 days 20 hours 4 minutes&lt;/PRE&gt;&lt;P&gt;This is the code i'm trying to get it to work, basically the idea is to push bgp peer/config into a lab device.&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;#!/usr/bin/env python&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# Copyright 2019 Cisco Systems, Inc.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# Licensed under the Apache License, Version 2.0 (the "License");&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# you may not use this file except in compliance with the License.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# You may obtain a copy of the License at&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#     http://www.apache.org/licenses/LICENSE-2.0&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# Unless required by applicable law or agreed to in writing, software&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# distributed under the License is distributed on an "AS IS" BASIS,&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# See the License for the specific language governing permissions and&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# limitations under the License.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;import &lt;/SPAN&gt;logging&lt;BR /&gt;&lt;SPAN&gt;import &lt;/SPAN&gt;os&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;argparse &lt;SPAN&gt;import &lt;/SPAN&gt;ArgumentParser&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.gnmi.providers &lt;SPAN&gt;import &lt;/SPAN&gt;gNMIServiceProvider&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.path &lt;SPAN&gt;import &lt;/SPAN&gt;Repository&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.models.openconfig &lt;SPAN&gt;import &lt;/SPAN&gt;openconfig_network_instance &lt;SPAN&gt;as &lt;/SPAN&gt;oc_ni&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.services &lt;SPAN&gt;import &lt;/SPAN&gt;CRUDService&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.models.openconfig &lt;SPAN&gt;import &lt;/SPAN&gt;openconfig_policy_types &lt;SPAN&gt;as &lt;/SPAN&gt;oc_policy_types&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.models.openconfig &lt;SPAN&gt;import &lt;/SPAN&gt;openconfig_bgp_types &lt;SPAN&gt;as &lt;/SPAN&gt;oc_bgp_types&lt;BR /&gt;&lt;BR /&gt;bgp = {&lt;BR /&gt;       &lt;SPAN&gt;'vrf'&lt;/SPAN&gt;: &lt;SPAN&gt;'default'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'as'&lt;/SPAN&gt;: &lt;SPAN&gt;'65000'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'router_id'&lt;/SPAN&gt;: &lt;SPAN&gt;'104.160.139.133'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'peer-group-name'&lt;/SPAN&gt;: &lt;SPAN&gt;'gNMI SET TEST'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'peer-as'&lt;/SPAN&gt;: &lt;SPAN&gt;'65000'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'peer-group-local-address'&lt;/SPAN&gt;: &lt;SPAN&gt;'192.168.1.1'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'neighbor'&lt;/SPAN&gt;: &lt;SPAN&gt;'198.168.1.2'&lt;BR /&gt;&lt;/SPAN&gt;        }&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;def &lt;/SPAN&gt;&lt;SPAN&gt;config_oc_bgp_ipv4&lt;/SPAN&gt;():&lt;BR /&gt;    ni = oc_ni.NetworkInstances.NetworkInstance()&lt;BR /&gt;    ni.name = bgp[&lt;SPAN&gt;"vrf"&lt;/SPAN&gt;]&lt;BR /&gt;&lt;BR /&gt;    protocol = ni.Protocols.Protocol()&lt;BR /&gt;    protocol.identifier = oc_policy_types.BGP()&lt;BR /&gt;    protocol.name = bgp[&lt;SPAN&gt;"vrf"&lt;/SPAN&gt;]&lt;BR /&gt;    protocol.config.identifier = oc_policy_types.BGP()&lt;BR /&gt;    protocol.config.name = bgp[&lt;SPAN&gt;"vrf"&lt;/SPAN&gt;]&lt;BR /&gt;    protocol.bgp.global_.config.as_ = &lt;SPAN&gt;int&lt;/SPAN&gt;(bgp[&lt;SPAN&gt;'as'&lt;/SPAN&gt;])&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;# Global bgp parameters&lt;BR /&gt;&lt;/SPAN&gt;    afi_safi = protocol.bgp.global_.afi_safis.AfiSafi()&lt;BR /&gt;    afi_safi.afi_safi_name = oc_bgp_types.IPV4UNICAST()&lt;BR /&gt;    afi_safi.config.enabled = &lt;SPAN&gt;True&lt;BR /&gt;&lt;/SPAN&gt;    protocol.bgp.global_.afi_safis.afi_safi.append(afi_safi)&lt;BR /&gt;    &lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;    # peer-group and address family&lt;BR /&gt;&lt;/SPAN&gt;    peer_group = protocol.bgp.peer_groups.PeerGroup()&lt;BR /&gt;    peer_group.peer_group_name = bgp[&lt;SPAN&gt;"peer-group-name"&lt;/SPAN&gt;]&lt;BR /&gt;    peer_group.config.peer_group_name = bgp[&lt;SPAN&gt;"peer-group-name"&lt;/SPAN&gt;]&lt;BR /&gt;    peer_group.config.peer_as = &lt;SPAN&gt;int&lt;/SPAN&gt;(bgp[&lt;SPAN&gt;"peer-as"&lt;/SPAN&gt;])&lt;BR /&gt;    peer_group.transport.config.local_address = bgp[&lt;SPAN&gt;"peer-group-local-address"&lt;/SPAN&gt;]&lt;BR /&gt;    afi_safi = peer_group.afi_safis.AfiSafi()&lt;BR /&gt;    afi_safi.afi_safi_name = oc_bgp_types.IPV4UNICAST()&lt;BR /&gt;    afi_safi.config.enabled = &lt;SPAN&gt;True&lt;BR /&gt;&lt;/SPAN&gt;    peer_group.afi_safis.afi_safi.append(afi_safi)&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;# bgp neighbor with peer-group&lt;BR /&gt;&lt;/SPAN&gt;    neighbor = protocol.bgp.neighbors.Neighbor()&lt;BR /&gt;    neighbor.neighbor_address = bgp[&lt;SPAN&gt;"neighbor"&lt;/SPAN&gt;]&lt;BR /&gt;    neighbor.config.neighbor_address = bgp[&lt;SPAN&gt;"neighbor"&lt;/SPAN&gt;]  &lt;SPAN&gt;# type: &lt;/SPAN&gt;&lt;SPAN&gt;str&lt;BR /&gt;&lt;/SPAN&gt;    neighbor.config.peer_group = bgp[&lt;SPAN&gt;"peer-group-name"&lt;/SPAN&gt;]&lt;BR /&gt;    &lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;    # Putting all together&lt;BR /&gt;&lt;/SPAN&gt;    protocol.bgp.peer_groups.peer_group.append(peer_group)&lt;BR /&gt;    protocol.bgp.neighbors.neighbor.append(neighbor)&lt;BR /&gt;    ni.protocols.protocol.append(protocol)&lt;BR /&gt;    &lt;SPAN&gt;return &lt;/SPAN&gt;ni&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;if &lt;/SPAN&gt;__name__ == &lt;SPAN&gt;"__main__"&lt;/SPAN&gt;:&lt;BR /&gt;    &lt;SPAN&gt;"""Execute main program."""&lt;BR /&gt;&lt;/SPAN&gt;    parser = ArgumentParser()&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;"-v"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"--verbose"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;"print debugging messages"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;"store_true"&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-i'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--grpc-ip'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'grpc_ip'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify the IOS-XR GRPC server IP address'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-g'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--grpc-port'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'grpc_port'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify the IOS-XR GRPC server port'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-u'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--username'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'username'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify username to connect to gRPC server on XR'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-p'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--password'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'password'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify password to connect to gRPC server on XR'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-y'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--yang-repo-path'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'yang_repo_location'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify yang repo path'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-e'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--extra-verbose'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store_true'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Extra Verbose logs'&lt;/SPAN&gt;)&lt;BR /&gt;    args = parser.parse_args()&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;# log debug messages if verbose argument specified&lt;BR /&gt;&lt;/SPAN&gt;    &lt;SPAN&gt;if &lt;/SPAN&gt;args.verbose:&lt;BR /&gt;        logger = logging.getLogger(&lt;SPAN&gt;"ydk"&lt;/SPAN&gt;)&lt;BR /&gt;        logger.setLevel(logging.INFO)&lt;BR /&gt;        handler = logging.StreamHandler()&lt;BR /&gt;        formatter = logging.Formatter((&lt;SPAN&gt;"%(asctime)s - %(name)s - "&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;                                       "%(levelname)s - %(message)s"&lt;/SPAN&gt;))&lt;BR /&gt;        handler.setFormatter(formatter)&lt;BR /&gt;        logger.addHandler(handler)&lt;BR /&gt;        &lt;SPAN&gt;if &lt;/SPAN&gt;args.extra_verbose:&lt;BR /&gt;            os.environ[&lt;SPAN&gt;'GRPC_TRACE'&lt;/SPAN&gt;] = &lt;SPAN&gt;'all'&lt;BR /&gt;&lt;/SPAN&gt;            os.environ[&lt;SPAN&gt;'GRPC_VERBOSITY'&lt;/SPAN&gt;] = &lt;SPAN&gt;'DEBUG'&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;    repository = Repository(args.yang_repo_location)&lt;BR /&gt;    provider = gNMIServiceProvider(&lt;SPAN&gt;repo&lt;/SPAN&gt;=repository&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;address&lt;/SPAN&gt;=args.grpc_ip&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;port&lt;/SPAN&gt;=&lt;SPAN&gt;int&lt;/SPAN&gt;(args.grpc_port)&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;username&lt;/SPAN&gt;=args.username&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;password&lt;/SPAN&gt;=args.password)&lt;BR /&gt;&lt;BR /&gt;    crud = CRUDService()&lt;BR /&gt;    bgp_ni = config_oc_bgp_ipv4()&lt;BR /&gt;    crud.create(provider&lt;SPAN&gt;, &lt;/SPAN&gt;bgp_ni)&lt;/PRE&gt;&lt;P&gt;thanks in advance for any pointers&lt;/P&gt;</description>
    <pubDate>Wed, 06 Mar 2019 21:31:44 GMT</pubDate>
    <dc:creator>jaime botello</dc:creator>
    <dc:date>2019-03-06T21:31:44Z</dc:date>
    <item>
      <title>ERROR - Data is invalid according to the yang model when configuration openconfig bgp and ios-xr</title>
      <link>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3815236#M2229</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I'm been trying to figure out why I'm getting the following error.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;:python -u /opt/project/bgp_oc_gnmi_create.py -v -i pr04.lab01 -g 57777 -u user -p password-y /opt/project/yang/vendor/cisco/xr/651&lt;BR /&gt;2019-03-06 19:15:47,367 - ydk - ERROR - Data is invalid according to the yang model. Libyang error: Invalid value "198.168.1.2" in "neighbor-address" element. Path: '/openconfig-network-instance:network-instances/network-instance[name='default']/protocols/protocol[identifier='openconfig-policy-types:BGP'][name='default']/bgp/neighbors/neighbor[neighbor-address='198.168.1.2']/neighbor-address'&lt;BR /&gt;Traceback (most recent call last):&lt;BR /&gt;File "/opt/project/bgp_oc_gnmi_create.py", line 121, in &amp;lt;module&amp;gt;&lt;BR /&gt;crud.create(provider, bgp_ni)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/errors/error_handler.py", line 112, in helper&lt;BR /&gt;return func(self, provider, entity, *args, **kwargs)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/services/crud_service.py", line 49, in create&lt;BR /&gt;return self._crud.create(provider, entity)&lt;BR /&gt;File "/usr/lib/python2.7/contextlib.py", line 35, in __exit__&lt;BR /&gt;self.gen.throw(type, value, traceback)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/errors/error_handler.py", line 82, in handle_runtime_error&lt;BR /&gt;_raise(_exc)&lt;BR /&gt;File "/usr/local/lib/python2.7/dist-packages/ydk/errors/error_handler.py", line 56, in _raise&lt;BR /&gt;raise exc&lt;BR /&gt;ydk.errors.YModelError: Invalid value "198.168.1.2" in "neighbor-address" element. Path: /openconfig-network-instance:network-instances/network-instance[name='default']/protocols/protocol[identifier='openconfig-policy-types:BGP'][name='default']/bgp/neighbors/neighbor[neighbor-address='198.168.1.2']/neighbor-address&lt;BR /&gt;2019-03-06 19:15:47,376 - ydk - INFO - Disconnected from device&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;What it seems, I'm&amp;nbsp;building the path incorrectly but based on the yang model, I don't know what I'm missing.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt; Wed Mar 6 21:20:27.629 UTC&lt;BR /&gt;Cisco IOS XR Software, Version 6.5.1&lt;BR /&gt;Copyright (c) 2013-2018 by Cisco Systems, Inc.&lt;BR /&gt;&lt;BR /&gt;Build Information:&lt;BR /&gt;Built By : ahoang&lt;BR /&gt;Built On : Wed Aug 8 17:10:43 PDT 2018&lt;BR /&gt;Built Host : iox-ucs-025&lt;BR /&gt;Workspace : /auto/srcarchive17/prod/6.5.1/ncs5500/ws&lt;BR /&gt;Version : 6.5.1&lt;BR /&gt;Location : /opt/cisco/XR/packages/&lt;BR /&gt;&lt;BR /&gt;cisco NCS-5500 () processor&lt;BR /&gt;System uptime is 5 weeks 6 days 20 hours 4 minutes&lt;/PRE&gt;&lt;P&gt;This is the code i'm trying to get it to work, basically the idea is to push bgp peer/config into a lab device.&lt;/P&gt;&lt;PRE&gt;&lt;SPAN&gt;#!/usr/bin/env python&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# Copyright 2019 Cisco Systems, Inc.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# Licensed under the Apache License, Version 2.0 (the "License");&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# you may not use this file except in compliance with the License.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# You may obtain a copy of the License at&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#     http://www.apache.org/licenses/LICENSE-2.0&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# Unless required by applicable law or agreed to in writing, software&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# distributed under the License is distributed on an "AS IS" BASIS,&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# See the License for the specific language governing permissions and&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;# limitations under the License.&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;import &lt;/SPAN&gt;logging&lt;BR /&gt;&lt;SPAN&gt;import &lt;/SPAN&gt;os&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;argparse &lt;SPAN&gt;import &lt;/SPAN&gt;ArgumentParser&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.gnmi.providers &lt;SPAN&gt;import &lt;/SPAN&gt;gNMIServiceProvider&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.path &lt;SPAN&gt;import &lt;/SPAN&gt;Repository&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.models.openconfig &lt;SPAN&gt;import &lt;/SPAN&gt;openconfig_network_instance &lt;SPAN&gt;as &lt;/SPAN&gt;oc_ni&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.services &lt;SPAN&gt;import &lt;/SPAN&gt;CRUDService&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.models.openconfig &lt;SPAN&gt;import &lt;/SPAN&gt;openconfig_policy_types &lt;SPAN&gt;as &lt;/SPAN&gt;oc_policy_types&lt;BR /&gt;&lt;SPAN&gt;from &lt;/SPAN&gt;ydk.models.openconfig &lt;SPAN&gt;import &lt;/SPAN&gt;openconfig_bgp_types &lt;SPAN&gt;as &lt;/SPAN&gt;oc_bgp_types&lt;BR /&gt;&lt;BR /&gt;bgp = {&lt;BR /&gt;       &lt;SPAN&gt;'vrf'&lt;/SPAN&gt;: &lt;SPAN&gt;'default'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'as'&lt;/SPAN&gt;: &lt;SPAN&gt;'65000'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'router_id'&lt;/SPAN&gt;: &lt;SPAN&gt;'104.160.139.133'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'peer-group-name'&lt;/SPAN&gt;: &lt;SPAN&gt;'gNMI SET TEST'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'peer-as'&lt;/SPAN&gt;: &lt;SPAN&gt;'65000'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'peer-group-local-address'&lt;/SPAN&gt;: &lt;SPAN&gt;'192.168.1.1'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;       &lt;SPAN&gt;'neighbor'&lt;/SPAN&gt;: &lt;SPAN&gt;'198.168.1.2'&lt;BR /&gt;&lt;/SPAN&gt;        }&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;def &lt;/SPAN&gt;&lt;SPAN&gt;config_oc_bgp_ipv4&lt;/SPAN&gt;():&lt;BR /&gt;    ni = oc_ni.NetworkInstances.NetworkInstance()&lt;BR /&gt;    ni.name = bgp[&lt;SPAN&gt;"vrf"&lt;/SPAN&gt;]&lt;BR /&gt;&lt;BR /&gt;    protocol = ni.Protocols.Protocol()&lt;BR /&gt;    protocol.identifier = oc_policy_types.BGP()&lt;BR /&gt;    protocol.name = bgp[&lt;SPAN&gt;"vrf"&lt;/SPAN&gt;]&lt;BR /&gt;    protocol.config.identifier = oc_policy_types.BGP()&lt;BR /&gt;    protocol.config.name = bgp[&lt;SPAN&gt;"vrf"&lt;/SPAN&gt;]&lt;BR /&gt;    protocol.bgp.global_.config.as_ = &lt;SPAN&gt;int&lt;/SPAN&gt;(bgp[&lt;SPAN&gt;'as'&lt;/SPAN&gt;])&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;# Global bgp parameters&lt;BR /&gt;&lt;/SPAN&gt;    afi_safi = protocol.bgp.global_.afi_safis.AfiSafi()&lt;BR /&gt;    afi_safi.afi_safi_name = oc_bgp_types.IPV4UNICAST()&lt;BR /&gt;    afi_safi.config.enabled = &lt;SPAN&gt;True&lt;BR /&gt;&lt;/SPAN&gt;    protocol.bgp.global_.afi_safis.afi_safi.append(afi_safi)&lt;BR /&gt;    &lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;    # peer-group and address family&lt;BR /&gt;&lt;/SPAN&gt;    peer_group = protocol.bgp.peer_groups.PeerGroup()&lt;BR /&gt;    peer_group.peer_group_name = bgp[&lt;SPAN&gt;"peer-group-name"&lt;/SPAN&gt;]&lt;BR /&gt;    peer_group.config.peer_group_name = bgp[&lt;SPAN&gt;"peer-group-name"&lt;/SPAN&gt;]&lt;BR /&gt;    peer_group.config.peer_as = &lt;SPAN&gt;int&lt;/SPAN&gt;(bgp[&lt;SPAN&gt;"peer-as"&lt;/SPAN&gt;])&lt;BR /&gt;    peer_group.transport.config.local_address = bgp[&lt;SPAN&gt;"peer-group-local-address"&lt;/SPAN&gt;]&lt;BR /&gt;    afi_safi = peer_group.afi_safis.AfiSafi()&lt;BR /&gt;    afi_safi.afi_safi_name = oc_bgp_types.IPV4UNICAST()&lt;BR /&gt;    afi_safi.config.enabled = &lt;SPAN&gt;True&lt;BR /&gt;&lt;/SPAN&gt;    peer_group.afi_safis.afi_safi.append(afi_safi)&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;# bgp neighbor with peer-group&lt;BR /&gt;&lt;/SPAN&gt;    neighbor = protocol.bgp.neighbors.Neighbor()&lt;BR /&gt;    neighbor.neighbor_address = bgp[&lt;SPAN&gt;"neighbor"&lt;/SPAN&gt;]&lt;BR /&gt;    neighbor.config.neighbor_address = bgp[&lt;SPAN&gt;"neighbor"&lt;/SPAN&gt;]  &lt;SPAN&gt;# type: &lt;/SPAN&gt;&lt;SPAN&gt;str&lt;BR /&gt;&lt;/SPAN&gt;    neighbor.config.peer_group = bgp[&lt;SPAN&gt;"peer-group-name"&lt;/SPAN&gt;]&lt;BR /&gt;    &lt;SPAN&gt;#&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;    # Putting all together&lt;BR /&gt;&lt;/SPAN&gt;    protocol.bgp.peer_groups.peer_group.append(peer_group)&lt;BR /&gt;    protocol.bgp.neighbors.neighbor.append(neighbor)&lt;BR /&gt;    ni.protocols.protocol.append(protocol)&lt;BR /&gt;    &lt;SPAN&gt;return &lt;/SPAN&gt;ni&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;if &lt;/SPAN&gt;__name__ == &lt;SPAN&gt;"__main__"&lt;/SPAN&gt;:&lt;BR /&gt;    &lt;SPAN&gt;"""Execute main program."""&lt;BR /&gt;&lt;/SPAN&gt;    parser = ArgumentParser()&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;"-v"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"--verbose"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;"print debugging messages"&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;"store_true"&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-i'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--grpc-ip'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'grpc_ip'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify the IOS-XR GRPC server IP address'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-g'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--grpc-port'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'grpc_port'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify the IOS-XR GRPC server port'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-u'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--username'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'username'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify username to connect to gRPC server on XR'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-p'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--password'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'password'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify password to connect to gRPC server on XR'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-y'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--yang-repo-path'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;dest&lt;/SPAN&gt;=&lt;SPAN&gt;'yang_repo_location'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Specify yang repo path'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;required&lt;/SPAN&gt;=&lt;SPAN&gt;True&lt;/SPAN&gt;)&lt;BR /&gt;    parser.add_argument(&lt;SPAN&gt;'-e'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'--extra-verbose'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;action&lt;/SPAN&gt;=&lt;SPAN&gt;'store_true'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                        &lt;SPAN&gt;help&lt;/SPAN&gt;=&lt;SPAN&gt;'Extra Verbose logs'&lt;/SPAN&gt;)&lt;BR /&gt;    args = parser.parse_args()&lt;BR /&gt;&lt;BR /&gt;    &lt;SPAN&gt;# log debug messages if verbose argument specified&lt;BR /&gt;&lt;/SPAN&gt;    &lt;SPAN&gt;if &lt;/SPAN&gt;args.verbose:&lt;BR /&gt;        logger = logging.getLogger(&lt;SPAN&gt;"ydk"&lt;/SPAN&gt;)&lt;BR /&gt;        logger.setLevel(logging.INFO)&lt;BR /&gt;        handler = logging.StreamHandler()&lt;BR /&gt;        formatter = logging.Formatter((&lt;SPAN&gt;"%(asctime)s - %(name)s - "&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;                                       "%(levelname)s - %(message)s"&lt;/SPAN&gt;))&lt;BR /&gt;        handler.setFormatter(formatter)&lt;BR /&gt;        logger.addHandler(handler)&lt;BR /&gt;        &lt;SPAN&gt;if &lt;/SPAN&gt;args.extra_verbose:&lt;BR /&gt;            os.environ[&lt;SPAN&gt;'GRPC_TRACE'&lt;/SPAN&gt;] = &lt;SPAN&gt;'all'&lt;BR /&gt;&lt;/SPAN&gt;            os.environ[&lt;SPAN&gt;'GRPC_VERBOSITY'&lt;/SPAN&gt;] = &lt;SPAN&gt;'DEBUG'&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;    repository = Repository(args.yang_repo_location)&lt;BR /&gt;    provider = gNMIServiceProvider(&lt;SPAN&gt;repo&lt;/SPAN&gt;=repository&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;address&lt;/SPAN&gt;=args.grpc_ip&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;port&lt;/SPAN&gt;=&lt;SPAN&gt;int&lt;/SPAN&gt;(args.grpc_port)&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;username&lt;/SPAN&gt;=args.username&lt;SPAN&gt;,&lt;BR /&gt;&lt;/SPAN&gt;                                   &lt;SPAN&gt;password&lt;/SPAN&gt;=args.password)&lt;BR /&gt;&lt;BR /&gt;    crud = CRUDService()&lt;BR /&gt;    bgp_ni = config_oc_bgp_ipv4()&lt;BR /&gt;    crud.create(provider&lt;SPAN&gt;, &lt;/SPAN&gt;bgp_ni)&lt;/PRE&gt;&lt;P&gt;thanks in advance for any pointers&lt;/P&gt;</description>
      <pubDate>Wed, 06 Mar 2019 21:31:44 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3815236#M2229</guid>
      <dc:creator>jaime botello</dc:creator>
      <dc:date>2019-03-06T21:31:44Z</dc:date>
    </item>
    <item>
      <title>Re: ERROR - Data is invalid according to the yang model when configuration openconfig bgp and ios-xr</title>
      <link>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3817122#M2230</link>
      <description>&lt;P&gt;Found my answer&amp;nbsp;here and with some help from some very smart Cisco folks &lt;span class="lia-unicode-emoji" title=":winking_face:"&gt;😉&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.cisco.com/t5/yang-development-kit-ydk/ydk-errors-ymodelerror-invalid-value-quot-192-168-1-1-quot-in/m-p/3774272" target="_blank" rel="noopener"&gt;https://community.cisco.com/t5/yang-development-kit-ydk/ydk-errors-ymodelerror-invalid-value-quot-192-168-1-1-quot-in/m-p/3774272&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 11 Mar 2019 03:28:36 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3817122#M2230</guid>
      <dc:creator>jaime botello</dc:creator>
      <dc:date>2019-03-11T03:28:36Z</dc:date>
    </item>
    <item>
      <title>Re: ERROR - Data is invalid according to the yang model when configuration openconfig bgp and ios-xr</title>
      <link>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3827495#M2231</link>
      <description>Let me clarify that you don't need to generate your own OC bundle.  You can just patch the YANG files under `~/.ydk/&amp;lt;router&amp;gt;/`</description>
      <pubDate>Wed, 27 Mar 2019 21:04:55 GMT</pubDate>
      <guid>https://community.cisco.com/t5/tools/error-data-is-invalid-according-to-the-yang-model-when/m-p/3827495#M2231</guid>
      <dc:creator>saalvare</dc:creator>
      <dc:date>2019-03-27T21:04:55Z</dc:date>
    </item>
  </channel>
</rss>

