Cisco-IOS-XR-ipv4-ospf-cfg

                                    
                                        module Cisco-IOS-XR-ipv4-ospf-cfg {
                                          namespace "http://cisco.com/ns/yang/Cisco-IOS-XR-ipv4-ospf-cfg";
                                          prefix ipv4-ospf-cfg;

                                          import ietf-inet-types {
                                            prefix inet;
                                          }
                                          import Cisco-IOS-XR-types {
                                            prefix xr;
                                          }
                                          import Cisco-IOS-XR-snmp-agent-cfg {
                                            prefix a1;
                                          }

                                          ...

                                          description
                                            "This module contains a collection of YANG definitions
                                             for Cisco IOS-XR ipv4-ospf package configuration.

                                             This module contains definitions
                                             for the following management objects:
                                               ospf: OSPF configuration data

                                          ...

                                          grouping AREA-TABLE {
                                            description
                                              "Common node of default-vrf, vrf";
                                            container area-addresses {
                                              description
                                                "Area configuration";

                                              grouping AREA-CONTENT {
                                                description
                                                  "AREA CONTENT";
                                                ...
                                                container area-scope {
                                                  description
                                                    "Area scope configuration";
                                                  ...
                                                }
                                                container name-scopes {
                                                  description
                                                    "Name scope configurations";
                                                  list name-scope {
                                                    key "interface-name";
                                                    description
                                                      "Name scope configuration";
                                                    ...
                                                    leaf interface-name {
                                                      type xr:Interface-name;
                                                      description
                                                        "Name of Interface to configure";
                                                    }
                                                    ...
                                                  }
                                                }

                                                ...

                                              list area-address {
                                                key "address";
                                                description
                                                  "Configuration for a particular area";
                                                leaf address {
                                                  type inet:ipv4-address-no-zone;
                                                  description
                                                    "Area ID if in IP address format";
                                                }
                                                uses AREA-CONTENT;
                                              }
                                              list area-area-id {
                                                key "area-id";
                                                description
                                                  "Configuration for a particular area";
                                                leaf area-id {
                                                  type uint32 {
                                                    range "0..4294967295";
                                                  }
                                                  description
                                                    "Area ID if in integer format";
                                                }
                                                uses AREA-CONTENT;
                                              }
                                            }
                                          }

                                          ...

                                          grouping AF {
                                            description
                                              "Common node of default-vrf, vrf";
                                            container af {
                                              presence "Indicates a af node is configured.";
                                              description
                                                "OSPF address family";
                                              leaf af-name {
                                                type Ospf-address-family;
                                                mandatory true;
                                                description
                                                  "Address family";
                                              }
                                              leaf saf-name {
                                                type Ospf-sub-address-family;
                                                description
                                                  "Sub-Address family";
                                              }
                                            }
                                          }

                                          ...

                                          grouping ROUTER-ID {
                                            description
                                              "Common node of default-vrf, vrf";
                                            leaf router-id {
                                              type inet:ipv4-address-no-zone;
                                              description
                                                "Router ID for this OSPF process. Enter an IP
                                                 Address.";
                                            }
                                          }

                                          ...

                                          container ospf {
                                            description
                                              "OSPF configuration data";
                                            container processes {
                                              description
                                                "Process related configuration";
                                              list process {
                                                key "process-name";
                                                description
                                                  "Configuration for a particular OSPF process and
                                                   associated default VRF";
                                                ...
                                                container default-vrf {
                                                  description
                                                    "Default VRF related configuration";
                                                  ...
                                                  uses AF;
                                                  uses ROUTER-ID;
                                                  uses PROCESS-SCOPE;
                                                  uses AREA-TABLE;
                                                  ...
                                                }
                                                ...
                                                leaf process-name {
                                                  type xr:Cisco-ios-xr-string {
                                                    length "1..32";
                                                  }
                                                  description
                                                    "Name for this OSPF process";
                                                }
                                               ...
                                              }
                                            }
                                            ...
                                            }
                                          }
                                        }